HTMLEditor HTML Text in Rich Text umwandeln

Kuryu

Mitglied
Hallo Leute.

Ich wollte den HTMLEditor (JavaFX) nutzen, um formatierte Texte hineinzukopieren.
Das Einfügen klappt ohne Probleme. Ich wollte den formatierten Text in meine Datenbank speichern und nachher wieder aufrufen.
Im Anschluss wollte ich den Text so abändern, dass ich damit eine rtf-Datei erstellen kann. D.h. der HTML-Text muss zuvor in einen Rich Text konvertiert werden und im Anschluss wollte ich dann mit dem Rich Text die Datei erstellen. Ich will hierfür keine Seiten etc. nutzen.

Gibt es eventuell bekannte Bibliotheken oder Klassen die das können? Es muss am Ende auch nicht unbedingt das rtf sein, aber es sollte ein Format sein, womit ich formatierte Texte und Bilder anzeigen kann.

Vielen Dank im Voraus für eure Hilfe.

VG
 
Zuletzt bearbeitet:
Würde ich machen, aber im weiteren Verlauf wollte ich einen Format haben, welches ich noch "per Hand" bearbeiten kann.
Z.B. wäre auch .docx möglich, da ich diese per Word noch bearbeiten könnte.
 
Danke dir.
Beim ersten steht:
One of the popular PD4ML features is a generation of RTF documents from HTML templates.
Ich will aber dazwischen eingreifen und den HTML-Text in den reinen Rich Text umwandeln, ohne das RTF Dokument zu erstellen. Ich benötige zuvor noch den Rich Text.
Habe ich da etwas überlesen oder ist das bei beiden Links nicht gegeben?

Danke dir für deine Mühen.
 
Danke. Ich will eventuell nachher das Ganze ausbauen, sprich Bilder etc. anzeigen.
Da wäre das Problem, dass eine txt-Datei schnell an seine Grenzen kommt (die Formate
nicht angezeigt werden, sondern nur der "reine Text" selbst ohne die Formatierungen).
 
Ich will aber dazwischen eingreifen und den HTML-Text in den reinen Rich Text umwandeln, ohne das RTF Dokument zu erstellen. Ich benötige zuvor noch den Rich Text.
Was ist denn hier der Unterschied? Was ist der Unterschied zwischen "Rich Text" und "RTF Dokument"? Das ist doch das gleiche. RTF ist reiner Text und kann theoretisch auch in einem Texteditor bearbeitet werden. Allerdings ist das nicht ganz einfach. Einfacher wäre z.B.: Markdown.
 
@Oneixee5
Ich glaube, dass es etwas unglücklich meinerseits formuliert wurde. Du hast selbstverständlich recht.
Ich meinte das so, dass ich z.B. den HTML-Text irgendwo abgreife und den reinen Rich Text bekomme.
Sprich so etwas:


{\rtf1
Guten Tag!
\line
{\i Dies} ist \b{\i ein
\i0 formatierter \b0Text}.
\par
\b Das \b0Ende.
}

Aber in einem RTF Dokument wäre ja nur zu lesen:
Guten Tag!
Dies ist einformatierter Text.
Das
Ende.

Ich habe aber nichts sinnvolles gefunden. Das mit dem PD4ML klappt soweit ohne Probleme.
Zur Not arbeite ich mit dem PD4ML-Ansatz ohne den Rich Text irgendwo auszulesen.

 
@Oneixee5
Vielen Dank für deinen Ansatz, aber um ehrlich zu sein konnte ich es nicht ganz nachvollziehen. Entweder ist die Umsetzung deutlich einfacher als ich es mir vorstelle, oder wir reden aneinander vorbei.

Meine Idee ist es, über den HTML-Editor den HTML-Text abzugreifen und eine RTF-Datei herzustellen (kann auch ein anderes Format sein, aber es sollte die Möglichkeit gegeben sein, dass man den formatierten Text einsehen und bearbeiten kann, wie z.B. bei Word. Die Word-Datei kann ja jeder Zeit effektiv umgeändert werden, sprich ich kann direkte Änderungen an dem Format vornehmen und Bilder etc. hinzufügen).

Ich habe deine Idee mit dem Link: https://pd4ml.com/cookbook/html_to_rtf_conversion.htm , ausprobiert und hier gab es an sich keine Probleme bei der Konvertierung. Ich musste lediglich eine HTML-Datei erstellen und irgendwo abspeichern, die danach in eine RTF-Datei konvertiert wurde.
Hier ist das einzige Problem, dass es nicht lizenzfrei ist (da auf meine Frage, ob ich eine Lizenz bekommen könnte, keine Antwort kam).

Bei mir besteht also das Problem nur noch bei dem Schritt mit der lizenzfreien Konvertierung.
Falls du es eventuell etwas genauer erläutern könntest, wäre es sehr hilfreich.

Vielen Dank im Voraus.
 
Aber in einem RTF Dokument wäre ja nur zu lesen [...]
Das ist falsch
Das Dokument kann z.B. so ausschauen

Das ist ein }{\rtlch\ab \ltrch\loch\b\loch
formatierter}{\loch
Text}"

Der Viewer oder Editor zeigt es dann formatiert an. Das ist aber vom Viewer abhängig, nicht vom Dokument. Mach mal ein RTF-Dokument mit einem einfachen Texteditor auf, dann siehst du das.

Wenn du da noch eingreifen willst, kannst du im verlinkten Beispiel ja statt einem FileOutputStream was anderes verwenden. Damit schreibt der Code dann nicht mehr in eine Datei, sondern z.B. in einen String


Falls das Ganze anstatt mit einem Stream auch mit einem Writer funktioniert, verwende einfach einen StringWriter.
 

Zurück
Oben