• 追加された行はこの色です。
  • 削除された行はこの色です。
#navi(../)
*ColorConvertOpで画像をグレイスケールに変換 [#t5e7fcf3]
>編集者:[[Terai Atsuhiro>terai]]~
作成日:2005-11-21~
更新日:&lastmod;

#contents

**概要 [#p5efc4cd]
ColorConvertOpを使って画像をグレイスケールに変換します。

http://terai.xrea.jp/swing/colorconvertop/screenshot.png
#screenshot

**サンプルコード [#a2a42159]
 Image img = icon1.getImage();
 BufferedImage source = new BufferedImage(
     img.getWidth(this), img.getHeight(this),
     BufferedImage.TYPE_4BYTE_ABGR);
 Graphics g = source.createGraphics();
 g.drawImage(img, 0, 0, this);
 g.dispose();
 ColorConvertOp colorConvert = new ColorConvertOp(
     ColorSpace.getInstance(ColorSpace.CS_GRAY), null);
 BufferedImage destination = colorConvert.filter(source, null);
 icon2 = new ImageIcon(destination);

-[[サンプルを起動>http://terai.xrea.jp/swing/colorconvertop/sample.jnlp]]
-[[jarファイル>http://terai.xrea.jp/swing/colorconvertop/sample.jar]]
-[[ソース>http://terai.xrea.jp/swing/colorconvertop/src.zip]]
-&jnlp;
-&jar;
-&zip;

**解説 [#s9c1238a]
用意したアイコンから、BufferedImageを作成し、これをColorConvertOp#filterメソッドを使ってグレイスケールに変換しています。

上記のサンプルでは、ラベルをクリックすると元画像とグレイスケール画像とが切り替わるようになっています。

**参考リンク [#wb3b736d]
-[[Image Color Gray Effect : Java examples (example source code) » 2D Graphics GUI » Image>http://www.java2s.com/Code/Java/2D-Graphics-GUI/ImageColorGrayEffect.htm]]
-[[o p u s - i アイコンフリー素材>http://opus-i.biz/]]

**コメント [#i2aa6deb]
#comment