gpt4 book ai didi

qt - QPrinter 中的错误处理

转载 作者:行者123 更新时间:2023-12-02 07:37:11 25 4
gpt4 key购买 nike

当使用 QTextDocument 和 QPrinter 打印为 PDF 时,是否有任何方法可以检测错误(例如,无法写入 PDF 文件)?我正在使用以下代码:

QTextDocument document;
QPrinter printer( QPrinter::HighResolution );
printer.setOutputFormat( QPrinter::PdfFormat );
printer.setOutputFileName( filename );
document.print( &printer );

最佳答案

在文档中,您将找到 QPrinter::printerState 。所以你绝对可以这样做:

if (printer.printerState() == QPrinter::Error)
// do some error handling

我承认这并没有太多工作,因为只有 4 个 QPrinter::PrinterState。您可能希望从一开始就尽力避免错误。 detailed description在文档中指出:

Note that setting parameters like paper size and resolution on an invalid printer is undefined. You can use QPrinter::isValid() to verify this before changing any parameters.

此外,您可以使用 QFile::exists 检查您设置的文件名是否已存在。 。另外,设置完毕后您可以调用并处理QPrinter::supportedResolutions() , QPrinter::supportedPaperSources()QPrinter::supportsMultipleCopies() 。当然,打印为 PDF 您可能不必担心这些。

关于qt - QPrinter 中的错误处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33372261/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com