【问题标题】:Qt printing on linux has wrong coordinateslinux上的Qt打印坐标错误
【发布时间】:2019-03-26 18:14:19
【问题描述】:

我正在尝试使用 Qt 5.12.2 在 Linux 上打印,但结果超出了页面限制,超出了页面。

QPrinter printer;

QPrintDialog *printDialog = new QPrintDialog(&printer, this);
printer.setOutputFormat(QPrinter::PdfFormat);

if (printDialog->exec() != QDialog::Accepted)
        return;

QRectF rec = printer.pageRect(QPrinter::DevicePixel);

QTextDocument doc;

QRectF recHeader(rec.left(), rec.top(), rec.width(), 20);

QPainter painter(&printer);

painter.translate(recHeader.left(), recHeader.top());
painter.drawRect(recHeader);
painter.drawText(recHeader, Qt::AlignLeft, "some text");
painter.drawText(recHeader, Qt::AlignRight, "01/01/2019");

将顶部参数 (rec.top()) 更改为 200,打印正确,在 Windows 上正确打印,无需修改。

有什么想法吗?

使用 Fedora 29、Gnome 3.30.2

【问题讨论】:

    标签: c++ linux qt


    【解决方案1】:

    我做了一个下游到较低的版本,现在正在工作。

    【讨论】:

      猜你喜欢
      • 2015-12-12
      • 2015-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多