[Allegro] RTF-Export

Thomas Berger ThB at Gymel.com
Mi Apr 18 17:02:57 CEST 2012


Lieber Herr Fischer,

> 0. Wenn zl=0 gesetzt ist, gibt es keine automatischen Zeilenwechsel. Wenn
> aber (z.B. bei ae oder ke) ein "C" gesetzt wird, so wird dies durch den Wert von ze
> ersetzt, der standardmäßig 13 10 lautet. Das könnte in der Dokumentation klarer
> dargestellt werden, z.B. steht dort "Auf die Bildschirmanzeige wirkt sich ze
> nicht aus.", das stimmt so ja nicht.

Zusaetzlich wird m.W. noch automatisch jedes explizit ausgegebene Zeichen 10
(oder war es 13?) durch den Wert von ze ersetzt, zumindest unter gewissen
Nebenbedingungen (ze nicht leer? dx=1? ...)


> 1. In der *Anzeige* von A99 wird ein Zeilenwechsel *automatisch* durch '
> \par ' (oder so) ersetzt, unabhängig davon, ob er aus einer Anzeigeparameterdatei
> oder einer eingelesenen Textdatei stammt (weil der Zeilenwechsel sonst nicht
> sichtbar wäre). Der Zeilenumbruch einer RTF-Datei wird nicht verändert.

Das ist m.E. noch unklar. Herrn Eversbergs Bemerkung vorhin bezog sich
wohl auf das Laden von Nicht-RTF-Dateien in das Anzeigefeld, das nur
ueber den Weg einer vorherigen Umwandlung in RTF funktioniert und hat
daher zunaechst nichts mit der Behandlung der Ausgabe der Anzeigeparameter
zu tun.


> 2. Bei einem Export in eine RTF-Datei mit
> file datei.rtf
> wird der Zeilenwechsel durch 13 10 '\par ' ersetzt, wenn ich die Anzeige in
> Wordpad kopieren, scheint der Zeilenwechsel hingegen durch '\par' 13 10 ersetzt
> zu werden.

s.u.


> 3. Bei einem Export in eine RTF-Datei über das Exportmenü wird der Zeilenwechsel nicht automatisch ersetzt.

Hier werden die durch die Parameterdatei generierten Zeichen
weggeschrieben, ob dabei RTF herauskommt, ist es alleine
Ihre Sache.


> Konsequenz ist, dass für Anzeige und RTF-Export verschiedene Setzungen des Zeilenwechsels ze sinnvoll sind:
> Für die Anzeige ist egal, ob ze='\par ' oder ze=13 10 gesetzt wird.

Ja.

> Für den Export sollte  ze='\par ' 13 10 gesetzt werden, wenn man in die Datei als Textdatei hineinschauen will.

Ja.


> Übrigens: Einlesen per h und Ausgeben per file einer RTF-Datei ändert deren Inhalt, z.B. wird aus
> 
> {\b1Form:}{\tab on\par}
> {\b1Language:}{\tab en\par}
> 
> \par  \b Form:\b0\tab on
> \par  \b Language:\b0\tab en
> 
> ich vermute, dass das der RTF-Modul von Windows macht.

Ich beherrsche da nicht den richtigen Jargon, das, was da etwas macht ist das
"Ritch-Edit"-Control(?), das wie alle RTF-Applikationen alles lesen kann,
aber anders als Word wenig versteht. Insofern wird ein ziemlich triviales
RTF weggeschrieben, auch Stylesheet-Deklarationen und -Nutzungen gehen
floeten. Dafuer kann es ueber \u.... direktes Unicode ausgeben, was Word
und Konsorten m.E. nicht koennen.

viele Gruesse
Thomas Berger




Mehr Informationen über die Mailingliste Allegro