JAVAでJPEGファイルを読み込み(JPEG以外の画像ファイルでも、OKなものもあるんだけど、とりあえずJpegとしよう)、それに、図とか文字を書いて保存、出力する方法について
参考サイト
ImageIOクラスで画像ファイルを読み書きする
http://www.javadrive.jp/java2d/bufferedImage/index2.html
6. グラフを画像ファイルに出力する方法
http://www.techscore.com/tech/Others/Jung/06.html
ソースは、こんなかんじ
import javax.imageio.*; import java.awt.*; import java.awt.image.*; import java.io.*; public class Test { public static void main(String[] args) { BufferedImage image = null; // ファイル読み込み try { image = ImageIO.read(new File("test.jpg")); } catch (Exception e) { e.printStackTrace(); } Graphics graphics = image.createGraphics(); // いたずら書き graphics.setColor(Color.RED); graphics.drawString("いたずら書きだよー",0,10); // ファイル保存 try { ImageIO.write(image, "jpeg", new File("test.jpg")); } catch (Exception e) { e.printStackTrace(); } System.out.println("終わりました"); } } |
これで、test.jpgというJPEGファイルを読み込み、「いたずら書きだよー」と赤字で書いて、保存します。
他の図とかを書きたい場合は、Graphicsのいろいろなメソッド(fillRectとか)を呼び出して作ってね!
なお、イメージファイルを読み込むのではなく、図やグラフを書いてJPEGに保存したい場合は、
はじめの、
image = ImageIO.read(new File("test.jpg"));
を
image = new BufferedImage(500,500,BufferedImage.TYPE_INT_BGR);
とかにすると、できます。
ただし、この場合、try,catchはいりません。