我正在使用Qt C ++框架编写文本编辑器。我正在使用QPlainTextEdit作为用户写出文档的中心小部件。文本可以加粗,斜体和彩色。
在编写save方法时我遇到了问题。我想保存格式,但我发现的是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;
}
答案 0 :(得分:2)
QPlainTextEdit有一个名为document()的方法,它返回一个QTextDocument。它有一个可以使用的toHtml函数。 HTH。