import java.awt.*;
import magick.*;
public class JMagickTest45
{
   public static void main(String args[])
       throws MagickException
   {
       /* 画像の端をかすれたように処理する */
       MagickImage mi = new MagickImage(new ImageInfo("sf2.jpg"));
       int w = (int)mi.getDimension().getWidth();
       int h = (int)mi.getDimension().getHeight();
       // マスク作成
       ImageInfo ii = new ImageInfo("xc:none");
       ii.setSize(w + "x" + h);
       MagickImage mi2 = new MagickImage(ii);
       DrawInfo di = new DrawInfo(ii);
       di.setFill(new PixelPacket(0xff*256, 0xff*256, 0xff*256, 0));
       di.setPrimitive("rectangle 10, 10, 289, 214");
       mi2.drawImage(di);
       mi2 = mi2.spreadImage(3);
       // 切り取り
       mi2.compositeImage(CompositeOperator.SrcInCompositeOp,mi,0,0);
       // 白背景作成
       ImageInfo ii2 = new ImageInfo("xc:white");
       ii2.setSize(w + "x" + h);
       MagickImage mi3 = new MagickImage(ii2);
       mi3.compositeImage(CompositeOperator.OverCompositeOp,mi2,0,0);
       mi3.setFileName("sample726a.jpg");
       mi3.writeImage(new ImageInfo());
   }
}
元画像(sf2.jpg)

出力画像(sample726a.jpg)

関連情報
JMagickまとめ
ImageMagickで、画像の端をかすれたように処理する
ImageMagickでクレヨン風の文字列を描画する
 
1 comment:
ソースを参考に手際よく実装する事ができました。
Post a Comment