Allow setting resolution for ToQTextDocument converter
This commit is contained in:
@@ -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()
|
||||||
|
|
||||||
|
|||||||
@@ -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)
|
||||||
|
|||||||
Reference in New Issue
Block a user