Foros del Web » Programación para mayores de 30 ;) » Java »

Transformar HTML a imagen

Estas en el tema de Transformar HTML a imagen en el foro de Java en Foros del Web. Buenas, necesito cojer una pagina web y transformarla a una imagen que se guarde en disco. Navegando por internet y retocando un poco he conseguido ...
  #1 (permalink)  
Antiguo 13/03/2009, 02:57
 
Fecha de Ingreso: enero-2007
Mensajes: 78
Antigüedad: 17 años, 3 meses
Puntos: 0
Transformar HTML a imagen

Buenas, necesito cojer una pagina web y transformarla a una imagen que se guarde en disco.

Navegando por internet y retocando un poco he conseguido llegar a que se cree la imagen y que se vea en una nueva ventana, pero no consigo que se me guarde en un directorio.

Código PHP:
public class Main {
 
   
JEditorPane editor = new JEditorPane();
 
   public static 
void main(String[] args) {
      
SwingUtilities.invokeLater(new Runnable() {
 
         @
Override
         
public void run() {
            new 
Main().loadPage();
         }
      });
   }
 
   private 
void loadPage() {
      try {
         
editor.setPage(
               
"file:/home/netclipping-server/Escritorio/ficheroIntermedio.html");
         final 
JFrame frame = new JFrame();
         
frame.pack();
         
Timer timer = new Timer(500, new AbstractAction() {
 
            @
Override
            
public void actionPerformed(ActionEvent e) {
               
BufferedImage image null;
               
frame.add(editor);
               
frame.pack();
               
System.out.println(editor.getSize());
               
Dimension dim editor.getSize();
               
image = new BufferedImage(dim.widthdim.height,
                     
BufferedImage.TYPE_INT_RGB);
               
Graphics g image.createGraphics();
               
               
SwingUtilities.paintComponent(geditorframe,
                     
00dim.widthdim.height);
                 
makeUI(image);
                 

                 
frame.dispose();
            }
         });
         
timer.setRepeats(false);
         
timer.start();
      } catch (
IOException ex) {
         
ex.printStackTrace();
      }
   }
 
   public 
void makeUI(Image image) {
      
JFrame frame = new JFrame();
      
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      
frame.setSize(700500);
      
frame.setLocationRelativeTo(null);
      
      if (
image != null && image.getWidth(frame) != &&
            
image.getHeight(frame) != 0) {
         
frame.add(new JScrollPane(new JLabel(new ImageIcon(image))),
               
BorderLayout.CENTER);
      }
      
frame.add(new JLabel("label"), BorderLayout.SOUTH);
      
frame.setVisible(true);
   }


A ver si alguien tiene un idea.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:58.