Hi,
I am trying to convert an HTML to an image but the image that gets generated doesnt contain the images in that webpage.
my code is :-
Please can someone tell me what I need to do to make sure that the images on the webpage also show up in the final png being created?
Thanks,
Himzi
I am trying to convert an HTML to an image but the image that gets generated doesnt contain the images in that webpage.
my code is :-
Code:
Import javax.imageio.ImageIO; import javax.swing.*; import java.awt.*; import java.awt.image.BufferedImage; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.io.File; import java.io.IOException; import java.net.URL; public class MyConverter { private static volatile boolean loaded; public static void main(String[] args) throws IOException { loaded = false; URL url = new URL("http://www.google.com"); JEditorPane editorPane = new JEditorPane(); editorPane.addPropertyChangeListener(new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent evt) { if (evt.getPropertyName().equals("page")) { loaded = true; } }); editorPane.setPage(url); while (!loaded) { Thread.yield(); } File file = new File("test.png"); componentToImage(editorPane, file); } public static void componentToImage(Component comp, File file) throws IOException { Dimension prefSize = comp.getPreferredSize(); BufferedImage img = new BufferedImage(prefSize.width, comp.getPreferredSize().height, BufferedImage.TYPE_INT_ARGB); Graphics graphics = img.getGraphics(); comp.setSize(prefSize); comp.paint(graphics); ImageIO.write(img, "png", file); } }
Please can someone tell me what I need to do to make sure that the images on the webpage also show up in the final png being created?
Thanks,
Himzi