Guten Morgen,
zum Ausgangsspunkt. Ich habe eine Datei, bspw. mit OpenOffice geschrieben und speichere diese dann im rtf-Format.
Ich möchte nun in einem QTextEdit den Inhalt der Datei auch sauber formatiert, sprich so, wie ich sie geschrieben habe auch wiedergeben können.
Das ist allerdings mein Problem. Ich bekomme dann auch diese ganzen, was ich jetzt mal unwissentlich als "Dokumentzusatzinformationen" bezeichne ausgegeben.
Folgendes habe ich schon probiert,
-setAcceptRichText() für das QTextEdit aufzurufen. => Keine Veränderung
-den Inhalt der geöffneten Datei einem QTextDocument zu übergeben und
dann den Inhalt als Plaintext der einzelnen Blöcke mit QTextBlocks auszulesen => Jetzt bekomme ich nur noch diese Zusatzinformationen.
noch zwei Anmerkungen dazu. Nachdem ich den Pfad zur Datei habe und diese mit open öffne, weise ich einem QString den Inhalt mit readAll() zu.
Zudem sitze ich an einem Mac, falls das der Formate wegen etwas ausmacht. Ich würde prinzipiell aber auch gerne möglichst viele Formate öffnen können, so dass die Formatierung des Texts erhalten bleibt.
Ich bedanke mich schonmal bei Euch. Grüße,
Marcus
Textdarstellung rtf Dokumente in QTextEdit
-
Marcus Breuer
- Beiträge: 113
- Registriert: 31. März 2011 17:19
- Wohnort: Aachen
- Kontaktdaten:
-
Marcus Breuer
- Beiträge: 113
- Registriert: 31. März 2011 17:19
- Wohnort: Aachen
- Kontaktdaten:
Hi,
danke schonmal für die Erleuchtung:)
@franzf: ich übergebe den gesamten Text der Datei wie folgt:
Ich habe weiter probiert den Inhalt dann an ein QTextDocument zu geben mit:
natürlich habe ich dann vorher nichts im QTextEdit ausgeben lassen und probiert mit
den ersten Block des Dokuments auszulesen. Was leider auch kläglich scheiterte. Ich hatte dazu etwas gelesen, wie *.rtf Dateien aufgebaut sind.
Also entweder ist mein Englisch dafür zu bescheiden, um es richtig verstanden zu haben oder was wahrscheinlich noch dazu kommt, ich steige da nicht hinter.
Was ich letzten Endes möchte ist, bspw. wie in OpenOffice eine Datei, die ich bspw mit Apples TextEdit im rtf-Format gespeichert editiert habe, irgendwie auf dem Bildschirm auch genau so wieder darstellen zu könne, wie es eben in OpenOffice oder Word dann auch funktioniert.
Gibt es eine simple andere Klasse, die ich zur Darstellung von formatiertem Text verwenden kann?
Grüße und Danke,
Marcus
danke schonmal für die Erleuchtung:)
@franzf: ich übergebe den gesamten Text der Datei wie folgt:
Code: Alles auswählen
void Hauptfenster::openFile() {
ui->Ausgabe->clear();
QString dateipfad = QFileDialog::getOpenFileName(
this, "Datei auswählen",
QDir::homePath(), "");
QFile datei(dateipfad);
datei.open(QIODevice::ReadOnly | QIODevice::Text);
ui->Ausgabe->setText(datei.readAll());
datei.close();Code: Alles auswählen
QTextDocument yxz(datei.readAll());
Code: Alles auswählen
QTextBlock.begin();
Also entweder ist mein Englisch dafür zu bescheiden, um es richtig verstanden zu haben oder was wahrscheinlich noch dazu kommt, ich steige da nicht hinter.
Was ich letzten Endes möchte ist, bspw. wie in OpenOffice eine Datei, die ich bspw mit Apples TextEdit im rtf-Format gespeichert editiert habe, irgendwie auf dem Bildschirm auch genau so wieder darstellen zu könne, wie es eben in OpenOffice oder Word dann auch funktioniert.
Gibt es eine simple andere Klasse, die ich zur Darstellung von formatiertem Text verwenden kann?
Grüße und Danke,
Marcus
-
Marcus Breuer
- Beiträge: 113
- Registriert: 31. März 2011 17:19
- Wohnort: Aachen
- Kontaktdaten:
Hallo nochmal,
ich glaube, ich bin fündig geworden auf der Suche nach Weisheit. Ich poste einfach mal den Link, vielleicht hilft es jemandem in Zukunft oder ich werde einfach nochmal schreiben, wenn ich nicht vorher den Laptop aus dem Fenster schmeiße:)
http://doc.qt.nokia.com/latest/richtext-textobject.html
Sonst bin ich aber auch für jede Erklärung oder Anregung dankbar.
Viele Grüße,
Marcus
ich glaube, ich bin fündig geworden auf der Suche nach Weisheit. Ich poste einfach mal den Link, vielleicht hilft es jemandem in Zukunft oder ich werde einfach nochmal schreiben, wenn ich nicht vorher den Laptop aus dem Fenster schmeiße:)
http://doc.qt.nokia.com/latest/richtext-textobject.html
Sonst bin ich aber auch für jede Erklärung oder Anregung dankbar.
Viele Grüße,
Marcus
-
Marcus Breuer
- Beiträge: 113
- Registriert: 31. März 2011 17:19
- Wohnort: Aachen
- Kontaktdaten:
Guten Morgen,
da ich gestern noch sehr viel Zeit damit verbracht habe, eine geeignete Quelle zu finden, wie ich denn endlich ein RTF Dokument darstellen kann im QTextEdit
und dabei dann doch irgendwann die Hoffnung auf erfolg gestorben ist, war die Lösung dann doch recht einfach.
Vielleicht ist demnächst noch jemand auf der Suche danach, deswegen poste ich es einmal.
Ich habe einfach den Inhalt einer HTML Datei übergeben und siehe da, es funktioniert. HTML kann man sich für die Zwecke denke ich, schnell genug aneignen.
Der minimalistische Code dazu sieht jetzt bei mir wie folgt aus:
Viele Grüße,
Marcus
da ich gestern noch sehr viel Zeit damit verbracht habe, eine geeignete Quelle zu finden, wie ich denn endlich ein RTF Dokument darstellen kann im QTextEdit
und dabei dann doch irgendwann die Hoffnung auf erfolg gestorben ist, war die Lösung dann doch recht einfach.
Vielleicht ist demnächst noch jemand auf der Suche danach, deswegen poste ich es einmal.
Ich habe einfach den Inhalt einer HTML Datei übergeben und siehe da, es funktioniert. HTML kann man sich für die Zwecke denke ich, schnell genug aneignen.
Der minimalistische Code dazu sieht jetzt bei mir wie folgt aus:
Code: Alles auswählen
void MainWindow::openFile() {
QString file = QFileDialog::getOpenFileName(
this, " ", QDir::homePath(), " ");
QFile dat(file);
dat.open(QIODevice::ReadOnly | QIODevice::Text);
ui->textEdit->append(dat.readAll());
Viele Grüße,
Marcus