Grafik mit AWT erstellen

Dies ist eine unformatierte, archivierte Version dieser Seite und wird nicht mehr gepflegt!
GraphicsConfiguration gfxConf = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getDefaultConfiguration();
int width = 600;
int height = 35;

BufferedImage image = gfxConf.createCompatibleImage(width, height);

Graphics2D g = (Graphics2D) image.getGraphics();

// Anti-aliased font
g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
g.setRenderingHint(RenderingHints.KEY_FRACTIONALMETRICS, RenderingHints.VALUE_FRACTIONALMETRICS_ON);

g.setFont(new Font("Bitstream Vera Sans", Font.BOLD, 20));
g.drawString("My Text", 15, 30);

 

 

 

 

Um das noch in einen Outputstream (in diesem Fall von einem Servlet) zu schreiben:

 

httpServletResponse.setContentType("image/png");

ImageWriter writer = ImageIO.getImageWritersByFormatName("png").next();
ImageOutputStream ios = ImageIO.createImageOutputStream(httpServletResponse.getOutputStream());
writer.setOutput(ios);

ImageWriteParam iwparam = new JPEGImageWriteParam(Locale.getDefault());

writer.write(null, new IIOImage(image, null, null), iwparam);