Difference between revisions of "THtmlPort/es"

From Lazarus wiki
Jump to navigationJump to search
Line 105: Line 105:
 
* ''FrameDem'' sample app throws exception in several places (for example, clicking Stylesheet Support link). In debugger, enter "break gdk_x_error" and run backtrace following exception to see where error is occurring.¿¿¡¡!!??
 
* ''FrameDem'' sample app throws exception in several places (for example, clicking Stylesheet Support link). In debugger, enter "break gdk_x_error" and run backtrace following exception to see where error is occurring.¿¿¡¡!!??
  
* Problemas con las fuentes en ''FrameDem''. Esto puede ser debido a la imposibilidad de conciliar la fuente contra la fuente de Windows que se especifica en los archivos .css. Por ejemplo, no subrayando o tachando, el texto en la etiqueta <PRE> no tiene la sangría correctamente, el texto se ve demasiado grande en la ventana "Acerca de...", etc.
+
* Problemas con las fuentes en ''FrameDem''. Esto puede ser debido a la imposibilidad de conciliar la fuente contra la fuente de Windows que se especifica en los archivos .css. Por ejemplo, no subrayando o tachando, el texto en la etiqueta &lt;PRE&gt; no tiene la sangría correctamente, el texto se ve demasiado grande en la ventana "Acerca de...", etc.
  
 
* En ''FrameDem'', los dos primeros caracteres WingDing (sample3.htm) no son correctos.
 
* En ''FrameDem'', los dos primeros caracteres WingDing (sample3.htm) no son correctos.

Revision as of 01:16, 16 December 2009

English (en) español (es)

En breve

   THtmlPort es la versión Lazarus/Free Pascal de los componentes HTML de Dave Baldwin, incluye THtmlViewer, TFrameViewer y TFrameBrowser. El código adaptado mantiene la compatibilidad completa con Delphi.

   El código original no adaptado se encuentra aquí:

 http://www.pbear.com/

Pantallazos

Ejemplo de FrameDem usando la interfaz Carbon
Ejemplo de FrameDem usando la interfa Win32
Ejemplo de FrameDem usando la interfa GTK2t

Descarga

   Puedes descargar el código fuente adaptado usando Subversion:

 svn co https://lazarus-ccr.svn.sourceforge.net/svnroot/lazarus-ccr/components/thtmlport [directorio_local_destino]

   También hay disponible un archivo zip:

 http://web.fastermac.net/~MacPgmr/THtmlPort/

Licencia

   El código original Delphi en que está basada esta adaptación fue liberado por Dave Balwin como de Dominio Público. El código adicional añadido con esta adaptación se distribuye bajo la licencia MPL 1.1.

Instalación

   Para instalar el paquete HtmlComp en Lazarus:

  • Seleccionar Paquete | Abrir archivo de paquete (-lpk)..., y marcar htmlcomp.lpk (en el directorio package).
  • Pulsar Compilar para compilar el paquete.
  • Pulsar Compilar una segunda vez. Una peculiaridad de la FPC actual parece que requiere esta compilación extra.
  • Pulsar Instalar para reconstruir el IDE y relanzar Lazarus.

   Para compilar una aplicación de ejemplo que utiliza componentes del paquete HtmlComp:

  • Seleccionar Archivo | Abrir, ahora busacr y marcar framedem.lpi o htmldemo.lpi (ambos en el directorio demo_src).
  • Seleccionar Ejecutar | Ejecutar (o F9) para compilar y lanzar las aplicaciones de ejemplo.

Estado

Interfaz Carbon

   Estable pero necesita soporte para formatos de imágenes adicionales y caracteres especiales. Las dos aplicaciones de ejemplo FrameDem y HtmlDemo funcionan.

   Funciona con la versión estable de Lazarus 0.9.28.2, pero para mejores resultados en el diseño de formularios hay que usarla versión 0.9.29.

Interfaz Win32

   La apariencia es casi idéntica a la de Delphi, pero no está libre del todo de problemas. Si bien la aplicación de ejemplo FrameDem funciona bastante bien, la aplicación HtmlDem produce una excepción en el arranque.

   Funciona con la versión estable de Lazarus 0.9.28.2, pero para mejores resultados en el diseño de formularios hay que usarla versión 0.9.29.

