我正在使用 Qt C++ 框架编写一个文本编辑器。我使用 QPlainTextEdit 作为中央小部件,用户可以在其中写出他的文档。文本可以是粗体、斜体和彩色。
我在编写保存方法时遇到了问题。我想保存格式,但我发现的只是 toPlainText() 函数,这显然意味着所有格式都丢失了。如何保存格式?
我附上了保存功能的代码,以防我的问题不清楚:
bool TextEditor::saveDocument(QString filePath)
{
qDebug()<<"Saving File at"<<filePath<<endl;
QFile document(filePath);
if(!document.open(QFile::WriteOnly | QFile::Text))
{
qDebug()<<"An Error occur while opening "<<document.fileName()<<endl;
return false;
}
QTextStream writer(&document);
writer << ui->Editor->toPlainText();
writer.flush();
document.close();
qDebug()<<"Document saved successfully.";
if(this->document == NULL)
this->setDocument(&document);
return true;
}
最佳答案
QPlainTextEdit 有一个名为 document() 的方法,它返回一个 QTextDocument。它有一个可以使用的 toHtml 函数。 HTH.
关于c++ - 使用 QPlainTextEdit 保存到 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8509099/