Wednesday, May 21, 2008

JMagickで画像を半透明にして重ね合わせる

JMagickで画像を半透明にして重ね合わせるには、以下のコードを実行します。

import magick.*;

public class JMagickTest26
{
public static void main(String args[])
throws MagickException
{
/* 画像を半透明にする */
MagickImage mi = new MagickImage(new ImageInfo("sample6.jpg"));
/* 半透明のイメージを作成 */
ImageInfo ii = new ImageInfo("xc:#00000080");
ii.setSize(mi.getDimension().getWidth() + "x" + mi.getDimension().getHeight());
MagickImage mi2 = new MagickImage(ii);
/* Opacityをcopy */
mi.compositeImage(CompositeOperator.CopyOpacityCompositeOp,mi2, 0, 0);

/* 半透明になった画像を重ね合わせ */
MagickImage mi3 = new MagickImage(new ImageInfo("sf.jpg"));
mi3.compositeImage(CompositeOperator.SrcOverCompositeOp,mi,50,50);
mi3.setFileName("sample446a.jpg");
mi3.writeImage(new ImageInfo());
}
}

元画像(sample6.jpg)


元画像(sf.jpg)


出力画像(sample446a.jpg)


環境
JDK6 Upadate6(JDK1.6.0_06)/jmagick-win-6.3.9-Q16


関連情報
JMagickまとめ
ImageMagickをJavaから使用するための設定(JMagickインストール)
JMagickで、画像を重ね合わせる

No comments: