Allow setting resolution for ToQTextDocument converter

This commit is contained in:
Veronica Berglyd Olsen
2024-11-26 02:22:36 +01:00
parent ff470028be
commit 18c70ffe3e
2 changed files with 7 additions and 4 deletions
+1 -1
View File
@@ -178,7 +178,7 @@ class NWBuildDocument:
makeObj = ToQTextDocument(self._project) makeObj = ToQTextDocument(self._project)
makeObj.disableAnchors() makeObj.disableAnchors()
filtered = self._setupBuild(makeObj) filtered = self._setupBuild(makeObj)
makeObj.initDocument() makeObj.initDocument(resolution=1200)
yield from self._iterBuild(makeObj, filtered) yield from self._iterBuild(makeObj, filtered)
makeObj.closeDocument() makeObj.closeDocument()
+6 -3
View File
@@ -85,6 +85,7 @@ class ToQTextDocument(Tokenizer):
self._pageSize = QPageSize(QPageSize.PageSizeId.A4) self._pageSize = QPageSize(QPageSize.PageSizeId.A4)
self._pageMargins = QMarginsF(20.0, 20.0, 20.0, 20.0) self._pageMargins = QMarginsF(20.0, 20.0, 20.0, 20.0)
self._resolution = 96
return return
@@ -123,9 +124,10 @@ class ToQTextDocument(Tokenizer):
# Class Methods # Class Methods
## ##
def initDocument(self) -> None: def initDocument(self, resolution: int = 96) -> None:
"""Initialise all computed values of the document.""" """Initialise all computed values of the document."""
super().initDocument() super().initDocument()
self._resolution = resolution
self._document.setUndoRedoEnabled(False) self._document.setUndoRedoEnabled(False)
self._document.blockSignals(True) self._document.blockSignals(True)
@@ -168,8 +170,8 @@ class ToQTextDocument(Tokenizer):
self._mMeta = (fPx * self._marginMeta[0], fPx * self._marginMeta[1]) self._mMeta = (fPx * self._marginMeta[0], fPx * self._marginMeta[1])
self._mSep = (fPx * self._marginSep[0], fPx * self._marginSep[1]) self._mSep = (fPx * self._marginSep[0], fPx * self._marginSep[1])
self._mIndent = fPx * 2.0 self._mIndent = fPx * self._resolution/96 * 2.0
self._tIndent = fPx * self._firstWidth self._tIndent = fPx * self._resolution/96 * self._firstWidth
# Text Formats # Text Formats
# ============ # ============
@@ -265,6 +267,7 @@ class ToQTextDocument(Tokenizer):
printer = QPrinter(QPrinter.PrinterMode.HighResolution) printer = QPrinter(QPrinter.PrinterMode.HighResolution)
printer.setDocName(self._project.data.name) printer.setDocName(self._project.data.name)
printer.setCreator(f"novelWriter/{__version__}") printer.setCreator(f"novelWriter/{__version__}")
printer.setResolution(self._resolution)
printer.setOutputFormat(QPrinter.OutputFormat.PdfFormat) printer.setOutputFormat(QPrinter.OutputFormat.PdfFormat)
printer.setPageSize(self._pageSize) printer.setPageSize(self._pageSize)
printer.setPageMargins(m.left(), m.top(), m.right(), m.bottom(), QPrinter.Unit.Millimeter) printer.setPageMargins(m.left(), m.top(), m.right(), m.bottom(), QPrinter.Unit.Millimeter)