きっと誰の参考にもならないだろう第二段。
前回は音を出してみましたが、今回はお絵描きですw
画像ファイルを作成するサンプル
出力をサポートしている形式を出力後、文字列と線の入った画像ファイルを作成します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | import java.awt.Color; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.io.File; import javax.imageio.ImageIO; public class ImageTest { public static void main(String[] args) { try { String[] formatArray = ImageIO.getWriterFormatNames(); System.out.println("対応している形式(FormatName)"); for(String format : formatArray) { System.out.println(format); } String[] mimeArray = ImageIO.getWriterMIMETypes(); System.out.println("対応している形式(MIMEType)"); for(String mime : mimeArray) { System.out.println(mime); } BufferedImage img = new BufferedImage(120, 40, BufferedImage.TYPE_3BYTE_BGR); Graphics g = img.getGraphics(); g.setColor(Color.WHITE); g.fillRect(0, 0, 120, 40); //背景をまっしろに g.setColor(Color.BLACK); g.drawLine(10, 10, 39, 39); //線を書く g.drawString("あいうえお", 15, 15); //文字を書く g.dispose(); ImageIO.write(img, "png", new File("c:\\test\\sample.png")); }catch(Exception e) { e.printStackTrace(); } } } |
実行結果
C:\test\sample.pngが作成されます。
できあがりの画像はこんな感じ(↓)
また、サポートしている画像形式を標準出力します。
こちらは、環境によると思うので、参考程度に。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | 対応している形式(FormatName) JPG jpg tiff bmp BMP gif GIF WBMP png PNG JPEG tif TIF TIFF wbmp jpeg 対応している形式(MIMEType) image/vnd.wap.wbmp image/png image/x-png image/jpeg image/tiff image/bmp image/gif |
サンプルの解説
今回は、PNG形式を指定して画像ファイルを作成してみました。
サンプルを実行した環境では、JPEGやBMP等がサポートされているので、
ImageIO#writeの第二引数に、JPEGを指定するとJPEG形式で画像ファイルを作成することができます。
また、ImageIOには、ファイルを読み込む機能もありますので、読み込んだ画像を加工するようなこともできます。
Javaで音を出すには・・・?
Javaで音を出す方法は、こちらを見てください。