im4java経由でImageMagickを呼び出す。環境はwindows 10。
環境
- windows 10
- ImageMagick-7.0.10-21
ソースコード
implementation 'org.im4java:im4java:1.4.0'
import java.io.IOException;
import org.im4java.core.IM4JavaException;
import org.im4java.core.IMOperation;
import org.im4java.core.ImageMagickCmd;
public class ImageMagickMain {
public static void main(String[] args) throws IOException, InterruptedException, IM4JavaException {
ImageMagickCmd magick = new ImageMagickCmd("magick");
IMOperation operation = new IMOperation();
operation.addImage("src.png");
operation.resize(300, 300);
operation.addImage("dest.png");
System.out.println(operation.getCmdArgs());
magick.run(operation);
}
}
7以前との注意点
詳細はぐぐると出てくるが、7からモジュール名がconvert
からmagick
に変更されている。具体的にwindowsでいうとconvert.exe
からmagick.exe
になっている。そのため7では、new ImageMagickCmd
の引数のImageMagickのモジュール名はmagick
の必要がある。既存資料を参考にする場合はその点に注意が必要。
ただし、引き続きconvert
も使用可能。その場合はインストール時に下記のようにInstall legacy utilitiesにチェックが必要。これにチェックするとconvert.exe
もインストールされる。
