In leichter Erweiterung des Problems hätte ich eine Frage:
Hat jemand Erfahrung mit dem Speichern eines relativ komplex
formatierten Textes in RTF? Ich versuche einen Text zu speichern, den
ich mittels Copy/Paste problemlos (und formatiert) nach TextEdit
herausbekomme, aber mit der Routine der "Language Reference" fürs
Speichern bekomme ich den 'ewigen Umgang'.
************
Dim s as TextOutputStream
Dim f as FolderItem
f= GetSaveFolderItem(TextTypes.TextRtf,"TestSaveRTF")
s=f.CreateTextFile
s.Write EditField1.StyledText.RTFData
s.Close
**********
Das Programm stürzt dabei nicht ab sondern orgelt - wenn erwünscht -
über mehrere Stunden vor sich hin. Es handelt sich beim Text um eine
Art Inhaltsverzeichnis von ca. 20 Seiten mit normal, fett und kursiv
in jeder Zeile ( also ca. 700 Zeilen). Das ist nicht wahnsinnig viel.
Wenn ich (was mir aus Versehen passierte) anstelle der Instanz das
Grundfenster mit leerem Editfield exportiere ohne sonst etwas am Code
zu ändern, wird eine kurze Initialisierungszeile mit den Editfield-
Formaten korrekt gespeichert.
Ich kann z.Zt. mit Copy/Paste leben, wäre aber doch froh zu wissen,
ob andere auch diese Erfahrung haben.
Gruss
Karl Grob
Am 18.10.2007 um 11:48 schrieb Stefan Sicurella:
vielen Dank, das geht auch hier
nur wollte ich es lieber als RTF machen wegen Cross-Plattform. Aber
ich teste es gleich mal unter Win, wenn es da geht , also wenn alle
styles erhalten bleiben, brauche ich rtf nicht.
Das Problem mit rtf war, dass ich es nicht mehr in das styled
Editfield zurück bekommen hatte sondern alles nur als eine Textzeile
Gruß
Stefan
......Hab jetzt den Thread nicht ganz verfolgt, aber ich lege die
Textstysledaten in der DB folgendermaßen ab, und es geht.
textstyle Feld in der DB als binary anlegen
dim a, b as string
a = EncodeBase64(self.TextFeld.text,0)
b = EncodeBase64(self.TextFeld.TextStyleData,0)
Diese Daten in die DB ...
Bei Rausholen dann wieder DecodeBase64, in ein DataControl z.B. so:
a=DecodeBase64(DataControl1.Recordset.IdxField(8).StringValue
b=DecodeBase64(DataControl1.Recordset.idxfield(9).StringValue
TextFeld.SetTextAndStyle a,b
Vielleicht kannst Du was damit anfangen.....
Gruß
Achim