Для чисто java-решения, которое может масштабироваться для поддержки одновременного рендеринга, вы можете использовать java-браузер HTML4 / CSS2, такой как Cobra , который предоставляет компонент Swing для GUI. Когда вы создаете экземпляр этого компонента, вы можете вызвать его метод paint (Graphics g), чтобы нарисовать себя за пределами экрана
E.g.
Component c = ...; // the browser component
BufferedImage bi = new BufferedImage(c.getWidth(), c.getHeight(), TYPE_INT_RGB)
Graphics2d g = bi.createGraphics();
c.paint(g);
Затем вы можете использовать API изображений Java, чтобы сохранить его в формате JPG.
JPEGImageEncoder encoder = JPEGCodec.createEncoder(new FileOutputStream("screen.jpg"));
enncoder.encode(bi); // encode the buffered image
Браузеры на основе Java обычно бледнеют по сравнению с установленными нативными браузерами. Однако, поскольку ваша цель - статические изображения, а не интерактивный браузер, браузер на основе Java может быть более чем достаточным в этом отношении.