El soporte para RTF en power podría ser mejor... (parte 8)
Luego combinando un dw-RTF con la técnica del anterior post (parte 7) se puede combinar información de un dw-RTF con texto RTF proveniente de otra fuente (un control RTF o un campo de la base de datos).
Esto ya es un avance por que al menos permite un dw-RTF contenga datos RTF insertados mediante la técnica de posicionar el cursor buscando una marca en el dw-RTF y reemplazándola por una cadena vacía.
Pero ante un avance un nuevo desafío: El dw-RTF tiene muy pocas posibilidades de posicionar texto en el documento y más específicamente el hecho de que no pueda manejar tablas... Sin embargo esto tiene una solución en tiempo de diseño:
Dado que se puede insertar un documento en el pintor del dw-RTF, entonces si se quiere insertar una tabla de n filas por m columnas lo que se hace es que en un documento de open-office o word en un documento en blanco se inserta una tabla de n filas por m columnas se salva el documento, en formato word o rtf, y luego se inserta en tiempo de diseño en el dw-RTF y listo.
Al menos PoberBuilder 10.5.1 build 6627 es capaz de insertar documentos con tablas en un dw-RTF y desplegarlos muy bien... aunque quien sabe que pasa con diseños complejos de tablas como se comporte esta funcionalidad.
Lo más importante es que en tiempo de diseño el dw-RTF respeta el posicionamiento de las tablas.
Esto es en tiempo de ejecución; pero lo mismo se puede hacer por programa tanto en el control RTF como en el dw-RTF con la función insertdocument(...).
Esta función permite insertar documento en varios formatos: RTF, Word, HTML, ... HTML, ... si si si HTML !!
Y el datawindow en si no puede guardar su contenido en formato HTML?. Pues claro que si !, entonces si yo salvo un datawindow "grid" en formato html y con insertdocument() lo inserto en un dw-RTF entonces logro combinar un dw-RTF con otros datawindows y con texto RTF todo en un solo dw-RTF.
Sencillo no?
No tanto, tiene sus arandelas sueltas, pero se puede resolver.
Ahora no tengo mucho tiempo, pero cuando pueda les pongo un ejemplo más visual.
J.
Powered by ScribeFire.