Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > Lazarus, FreePascal, Kylix, etc.
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-08-2010
Avatar de rretamar
[rretamar] rretamar is offline
Miembro Premium
 
Registrado: ago 2006
Ubicación: San Francisco, Córdoba, Argentina
Posts: 1.168
Poder: 22
rretamar Va camino a la famarretamar Va camino a la fama
¿ Que es lo que hace la aplicación ? (además de mostrar texto enriquecido)
__________________
Lazarus Codetyphon : Desarrollo de aplicaciones Object Pascal, libre y multiplataforma.
Responder Con Cita
  #2  
Antiguo 27-08-2010
Avatar de wenupix
wenupix wenupix is offline
Registrado
 
Registrado: ago 2007
Posts: 7
Poder: 0
wenupix Va por buen camino
Cita:
Empezado por rretamar Ver Mensaje
¿ Que es lo que hace la aplicación ? (además de mostrar texto enriquecido)
Hola:
Bueno, la aplicación es un diccionario.
La entrada (palabra y definición) será mostrada en un RichMemo (u otro control RTF) o un visor HTML porque es la única forma de mostrar un texto con formato, como el siguiente ejemplo:

Palabra
1. sust Definición de la palabra. Véase Otra Palabra.

La entrada se encuentra en una Base de datos SQLite como "{\rtf1\ansi\ansicpg1252\deff0\..." si es RTF o "<html><body><h1>..." si es HTML.
La idea es pasar el texto en un Stream para que sea "renderizado" en el control.

Ahora estoy probando RichMemo pero no hay mucha documentación disponible y no sé cómo usar las funciones correctamente. También estoy pensando usar otro control RTF o HTML (como GeckoPort, pero necesita las librerias XULRunner, haciendo que la aplicación sea más grande y pesada).

Me explico bien?

Saludos.
Responder Con Cita
  #3  
Antiguo 27-08-2010
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.671
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Mira si te sirve este, es freeware e incluye el código fuente.

Cita:
  • text with various fonts and colors (font styles are concentrated in TRVStyle component and can be edited at run time or at design time by special property editor),
  • hypertext,
  • pictures (bitmaps, icons, metafiles),
  • pictures from Image Lists (they also can be hypertext links),
  • any Delphi components (and they will work as usual).
  • background bitmap (it can be tiled or stretched, scrolled or not). You can hide or show vertical scrollbar, and you have full control over vertical scrolling.
  • printing (with new TRVPrint component) (limitation: inserted components are not printed in this version)
  • saving to text file or html file (limitation: images are saved as windows bitmaps so this html file can be viewed only in browsers wich support this format (MS IE, for example); but you can override virtual method for picture saving)
  • ability to get word right- or double-clicked
  • ability to remove some lines
  • ability to add new lines without reformatting of whole document (IRC-style autoscroll).
Responder Con Cita
  #4  
Antiguo 29-08-2010
Avatar de wenupix
wenupix wenupix is offline
Registrado
 
Registrado: ago 2007
Posts: 7
Poder: 0
wenupix Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Mira si te sirve este, es freeware e incluye el código fuente.
Gracias, Casimiro. Es una buena alternativa.

Pero... bueno, no me di por vencido: buscando y buscando, encontré la forma de aplicar formato a un texto en un control RichMemo.

Primero, tengo que crear una variable de tipo FontParams.
El resto es sólo aplicar.

Código Delphi [-]
var
  f: TFontParams;
...
  tam := length(utf8toAnsi(memo2.Text)); // prueba: obtener logitud (caracteres utf-8)
  richmemo1.Lines.Text:=memo2.Lines.Text;
  f.Size:=16; // tamaño fuente
  f.Color:=clGreen; // color fuente
  f.Style:=[fsBold]; // estilo de fuente
  f.Name:='Arial'; // tipografía fuente
  { SetTextAttributes(
    inicio de texto seleccionado,
    longitud de texto seleccionado,
    variable de tipo FontParams); }
    richmemo1.SetTextAttributes(richmemo1.SelStart, tam, f );
  
  contenido := TStringStream.Create('');
  try
    richmemo1.SaveRichText(contenido);
    memo1.Lines.Text:=contenido.DataString;
  finally
    contenido.Free;
  end;

Uff!, No ha sido fácil.
Sólo espero terminar mi proyecto personal y compartirlo. Estoy ansioso.

Saludos.
Responder Con Cita
  #5  
Antiguo 29-08-2010
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.671
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Supongo que habrás visto esto y esto, por si te sirve de más ayuda.
Responder Con Cita
  #6  
Antiguo 29-08-2010
Avatar de wenupix
wenupix wenupix is offline
Registrado
 
Registrado: ago 2007
Posts: 7
Poder: 0
wenupix Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Supongo que habrás visto esto y esto, por si te sirve de más ayuda.
Si, pero hay propiedades que no son aplicables a RichMemo en Lazarus.
Bueno, igual sirve como para tener una idea.

Ahora estoy avanzando con el control RichMemo.

Gracias por su ayuda y atención.

Saludos!.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como grabar un rtf con el texto enriquecido con DBRichEdit Martin Varios 0 30-07-2010 15:15:08
richedit formateado johurgi Varios 6 02-04-2008 19:09:27
Edit Formateado !!! vpepen Varios 2 02-11-2005 12:58:07
Indy Telnet - Texto formateado SMTZ Varios 0 01-12-2004 17:57:49
Grabar como texto enriquecido!! Salomon Varios 0 04-09-2003 11:55:07


La franja horaria es GMT +2. Ahora son las 13:58:28.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi