ImageMagick
をベースにした画像処理用のパッケージ。ImageMagick
自体は多機能で多くの環境で使えるオープンソースなのだが、サーバで使う場合にはセキュリティの問題が無視できない模様。
以下公式vignettesを元にメモ。
まずはhomebrew
を用いてmacにImageMagick@6
をインストールする。
brew install imagemagick@6 --with-fontconfig --with-librsvg
brew link --force imagemagick@6
最新版と併用する必要があればリンクかパスのどちらかで対応が必要になるとおもわれる。magick
パッケージはCRANにもあるのでinstall.packages("magick", dependencies = TRUE)
で。
str(magick::magick_config())
## List of 21
## $ version :Class 'numeric_version' hidden list of 1
## ..$ : int [1:4] 6 9 9 39
## $ modules : logi FALSE
## $ cairo : logi TRUE
## $ fontconfig : logi TRUE
## $ freetype : logi TRUE
## $ fftw : logi FALSE
## $ ghostscript : logi FALSE
## $ jpeg : logi TRUE
## $ lcms : logi TRUE
## $ libopenjp2 : logi TRUE
## $ lzma : logi TRUE
## $ pangocairo : logi TRUE
## $ pango : logi TRUE
## $ png : logi TRUE
## $ rsvg : logi TRUE
## $ tiff : logi TRUE
## $ webp : logi TRUE
## $ wmf : logi FALSE
## $ x11 : logi FALSE
## $ xml : logi TRUE
## $ zero-configuration: logi TRUE
imagemagick@6
インストール時のメッセージmagick
パッケージの対応するImageMagic
のバージョンが上がった時に必要になる気がするのでメモ。
imagemagick@6 is keg-only, which means it was not symlinked into /usr/local,
because this is an alternate version of another formula.
If you need to have imagemagick@6 first in your PATH run:
echo 'export PATH="/usr/local/opt/imagemagick@6/bin:$PATH"' >> ~/.bash_profile
For compilers to find imagemagick@6 you may need to set:
export LDFLAGS="-L/usr/local/opt/imagemagick@6/lib"
export CPPFLAGS="-I/usr/local/opt/imagemagick@6/include"
For pkg-config to find imagemagick@6 you may need to set:
export PKG_CONFIG_PATH="/usr/local/opt/imagemagick@6/lib/pkgconfig"
$ brew link --force imagemagick@6
Linking /usr/local/Cellar/imagemagick@6/6.9.10-14... 76 symlinks created
If you need to have this software first in your PATH instead consider running:
echo 'export PATH="/usr/local/opt/imagemagick@6/bin:$PATH"' >> ~/.bash_profile
img_list <- c("img/RStudio-Project-NewMenu.png",
"img/RStudio-Project-New-VC.png",
"img/RStudio-Project-New-Git.png",
"img/RStudio-Project-New-Clone.png")
img_list %>%
magick::image_read(.) %>% # 読み込んで
magick::image_scale("x512") %>% # 縦を揃えて
magick::image_append(.) %>% # 左→右にくっつける(stack = TRUEで上から下へ)
magick::image_write("img/RStudio-newVCProject.png", format = "png") # pathにformat形式で保存