windowsにイマジmagick をインストールします。
m 4 javaダウンロードアドレス:http://sourceforge.net/projects/im4java/files/im4java-1.4.0/im4java-1.4.0-bin.tar.bz2/download 上の2歩を操作したら、下の方が操作しやすいです。im 4 javaはimagmagickのcommmadlineに基づいて呼び出されるjavaインターフェースですので、jmagickのようにjava jniでローカルimagmagickのアプリを呼び出すのは複雑です。imagmagickをインストールするのはどのプラットフォームでも同じです。linuxの下にrpmパッケージがあります。そのパッケージをインストールして、カタログを指定すればいいです。windowsと同じように、インストール経路を指定すればいいです。下にコードを入れます
public static String FROM = "E:/project/Test/src/com/8301.jpg";
public static String TO = "E:/project/Test/src/com/8301_new.jpg";
public static String IMAGEMAGICK = "D:/Program Files (x86)/ImageMagick-6.8.7-Q16";
/**
* @param args
*/
public static void main(String[] args) {
handlerImage(1000, 1000);
}
public static void handlerImage(int width, int height) {
IMOperation op = new IMOperation();
op.addImage(FROM);
op.resize(width, height);//
op.addImage(TO);
ConvertCmd convert = new ConvertCmd();
convert.setSearchPath(IMAGEMAGICK);
try {
convert.run(op);
} catch (IOException | InterruptedException | IM4JavaException e) {
e.printStackTrace();
}
}
<!-- lang: java -->
/**
*
*
*
* @param srcPath
* @param newPath
* @param x
* @param y
* @param x1
* @param y1
*/
public static void cutImage(String srcPath, String newPath, int x, int y, int x1, int y1) throws Exception {
int width = x1 - x;
int height = y1 - y;
IMOperation op = new IMOperation();
op.addImage(srcPath);
/**
* width:
* height:
* x:
* y:
*/
op.crop(width, height, x, y);
op.addImage(newPath);
ConvertCmd convert = new ConvertCmd();
// linux ,
convert.setSearchPath(imageMagickPath);
convert.run(op);
}
<!-- lang: java -->
/**
*
* @param srcPath
*/
public static void addImgText(String srcPath) throws Exception {
IMOperation op = new IMOperation();
op.font(" ").gravity("southeast").pointsize(18).fill("#BCBFC8")
.draw("text 5,5 juziku.com");
op.addImage();
op.addImage();
ConvertCmd convert = new ConvertCmd();
// linux ,
convert.setSearchPath(imageMagickPath);
convert.run(op, srcPath, srcPath);
}
参考文献:im 4 java画像処理コード参照