diff --git a/src/app/valentina/mainwindowsnogui.cpp b/src/app/valentina/mainwindowsnogui.cpp index 1dd20d403..6218ace49 100644 --- a/src/app/valentina/mainwindowsnogui.cpp +++ b/src/app/valentina/mainwindowsnogui.cpp @@ -1308,7 +1308,7 @@ void MainWindowsNoGUI::PdfFile(const QString &name, QGraphicsRectItem *paper, QG } QPainter painter; - if (painter.begin( &printer ) == false) + if (not painter.begin( &printer )) { // failed to open file qCritical("%s", qUtf8Printable(tr("Can't open printer %1").arg(name))); return; diff --git a/src/libs/vmisc/def.cpp b/src/libs/vmisc/def.cpp index 9da9d89e4..dfb1bc9ba 100644 --- a/src/libs/vmisc/def.cpp +++ b/src/libs/vmisc/def.cpp @@ -315,24 +315,21 @@ QMarginsF GetMinPrinterFields(const QSharedPointer &printer) } //--------------------------------------------------------------------------------------------------------------------- -QMarginsF GetPrinterFields(const QSharedPointer &printer) +auto GetPrinterFields(const QSharedPointer &printer) -> QMarginsF { if (printer.isNull()) { - return QMarginsF(); + return {}; } - qreal left = 0; - qreal top = 0; - qreal right = 0; - qreal bottom = 0; - printer->getPageMargins(&left, &top, &right, &bottom, QPrinter::Millimeter); // We can't use Unit::Px because our dpi in most cases is different + const QMarginsF m = printer->pageLayout().margins(QPageLayout::Millimeter); + QMarginsF def; - def.setLeft(UnitConvertor(left, Unit::Mm, Unit::Px)); - def.setRight(UnitConvertor(right, Unit::Mm, Unit::Px)); - def.setTop(UnitConvertor(top, Unit::Mm, Unit::Px)); - def.setBottom(UnitConvertor(bottom, Unit::Mm, Unit::Px)); + def.setLeft(UnitConvertor(m.left(), Unit::Mm, Unit::Px)); + def.setRight(UnitConvertor(m.right(), Unit::Mm, Unit::Px)); + def.setTop(UnitConvertor(m.top(), Unit::Mm, Unit::Px)); + def.setBottom(UnitConvertor(m.bottom(), Unit::Mm, Unit::Px)); return def; } diff --git a/src/test/ValentinaTest/tst_vposter.cpp b/src/test/ValentinaTest/tst_vposter.cpp index 6f7ae25e6..6e6f6ec2d 100644 --- a/src/test/ValentinaTest/tst_vposter.cpp +++ b/src/test/ValentinaTest/tst_vposter.cpp @@ -45,15 +45,13 @@ TST_VPoster::TST_VPoster(QObject *parent) : void TST_VPoster::BigPoster() { QPrinter printer; - printer.setResolution(96);// By default + printer.setResolution(static_cast(PrintDPI));// By default printer.setPageSize(QPageSize(QPageSize::A4)); printer.setFullPage(true); // We need to set full page because otherwise QPrinter->pageRect returns different values in Windows and Linux //sets the margins to 0 to perform the test. - const qreal left = 0, top = 0, right = 0, bottom = 0; - printer.setPageMargins(QMarginsF(left, top, right, bottom), QPageLayout::Millimeter); - + printer.setPageMargins(QMarginsF(), QPageLayout::Millimeter); const QSize image(2622, 3178); // Little bit bigger than A1 VPoster posterazor(&printer);