RE: jEditorPane y text/html problema con width y height

"jimmy_nimo" <jimmy_nimo-/[email protected]>
Newsgroups gmane.comp.java.javaspain
Message-ID <[email protected]>
Podria (ya lo intente en desktop) pero va para un server y el
performance se va al piso intentando eso

alguna solucion? por favor

--- En [email protected], "Fabian Nuñez" <fabnun@...> escribió:
>
> Una solucion media loca, podria ser usar java.awt.Robot
> para que despues de ejecutar la pagina en un navegador a eleccion
(mediante
> Runtime.exec())
> Obtengas un screen de la pantalla.
> 
> Saludos.
> 
> El día 22/08/08, jimmy_nimo <jimmy_nimo@...> escribió:
> >
> >   no, quiero tomar una imagen del html que estoy renderizando y
que sea
> > del tamaño correcto,
> >
> > leer html
> > renderizarlo a imagen
> > guardar imagen
> >
> > y si, tambien lo he intentando con flyingsawcer aqui esta el codigo
> > con flyingsawcer:
> >
> > public static String Nueva(String archivo, String ruta) throws
> > CaidaException
> > {
> > String address = archivo;
> > String fin=null;
> > // render
> > try {
> >
> > BufferedImage buff = null;
> >
> > buff = Graphics2DRenderer.renderToImage(address, 1);
> > fin=ruta+"temp.png";
> > File f = new File(fin);
> >
> > ImageIO.write(buff, "png", f);
> > } catch (Exception e) {
> > Logs.add("Error en creacion de imagen"+e.toString(), 3);
> > throw new CaidaException("Error en creacion de imagen"+e.toString());
> >
> > }
> > return fin;
> > }
> >
> > el problema es que en este caso en especifico (aun no entiendo porque)
> > el interlineado de Flying saucer es incorrecto (coloca un interlineado
> > 2 veces mas grueso que el que deberia ser)
> >
> > estoy haciendo pruebas con los 2, con Flying tengo el interlineado y
> > con jEditorPane el problema que tengo al menos lo tengo ubicado es que
> > la etiqueta <div style="width:348px; "> no la respeta, alguna posible
> > solucion?
> >
> > --- En [email protected] <javaSpain%40yahoogroups.com>,
Sebastian
> > Gurin <sgurin@> escribió:
> > >
> > > a ver, según te entiendo estñás renderizando html en un panel y
> > luego dibujando directamente una imágen en el mismo panel. No entendi
> > muy bien qué es lo que quieres hacer, pero me asombra que, si estas
> > gastando en renderizar html en swing, no metas la imagen dentro del
> > documento html en lugar de dibijarla directamente en el panel.
> > >
> > > para renderizar html, te recomiendo flyingsawcer
> > (xhtmlrenderer.dev.java.net) que respeta el estándar css2 al 100% y
> > por ahí tu error viene porque la renderización html de swing no lo
hace...
> > >
> > > un saludo
> > >
> > > On Fri, 22 Aug 2008 11:14:37 -0000
> > > "jimmy_nimo" <jimmy_nimo@> wrote:
> > >
> > > > Hola y ante todo gracias por leerme y por tener esta
comunidad, espero
> > > > poder ser de ayuda en ella.
> > > >
> > > > se que debe ser comun pero llegue a ustedes porque tengo un
problema,
> > > > si alguien me puede ayudar le estare tremendamente agradecido
> > > >
> > > >
> > > > Estoy trabajando en un proyecto donde interrelacionan muchos
sistemas,
> > > > una de las interrelaciones es a traves de archivos html, donde un
> > > > sistema (en flex) escribe el html y java lo tiene que renderizar y
> > > > poderlo usar como imagen
> > > >
> > > > anexo coloco un ejemplo de un html
> > > > html:
> > > >
> > > > <body bgcolor="#FFFFFF"><div style="width:348px; ">
> > > > <div style="text-align:left; margin-top:0;margin-bottom: 0">
> > > > <font style="letter-spacing: 0px; letter-spacing: 0px; color:
> > > > #000000; font-size: 10px; font-family: Arial; ">Estoy
escribiendo un
> > > > texto bien largo al pie de una foto, para ver como se comporta
con los
> > > > interlineados respecto al tamaño origen del mismo, a ver si
se quedan
> > > > muy espaciados o no o para poder estudiar mejor como se va a
comporar
> > > > a posteriori. es importante ver como esta quedando el espacio
entre
> > > > las lineas de texto para despues saber porque ha pasado todo esto.
> > > > vaya rollo que estoy metiendo. añado para que me cuadre la
> > foto</font>
> > > > </div>
> > > > </div></body>
> > > >
> > > >
> > > > Yo estoy usando un jEditorPane para renderizar la imagen del
html y el
> > > > hace todo bien (tipos de letras y size, align, etc) pero no los
> > > > tamaños, primero coloco el codigo para ver si es esto.
> > > >
> > > > public static BufferedImage create(String texto, int width, int
> > height) {
> > > > BufferedImage image = null;
> > > >
> > > > JEditorPane pane = new JEditorPane();
> > > > Kit kit = new Kit();
> > > > pane.setEditorKit(kit);
> > > > pane.setEditable(false);
> > > > pane.setMargin(new Insets(0,0,0,0));
> > > > pane.setEditable(false);
> > > >
> > > > try {
> > > >
> > > > pane.setContentType("text/html");
> > > >
> > > >
> > > > pane.setPage("http://localhost/"+texto);
> > > > image = new BufferedImage(width, height,
> > BufferedImage.TYPE_INT_RGB);
> > > > Graphics g = image.createGraphics();
> > > > Container c = new Container();
> > > > SwingUtilities.paintComponent(g, pane, c, 0, 0, width, height);
> > > > g.dispose();
> > > > } catch (Exception e) {
> > > > System.out.println(e);
> > > > }
> > > > return image;
> > > > }
> > > >
> > > > si uso width igual al del div que tengo (348) corta la imagen
> > > > resultante, si le coloco tamaño 450 lo toma completo pero
necesito que
> > > > sea del tamaño exacto como en el html (que se vea como se ve en
> > > > firefox, mismos tamaños) alguien me puede dar alguna idea?
> > > >
> > > >
> > >
> > >
> > > --
> > > Sebastian Gurin <sgurin@>
> > >
> >
> > 
> >
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.