Rでパッケージ{magick}を使って投稿記事のアイキャッチ画像(featured image)を作る話。
tidyverseに出会ってRにはまっている。
パイプで処理をつなげていけるって分かりやすい。
magickも同様にパイプで処理ができる。
まずmagickパッケージを読み込む。
library(magick)
## Linking to ImageMagick 6.9.11.60
## Enabled features: fontconfig, freetype, fftw, heic, lcms, pango, webp, x11
## Disabled features: cairo, ghostscript, raw, rsvg
## Using 4 threads
以下のコードでpng画像が作成できる。
# 初期設定
filename <- "Reyecatch.png"
title <- "投稿記事のアイキャッチ画像作成"
fontsize <- 6
# 画像作成
rlogo <- image_read("Rlogo.png") |>
image_resize("x200")
img1 <- image_blank(width = 1200, height = 628, color = 'white')
img1 <- image_draw(img1)
rect(0, 0, 1200, 314, col = "white", border = NA)
rect(0, 314, 1200, 628, col = "#2369bd", border = NA)
text(740, 157, "ラクにしたいでR", family = "Noto Sans Mono CJK JP", col = 'black', cex = 8)
text(600, 157+314, title, family = "Noto Sans Mono CJK JP", col = 'white', cex = fontsize)
img1 <- img1 |>
image_border(color = "#2369bd", geometry = "10x10") |>
image_composite(rlogo, offset = "+65+65")
image_write(img1, filename)
# 確認用
img1 |>
image_resize("400x") |>
print()
## format width height colorspace matte filesize density
## 1 png 400 212 sRGB TRUE 0 72x72
文字数によってフォントサイズを調整する必要があるのがちょっと手間だけど、微調整はきっと必要なのでいったんはこれでヨシ!
コメント