Editing and re-using image with BufferedImage
suggest changeBufferedImage cat = ImageIO.read(new File("cat.jpg")); //read existing file //modify it Graphics g = cat.createGraphics(); g.setColor(Color.RED); g.drawString("Cat", 10, 10); g.dispose(); //now create a new image BufferedImage cats = new BufferedImage(256, 256, BufferedImage.TYPE_4BYTE_ABGR); //and draw the old one on it, 16 times g = cats.createGraphics(); for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) { g.drawImage(cat, i * 64, j * 64, null); } } g.setColor(Color.BLUE); g.drawRect(0, 0, 255, 255); //add some nice border g.dispose(); //and done ImageIO.write(cats, "png", new File("cats.png"));
Original cat file:

Produced file:

Found a mistake? Have a question or improvement idea?
Let me know.
Table Of Contents