首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QPrinter + QPainter写入无效的PDF文件

QPrinter + QPainter写入无效的PDF文件
EN

Stack Overflow用户
提问于 2020-04-22 20:40:44
回答 1查看 165关注 0票数 0

我只是想用QPrinter +QPainter把一个矩形画成一个PDF文件:

代码语言:javascript
复制
#include <QtWidgets>
#include <QPrinter>

int main(int argc, char *argv[]) {
    QApplication a(argc, argv);
    QPrinter printer(QPrinter::HighResolution);
    printer.setOutputFileName("/Users/jason/Desktop/example.pdf");
    printer.setOutputFormat(QPrinter::PdfFormat);

    QPainter painter;
    painter.begin(&printer);
    int width = painter.viewport().width();
    int height = painter.viewport().height();
    painter.setPen(Qt::black);
    painter.drawRect(0.25*width, 0.25*height, 0.5*width, 0.5*height);
    painter.end();
}

使用MacOS 10.15.4和Qt 5.15.2这将导致空白/无效的PDF文件。没有QPrinter.setOutputFormatQPrinter.setOutputFileName的相同代码可以在纸上正确打印一个矩形。

如何使用QPrinter/QPdfWriter + QPainter绘制成PDF文件?

EN

回答 1

Stack Overflow用户

发布于 2020-04-24 03:32:01

我是个笨蛋。我以为PDF是空白的,但如果我真的真的放大很远,我能看到一条模糊的灰色线条。显然,PDF的分辨率比我的打印机要高得多!

使用painter.setPen(QPen(QBrush(Qt::red), 100.0))可以按预期显示一个清晰的矩形。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61365380

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档