Richtext auf Graphics zeichnen

20/09/2007 - 20:06 von Werner Strewe | Report spam
Hallo NG,

ich erzeuge mittels Word oder RichtextControl o.à. hunderte von Richtexten,
die in einer DB gespeichert werden. Jetzt ist mein Ziel, diese an bestimmten
Positionen eines Usercontrols anzeigen zu lassen. Also will ich den Richtext
in ein StringVar einlesen und dann im beim Paint-Event im Graphics-Objekt
zeichnen. Alle bisher gefundenen Beitràge beziehen sich auf das Drucken von
RTF-Controls. Ich habe aber nur den Text und will ohne das Control drucken
(nur Text - keine Bilder etc.).
Meine Überlegung ist, jeden Buchstaben einzeln mit Schriftart, Farbe usw.
auszulesen und dann zu zeichnen. Leider weiß ich nicht wie ich die
Buchstabenformate "ausparsen" kann.

Gibt es da irgendwo eine 'Anleitung'?
Besten Dank
Viele Grüße von Werner
 

Lesen sie die antworten

#1 Peter Fleischer
20/09/2007 - 21:05 | Warnen spam
Werner Strewe wrote:
Hallo NG,

ich erzeuge mittels Word oder RichtextControl o.à. hunderte von
Richtexten, die in einer DB gespeichert werden. Jetzt ist mein Ziel,
diese an bestimmten Positionen eines Usercontrols anzeigen zu lassen.
Also will ich den Richtext in ein StringVar einlesen und dann im beim
Paint-Event im Graphics-Objekt zeichnen. Alle bisher gefundenen
Beitràge beziehen sich auf das Drucken von RTF-Controls. Ich habe
aber nur den Text und will ohne das Control drucken (nur Text - keine
Bilder etc.). Meine Überlegung ist, jeden Buchstaben einzeln mit
Schriftart, Farbe usw. auszulesen und dann zu zeichnen. Leider weiß
ich nicht wie ich die Buchstabenformate "ausparsen" kann.

Gibt es da irgendwo eine 'Anleitung'?



Hi Werner,
du willst also einen Word-Viewer nachbauen, der das rtf-Format erkennt. Das
ist ein viele Stunden füllendes Programm. Ich habe das mal für einige
Formatierungsangaben gemacht (Darstellung von rtf als html). Die Idee des
rtf besteht darin, dass am Anfang der Datei Formatdeklarationen stehen und
für beliebige Textstücke Verweise auf die Deklaration am Beginn
(einschalten) und am Ende (ausschalten) stehen. Du müsstest also zuerst alle
Formatdeklationen auslesen und "listen", die passenden Fontobeigenschaften
zuordnen und dann Zeichenabschnitt für Zeichenabschnitt "malen" mit einem
Font-Objekt mit den zuterffenden (eingeschalteten) Eigenschaften.


Viele Grüße

Peter

Ähnliche fragen