我的代碼通過QGraphicsScene內容呈現到正確的初始化QPrinter來生成PDF文件。 雖然處理應用程序,例如文本可以編輯,複製到剪貼板等我怎樣才能生成PDF從QGraphicsScene,在我的文本字符串也可以複製,或者它是不可能的,我需要建立另外,QTextDocument這樣的任務?如何從QGraphicsScene生成可複製文本的PDF文件?
QGraphicsTextItem* textItem = new QGraphicsTextItem (text);
textItem->setPlainText (text);
textItem->setTextInteractionFlags (Qt::TextEditorInteraction);
textItem->setFlags(QGraphicsItem::ItemIsSelectable | textItem->flags());
scene->addItem(textItem);
QPrinter pdfPrinter;
pdfPrinter.setOutputFormat(QPrinter::PdfFormat);
pdfPrinter.setPaperSize(QSize(scene->width(), scene->height()), QPrinter::Point);
pdfPrinter.setFullPage(true);
pdfPrinter.setOutputFileName(path);
QPainter pdfPainter;
pdfPainter.begin(&pdfPrinter);
scene->render(&pdfPainter);
pdfPainter.end();
的[Qt的規格](http://doc.qt.nokia.com/latest/qprinter.html#OutputFormat-enum)描述 「可搜索的」 文本作爲其輸出。這意味着基本字符正在被存儲。據我所知,是否可以選擇文本更多是PDF *閱讀器*的功能,而不是作者。 – spraff
試了讀者包括Mac OS X預覽,使用Adobe Acrobat X中預覽文本字符串是可選的,但剪貼板只能得到象徵空間複製時。在Acrobat中,文本字符串根本不可選。 –
您的代碼會生成PDF文件中的可選文本。我只是試過了!所以我不明白你的問題... – CapelliC