Interfaz GTK2

   Empieza a tener buena pinta, pero la aplicación de ejemplo FrameDem es propensa a fallar en diversos puntos. La aplicación HtmlDemo no muestra el archivo HTML cargado.

   Asegúrate de utilizar Lazarus 0.9.29 con esta interfaz.

Contacto

   Si tienes correcciones para los problemas del paquete, por favor, pónte en contacto con Phil:

 MacPgmr (at) fastermac (dot) net

Problemas conocidos

Interfaz Carbon

  • En la aplicación FrameDem, título y subtítulo en la parte de arriba(readme2.htm) aparece en Sans serif, aunque el estilo en demo.css especifica Times New Roman, que es una fuente de Mac.
  • En FrameDem, los caracteres WingDing characters (sample3.htm) no son correctos.
  • En FrameDem, los gráficos dentro del texto (sample3.htm) o de tablas (properties.htm no se muestran. Esto va acompañado de la emisión de muchos errores por la ventana de la consola por el código de la interfaz Carbon.
  • La barra de desplazamiento vertical no se mueve hasta el final cuando la ventana se desplaza completamente.
  • In FrameDem, shelling to whatsnew.htm does not work since can't start second copy of app.
  • En FrameDem, la Vista previa en el cuadro de diálogo Imprimir da error de copias establecidas a 0. Cambiar copias a 1 permite la vista previa, pero no se ve mucho. En la aplicación HtmlDemo, la vista previa funciona bastante bien, aunque no se muestra tan bien como en la propia aplicación. Con las dos aplicaciones se cuelgan con la segunda vez que se intenta la Vista previa.

Interfaz Win32

  • El ejemplo HtmlDemo lanza una excepción al arrancar.
  • El ejemplo FrameDem falla en ocasiones al cargar samples3.htm tras pulsar el enlace 'HTML Samples'; otras veces carga bien.
  • En el ejemplo FrameDem, al pulsar el enlace 'What's new in Version 9.45' se inicia otra copia de la aplicación correctamente, pero no se muestra el archivo "whatsnew.htm". Ocurre lo mismo al iniciar FrameDem con un archivo distinto de "demo.htm" especificado en la línea de órdenes.
  • En el diseñador de Lazarus, al situar un THtmlViewer en un formulario muestra una barra de desplazamiento en la esquina superior izquierda del control. Al cambiar por ejemplo el BorderStyle del THtmlViewerdesaparece la barra. Parece ser un fallo del diseñador de formularios (nota del traductor: este fallo no parece producirse con la versión 0.9.28 beta) .

Interfaz GTK2

  • El ejemplo HtmlDemo no funciona en absoluto.
  • FrameDem sample app throws exception in several places (for example, clicking Stylesheet Support link). In debugger, enter "break gdk_x_error" and run backtrace following exception to see where error is occurring.¿¿¡¡!!??
  • Problemas con las fuentes en FrameDem. Esto puede ser debido a la imposibilidad de conciliar la fuente contra la fuente de Windows que se especifica en los archivos .css. Por ejemplo, no subrayando o tachando, el texto en la etiqueta <PRE> no tiene la sangría correctamente, el texto se ve demasiado grande en la ventana "Acerca de...", etc.
  • En FrameDem, los dos primeros caracteres WingDing (sample3.htm) no son correctos.
  • En FrameDem, File | Printer Setup provoca una excepción en /printers/unix/cupslcl.pas si se selecciona antes de pulsar el uno de los marcos. Pulsar en un marco habilita File | Print... y ahora el diálogo Imprimir se muestra correctamente, File | Printer Setup también.
  • In both apps' Fonts dialog (Options | Default Font/Colors), the Font Name list will be empty if HasX was not defined when GTK2 was compiled (default on OS X; without HasX, EnumFontFamiliesEx is not implemented, meaning Screen.Fonts is empty list). But even if the list does contain fonts (HasX defined), clicking one blanks the example HTML (LoadAgain failing?).
  • In FrameDem app, shelling to whatsnew.htm starts another copy of app okay and loads file, but no vertical scroll bar is displayed, although clicking on invisible scroll bar does scroll the window.

All widgetsets

  • In the sample apps' Fonts dialog (Options | Default Font/Colors), the Font Color and Link Color areas are blank since a TColorGrid was used in the original Delphi apps. TColorGrid is not an LCL control and has been removed from the .lfm files.
  • Preview has been disabled since this depends on TMetaFile, which is not part of LCL.
  • Copying to clipboard does not yet work.
  • Does not yet support 64-bit.