画像の合成

  • 更新日:
  • Java

昨日の夜は、Javaで画像を合成するプログラムを書いてました。合成するといっても、ある画像に別の画像を上書きするという、けっこう単純なプログラムなんですが。

でも、JavaのGraphic2Dを使った経験がほとんどないので、けっこう詰まりました。画像は、通常Imageクラスを継承したクラスで表されているのが普通なんですが、そこからが未知の領域。Imageを描画するには、ImageConsumerインターフェースがImageProducerクラスに対して要求を出すところから始まるのですが、その応答をいかしにて返すか。そこが今回のプログラムの山場だったと思います。

基本的に2枚の画像を組み合わせる時を考えると、上書きする方の画像の背景部分は透過するようにしたほうが直感的ですよね。というわけで、上書きする方の背景が白い時は上書きされる方の色情報を返すようにして、そのほかの時は上書きする方を返すようにしました。

経験さえあれば、1時間もあればできるプログラムを5時間くらいかかって作成してました。プログラムは経験がものを言いますね、やっぱり。

Track Back

Track Back URL

Comments [2]

> Javaをつかって、サーバー側にあるAとBの2つの画像ファイル(png)について、Aを透過させて、A上の文字だけをBの画像の上に合成する方法をおわかりの方がおられましたらご教示いただけないでしょうか。
> 大変恐れいりますが何卒宜しくお願いいたします。
あといろいろ調べてましたらJAIという画像処理のAPIに
いきついたのですが、これを利用するのでしょうか?
恐れ入りますがご教示いただけましたら幸いでございます。
何卒宜しくお願いいたします。>
> 環境は、j2sdk1.4.2、Windows2003Serverです。

だいぶ昔のことで忘れましたが、次のURLを参照した記憶があります。
http://www005.upp.so-net.ne.jp/aoken/imgflt.html
http://www.mars.dti.ne.jp/~torao/program/graphics/filter.html

申し訳ないのですが、JAIというものが何かは私には分かりません。
もしかすると関係があるのかもしれませんが、今のところなんとも
いえません。

あと、調べてみて使えそうかなと思ったソースとしては「Plime」があります。
Vectorでも公開されていますのですぐに見つかるかと思います。
プログラムとソースが同梱されていますので、頑張って読み進めば
処理部分も分かるのではないでしょうか。

核心をつくような返答ではないですが、なにかのお役に立てれば幸いです。

コメントする

公開されません

refresh captcha

画像の中に見える文字を入力してください。

このページの上部へ

About

tetsuの日記・雑記です。
日々経験したことを記録していきます。

広告

サイト内検索

最近のピクチャ

  • リアディレーラ

月別アーカイブ

最近のコメント