summaryrefslogtreecommitdiffstats
path: root/src/printsupport/kernel/qprintengine_pdf.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/printsupport/kernel/qprintengine_pdf.cpp')
-rw-r--r--src/printsupport/kernel/qprintengine_pdf.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/printsupport/kernel/qprintengine_pdf.cpp b/src/printsupport/kernel/qprintengine_pdf.cpp
index 3e343176ba..c4bcb697f5 100644
--- a/src/printsupport/kernel/qprintengine_pdf.cpp
+++ b/src/printsupport/kernel/qprintengine_pdf.cpp
@@ -213,6 +213,7 @@ void QPdfPrintEngine::setProperty(PrintEnginePropertyKey key, const QVariant &va
d->topMargin = margins.at(1).toReal();
d->rightMargin = margins.at(2).toReal();
d->bottomMargin = margins.at(3).toReal();
+ d->pageMarginsSet = true;
break;
}
default:
@@ -298,8 +299,11 @@ QVariant QPdfPrintEngine::property(PrintEnginePropertyKey key) const
case PPK_PageMargins:
{
QList<QVariant> margins;
- margins << d->leftMargin << d->topMargin
- << d->rightMargin << d->bottomMargin;
+ if (d->printerPaperSize == QPrinter::Custom && !d->pageMarginsSet)
+ margins << 0 << 0 << 0 << 0;
+ else
+ margins << d->leftMargin << d->topMargin
+ << d->rightMargin << d->bottomMargin;
ret = margins;
break;
}
@@ -353,6 +357,7 @@ QPdfPrintEnginePrivate::QPdfPrintEnginePrivate(QPrinter::PrinterMode m)
pageOrder(QPrinter::FirstPageFirst),
paperSource(QPrinter::Auto),
printerPaperSize(QPrinter::A4),
+ pageMarginsSet(false),
fd(-1)
{
resolution = 72;