Javaでイメージ描画
昨今のWeb系アプリケーションでは、動的にHTMLを出力するようなものがほとんどですが、
たまに、「画像を出力してくれ」ということもあります。
Perlやphpなら、「GD」というライブラリがあり、それを使ってたとえば
アクセスカウンタの画像を動的に生成したりしていましたね。
Javaではこの「GD」にあたるのが「java.awt.Graphics」「java.awt.Image」とそのあたりのパッケージです。
まずは、描画するキャンバスとしてのクラスを生成します。
int imageHeight = 500; int imageWidth = 500; BufferedImage image = new BufferedImage(imageWidth, imageHeight, BufferedImage.TYPE_ARGB);
これで、500px × 500pxのキャンバスが出来ました。
最後の引数はRGBAカラーモデルを指定しており、
まあとりあえずこれにしておけば大抵okでしょう。
これを元に、Graphics2Dというクラスを作成します。
Graphics2D gdImage = image.createGraphics();
今後描画していくのは、このGraphics2Dのインスタンスに対して行っていきます。
まずは背景色を白で塗りつぶしてみます。
gdImage.setBackGround(new Color(255, 255, 255)); gdImage.clearRect(0, 0, image.getWidth, image.getHeight);
最初に、背景色とする色を決めます。
そして、clearRectメソッドを呼ぶと指定した範囲を背景色で塗りつぶしてくれます。
今回は、座標x、yが0で、イメージ全体を指定するので
image.getWidth, image.getHeight
と全体を指定しています。
続きます(たぶん)
[...] Javaでイメージ描画 [...]