ふちた(@soramimi_jp)と申します。 初めまして。お世話になります。
Qt4.8.5/Qt5.2.1からQt5.3.0へ移行を検討中で、評価しているところなのですが、 印刷を行うと結果が異なるという問題に遭遇して困っております。
以下がそのプログラムです。
void MainWindow::on_pushButton_clicked() { QPrintDialog dlg(this); if (dlg.exec() == QDialog::Accepted) { QPrinter *printer = dlg.printer(); printer->setPaperSize(QPrinter::A4); printer->setOrientation(QPrinter::Portrait); printer->setPageMargins(0, 0, 0, 0, QPrinter::Millimeter); printer->setResolution(254); QPainter painter(printer); painter.setPen(QPen(Qt::black, 20)); painter.drawEllipse(0, 0, 2100, 2970); } }
これは、A4サイズの紙いっぱいに丸を印刷するものです。 Qt4.8.5/Qt5.2.1では、正しく中央に印刷されます。 しかし、Qt5.3.0で実行すると、右下に5ミリほどずれて印刷されてしまいます。 Canon/LBP-1310、RICOH/C230L、Brother/MFC-675CDでいずれも同じ症状です。 ただし、PDF出力用の仮想プリンタドライバ、Adobe DistillerとCubePDFでは、 正しく出力されます。
↓印刷例 http://www.soramimi.jp/QPrinterTest/QPrinterTest.jpg
これは既知の問題でしょうか? 解決策はあるでしょうか?