FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Richmemo para word
Hola amigos del foro tengo problema que espero y me puedan ayudar a resolver y es el siguiente. Actualmente ando trabajando un mini procesador de texto en lazarus utilizando el componente RichMemo que seria el RichEdit en delphi. Ahora bien lo que necesito hacer es que el contenido que tenga RichMemo se envie a un documento en word y que conserve el formato del documento. Qué respete si puso en negrita, cursiva, subrayado, los tabs, etc.. y se visualice en el documento en word. El documento en word esta en formato RTF. Ya que las pruebas que he realizado si se envia la información pero no conserva el formato del richMemo. Espero haberme explicado bien y de antemano muchas gracias por sus respuestas.
|
#2
|
||||
|
||||
Guardandolo como .doc?
Que codigo estas usando para enviar la informacion? |
#3
|
|||
|
|||
Resuelto
Bueno al fin dí con una solución no se si será la más adecuada pero hace lo que necesito. Para esto se uso un marcador en donde se insertara lo contenido en el richMemo. Al final lo que utilice es que lo que contenga en el richmemo lo coopio al portapapeles y al final realizo un pegado especial en el documento word. Aquí les dejo el código.
Código:
var Word,marcador,doc1: Variant; w:widestring; try {* a la variable "w" le asigno la ruta donde se encuentra la plantilla a utilizar *} w:= UTF8Decode(ExtractFilePath(application.ExeName)+'plantillas\Respuesta01.rtf'); Word := CreateOleObject('Word.Application'); (* Añades un documento basado en la plantilla *) Documento := Word.Documents.Add(w); Documento := Word.Documents.Item(1); doc1:= Word.ActiveDocument; RichMemo1.SelectAll; {Se selecciona todo el texto que contenga el Rich memo} RichMemo1.CopyToClipboard {Se copia lo seleccionado al portapapeles}; Richmemo1.SelLength:=0 {se quita la selección}; if Doc1.Bookmarks.Exists('prueba') then {Chequea si existen las marcas en el documento} Begin Doc1.Bookmarks.Item('prueba').Range.PasteSpecial; {Se realiza el pegado especial del portapapeles en el marcador creado en el documento de word} end; Word.Visible := true; {Make Word visible} Clipboard.Clear;{se limpia el portapales} except on E: Exception do ShowMessage(SysToUTF8(E.Message)); end; |
#4
|
||||
|
||||
Gracias por compartirlo
De hecho te iba a proponer mas o menos lo mismo, pero no sabia como lo estabas mandando a word Saludos |
#5
|
|||
|
|||
De nada para eso estamos para compartir soluciones. Saludos
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Sistema Para Visualizar archivos de Excel Y Word | carlos gonzalez | Varios | 2 | 23-02-2009 17:56:01 |
word para torpes | armando | Servers | 15 | 12-01-2009 13:59:38 |
Word para torpes y D2006 | maxvera | Servers | 0 | 18-08-2007 12:08:06 |
Propiedades y Métodos para Documentos Word | elixir_Gabriela | Servers | 2 | 28-12-2006 15:22:42 |
Documentación para generar ficheros Word y Excel | quade | Servers | 2 | 05-01-2005 11:51:34 |
|