QtPdf.pyi 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284
  1. # The PEP 484 type hints stub file for the QtPdf module.
  2. #
  3. # Generated by SIP 6.15.3
  4. #
  5. # Copyright (c) 2026 Riverbank Computing Limited <info@riverbankcomputing.com>
  6. #
  7. # This file is part of PyQt6.
  8. #
  9. # This file may be used under the terms of the GNU General Public License
  10. # version 3.0 as published by the Free Software Foundation and appearing in
  11. # the file LICENSE included in the packaging of this file. Please review the
  12. # following information to ensure the GNU General Public License version 3.0
  13. # requirements will be met: http://www.gnu.org/copyleft/gpl.html.
  14. #
  15. # If you do not wish to use this file under the terms of the GPL version 3.0
  16. # then you may purchase a commercial license. For more information contact
  17. # info@riverbankcomputing.com.
  18. #
  19. # This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
  20. # WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  21. import collections, re, typing, enum
  22. try:
  23. from warnings import deprecated
  24. except ImportError:
  25. pass
  26. import PyQt6.sip
  27. from PyQt6 import QtCore
  28. from PyQt6 import QtGui
  29. # Support for QDate, QDateTime and QTime.
  30. import datetime
  31. # Convenient type aliases.
  32. PYQT_SIGNAL = typing.Union[QtCore.pyqtSignal, QtCore.pyqtBoundSignal]
  33. PYQT_SLOT = typing.Union[collections.abc.Callable[..., Any], QtCore.pyqtBoundSignal]
  34. class QPdfBookmarkModel(QtCore.QAbstractItemModel):
  35. class Role(enum.IntEnum):
  36. Title = ... # type: QPdfBookmarkModel.Role
  37. Level = ... # type: QPdfBookmarkModel.Role
  38. Page = ... # type: QPdfBookmarkModel.Role
  39. Location = ... # type: QPdfBookmarkModel.Role
  40. Zoom = ... # type: QPdfBookmarkModel.Role
  41. def __init__(self, parent: QtCore.QObject|None) -> None: ...
  42. documentChanged: typing.ClassVar[QtCore.pyqtSignal]
  43. def roleNames(self) -> dict[int, QtCore.QByteArray]: ...
  44. def columnCount(self, parent: QtCore.QModelIndex = ...) -> int: ...
  45. def rowCount(self, parent: QtCore.QModelIndex = ...) -> int: ...
  46. def parent(self, index: QtCore.QModelIndex) -> QtCore.QModelIndex: ...
  47. def index(self, row: int, column: int, parent: QtCore.QModelIndex = ...) -> QtCore.QModelIndex: ...
  48. def data(self, index: QtCore.QModelIndex, role: int) -> typing.Any: ...
  49. def setDocument(self, document: 'QPdfDocument|None') -> None: ...
  50. def document(self) -> 'QPdfDocument|None': ...
  51. class QPdfDocument(QtCore.QObject):
  52. class PageModelRole(enum.IntEnum):
  53. Label = ... # type: QPdfDocument.PageModelRole
  54. PointSize = ... # type: QPdfDocument.PageModelRole
  55. class MetaDataField(enum.Enum):
  56. Title = ... # type: QPdfDocument.MetaDataField
  57. Subject = ... # type: QPdfDocument.MetaDataField
  58. Author = ... # type: QPdfDocument.MetaDataField
  59. Keywords = ... # type: QPdfDocument.MetaDataField
  60. Producer = ... # type: QPdfDocument.MetaDataField
  61. Creator = ... # type: QPdfDocument.MetaDataField
  62. CreationDate = ... # type: QPdfDocument.MetaDataField
  63. ModificationDate = ... # type: QPdfDocument.MetaDataField
  64. class Error(enum.Enum):
  65. None_ = ... # type: QPdfDocument.Error
  66. Unknown = ... # type: QPdfDocument.Error
  67. DataNotYetAvailable = ... # type: QPdfDocument.Error
  68. FileNotFound = ... # type: QPdfDocument.Error
  69. InvalidFileFormat = ... # type: QPdfDocument.Error
  70. IncorrectPassword = ... # type: QPdfDocument.Error
  71. UnsupportedSecurityScheme = ... # type: QPdfDocument.Error
  72. class Status(enum.Enum):
  73. Null = ... # type: QPdfDocument.Status
  74. Loading = ... # type: QPdfDocument.Status
  75. Ready = ... # type: QPdfDocument.Status
  76. Unloading = ... # type: QPdfDocument.Status
  77. Error = ... # type: QPdfDocument.Status
  78. def __init__(self, parent: QtCore.QObject|None) -> None: ...
  79. pageModelChanged: typing.ClassVar[QtCore.pyqtSignal]
  80. pageCountChanged: typing.ClassVar[QtCore.pyqtSignal]
  81. statusChanged: typing.ClassVar[QtCore.pyqtSignal]
  82. passwordChanged: typing.ClassVar[QtCore.pyqtSignal]
  83. def pageIndexForLabel(self, label: str|None) -> int: ...
  84. def getAllText(self, page: int) -> 'QPdfSelection': ...
  85. def getSelectionAtIndex(self, page: int, startIndex: int, maxLength: int) -> 'QPdfSelection': ...
  86. def getSelection(self, page: int, start: QtCore.QPointF, end: QtCore.QPointF) -> 'QPdfSelection': ...
  87. def render(self, page: int, imageSize: QtCore.QSize, options: 'QPdfDocumentRenderOptions' = ...) -> QtGui.QImage: ...
  88. def pageModel(self) -> QtCore.QAbstractListModel|None: ...
  89. def pageLabel(self, page: int) -> str: ...
  90. def pagePointSize(self, page: int) -> QtCore.QSizeF: ...
  91. def pageCount(self) -> int: ...
  92. def close(self) -> None: ...
  93. def error(self) -> 'QPdfDocument.Error': ...
  94. def metaData(self, field: 'QPdfDocument.MetaDataField') -> typing.Any: ...
  95. def password(self) -> str: ...
  96. def setPassword(self, password: str|None) -> None: ...
  97. def status(self) -> 'QPdfDocument.Status': ...
  98. @typing.overload
  99. def load(self, fileName: str|None) -> 'QPdfDocument.Error': ...
  100. @typing.overload
  101. def load(self, device: QtCore.QIODevice|None) -> None: ...
  102. class QPdfDocumentRenderOptions(PyQt6.sip.simplewrapper):
  103. class RenderFlag(enum.Enum):
  104. None_ = ... # type: QPdfDocumentRenderOptions.RenderFlag
  105. Annotations = ... # type: QPdfDocumentRenderOptions.RenderFlag
  106. OptimizedForLcd = ... # type: QPdfDocumentRenderOptions.RenderFlag
  107. Grayscale = ... # type: QPdfDocumentRenderOptions.RenderFlag
  108. ForceHalftone = ... # type: QPdfDocumentRenderOptions.RenderFlag
  109. TextAliased = ... # type: QPdfDocumentRenderOptions.RenderFlag
  110. ImageAliased = ... # type: QPdfDocumentRenderOptions.RenderFlag
  111. PathAliased = ... # type: QPdfDocumentRenderOptions.RenderFlag
  112. class Rotation(enum.Enum):
  113. None_ = ... # type: QPdfDocumentRenderOptions.Rotation
  114. Clockwise90 = ... # type: QPdfDocumentRenderOptions.Rotation
  115. Clockwise180 = ... # type: QPdfDocumentRenderOptions.Rotation
  116. Clockwise270 = ... # type: QPdfDocumentRenderOptions.Rotation
  117. @typing.overload
  118. def __init__(self) -> None: ...
  119. @typing.overload
  120. def __init__(self, a0: 'QPdfDocumentRenderOptions') -> None: ...
  121. def __eq__(self, other: object): ...
  122. def __ne__(self, other: object): ...
  123. def setScaledSize(self, s: QtCore.QSize) -> None: ...
  124. def scaledSize(self) -> QtCore.QSize: ...
  125. def setScaledClipRect(self, r: QtCore.QRect) -> None: ...
  126. def scaledClipRect(self) -> QtCore.QRect: ...
  127. def setRenderFlags(self, r: 'QPdfDocumentRenderOptions.RenderFlag') -> None: ...
  128. def renderFlags(self) -> 'QPdfDocumentRenderOptions.RenderFlag': ...
  129. def setRotation(self, r: 'QPdfDocumentRenderOptions.Rotation') -> None: ...
  130. def rotation(self) -> 'QPdfDocumentRenderOptions.Rotation': ...
  131. class QPdfLink(PyQt6.sip.simplewrapper):
  132. @typing.overload
  133. def __init__(self) -> None: ...
  134. @typing.overload
  135. def __init__(self, other: 'QPdfLink') -> None: ...
  136. def copyToClipboard(self, mode: QtGui.QClipboard.Mode = ...) -> None: ...
  137. def toString(self) -> str: ...
  138. def rectangles(self) -> list[QtCore.QRectF]: ...
  139. def contextAfter(self) -> str: ...
  140. def contextBefore(self) -> str: ...
  141. def url(self) -> QtCore.QUrl: ...
  142. def zoom(self) -> float: ...
  143. def location(self) -> QtCore.QPointF: ...
  144. def page(self) -> int: ...
  145. def isValid(self) -> bool: ...
  146. def swap(self, other: 'QPdfLink') -> None: ...
  147. class QPdfLinkModel(QtCore.QAbstractListModel):
  148. class Role(enum.Enum):
  149. Link = ... # type: QPdfLinkModel.Role
  150. Rectangle = ... # type: QPdfLinkModel.Role
  151. Url = ... # type: QPdfLinkModel.Role
  152. Page = ... # type: QPdfLinkModel.Role
  153. Location = ... # type: QPdfLinkModel.Role
  154. Zoom = ... # type: QPdfLinkModel.Role
  155. def __init__(self, parent: QtCore.QObject|None = ...) -> None: ...
  156. pageChanged: typing.ClassVar[QtCore.pyqtSignal]
  157. documentChanged: typing.ClassVar[QtCore.pyqtSignal]
  158. def setPage(self, page: int) -> None: ...
  159. def setDocument(self, document: QPdfDocument|None) -> None: ...
  160. def linkAt(self, point: QtCore.QPointF) -> QPdfLink: ...
  161. def page(self) -> int: ...
  162. def data(self, index: QtCore.QModelIndex, role: int) -> typing.Any: ...
  163. def rowCount(self, parent: QtCore.QModelIndex) -> int: ...
  164. def roleNames(self) -> dict[int, QtCore.QByteArray]: ...
  165. def document(self) -> QPdfDocument|None: ...
  166. class QPdfPageNavigator(QtCore.QObject):
  167. def __init__(self, parent: QtCore.QObject|None) -> None: ...
  168. jumped: typing.ClassVar[QtCore.pyqtSignal]
  169. forwardAvailableChanged: typing.ClassVar[QtCore.pyqtSignal]
  170. backAvailableChanged: typing.ClassVar[QtCore.pyqtSignal]
  171. currentZoomChanged: typing.ClassVar[QtCore.pyqtSignal]
  172. currentLocationChanged: typing.ClassVar[QtCore.pyqtSignal]
  173. currentPageChanged: typing.ClassVar[QtCore.pyqtSignal]
  174. def back(self) -> None: ...
  175. def forward(self) -> None: ...
  176. def update(self, page: int, location: QtCore.QPointF, zoom: float) -> None: ...
  177. @typing.overload
  178. def jump(self, destination: QPdfLink) -> None: ...
  179. @typing.overload
  180. def jump(self, page: int, location: QtCore.QPointF, zoom: float = ...) -> None: ...
  181. def clear(self) -> None: ...
  182. def forwardAvailable(self) -> bool: ...
  183. def backAvailable(self) -> bool: ...
  184. def currentZoom(self) -> float: ...
  185. def currentLocation(self) -> QtCore.QPointF: ...
  186. def currentPage(self) -> int: ...
  187. class QPdfPageRenderer(QtCore.QObject):
  188. class RenderMode(enum.Enum):
  189. MultiThreaded = ... # type: QPdfPageRenderer.RenderMode
  190. SingleThreaded = ... # type: QPdfPageRenderer.RenderMode
  191. def __init__(self, parent: QtCore.QObject|None) -> None: ...
  192. renderModeChanged: typing.ClassVar[QtCore.pyqtSignal]
  193. documentChanged: typing.ClassVar[QtCore.pyqtSignal]
  194. def requestPage(self, pageNumber: int, imageSize: QtCore.QSize, options: QPdfDocumentRenderOptions = ...) -> int: ...
  195. def setDocument(self, document: QPdfDocument|None) -> None: ...
  196. def document(self) -> QPdfDocument|None: ...
  197. def setRenderMode(self, mode: 'QPdfPageRenderer.RenderMode') -> None: ...
  198. def renderMode(self) -> 'QPdfPageRenderer.RenderMode': ...
  199. class QPdfSearchModel(QtCore.QAbstractListModel):
  200. class Role(enum.IntEnum):
  201. Page = ... # type: QPdfSearchModel.Role
  202. IndexOnPage = ... # type: QPdfSearchModel.Role
  203. Location = ... # type: QPdfSearchModel.Role
  204. ContextBefore = ... # type: QPdfSearchModel.Role
  205. ContextAfter = ... # type: QPdfSearchModel.Role
  206. def __init__(self, parent: QtCore.QObject|None) -> None: ...
  207. countChanged: typing.ClassVar[QtCore.pyqtSignal]
  208. def __len__(self) -> int: ...
  209. def count(self) -> int: ...
  210. def timerEvent(self, event: QtCore.QTimerEvent|None) -> None: ...
  211. searchStringChanged: typing.ClassVar[QtCore.pyqtSignal]
  212. documentChanged: typing.ClassVar[QtCore.pyqtSignal]
  213. def setDocument(self, document: QPdfDocument|None) -> None: ...
  214. def setSearchString(self, searchString: str|None) -> None: ...
  215. def data(self, index: QtCore.QModelIndex, role: int) -> typing.Any: ...
  216. def rowCount(self, parent: QtCore.QModelIndex) -> int: ...
  217. def roleNames(self) -> dict[int, QtCore.QByteArray]: ...
  218. def searchString(self) -> str: ...
  219. def document(self) -> QPdfDocument|None: ...
  220. def resultAtIndex(self, index: int) -> QPdfLink: ...
  221. def resultsOnPage(self, page: int) -> list[QPdfLink]: ...
  222. class QPdfSelection(PyQt6.sip.simplewrapper):
  223. def __init__(self, other: 'QPdfSelection') -> None: ...
  224. def copyToClipboard(self, mode: QtGui.QClipboard.Mode = ...) -> None: ...
  225. def endIndex(self) -> int: ...
  226. def startIndex(self) -> int: ...
  227. def boundingRectangle(self) -> QtCore.QRectF: ...
  228. def text(self) -> str: ...
  229. def bounds(self) -> list[QtGui.QPolygonF]: ...
  230. def isValid(self) -> bool: ...
  231. def swap(self, other: 'QPdfSelection') -> None: ...