Simple PDF document viewer
This commit is contained in:
30
pdfView.py
Normal file
30
pdfView.py
Normal file
@@ -0,0 +1,30 @@
|
||||
from PySide6.QtCore import QFile
|
||||
from PySide6.QtWidgets import QDialog, QVBoxLayout, QWidget
|
||||
from PySide6.QtPdfWidgets import QPdfView
|
||||
from PySide6.QtPdf import QPdfDocument
|
||||
|
||||
class PDFViewer(QDialog):
|
||||
pdf_view: QPdfView
|
||||
pdf_document: QPdfDocument
|
||||
|
||||
def __init__(self, parent: QWidget) -> None:
|
||||
super(PDFViewer, self).__init__(parent)
|
||||
|
||||
self.pdf_view = QPdfView()
|
||||
self.pdf_view.setPageMode(QPdfView.PageMode.MultiPage)
|
||||
self.pdf_document = QPdfDocument()
|
||||
|
||||
layout = QVBoxLayout(self)
|
||||
layout.addWidget(self.pdf_view)
|
||||
self.setLayout(layout)
|
||||
return
|
||||
|
||||
def load_pdf(self, file: QFile) -> None:
|
||||
if not file.isOpen():
|
||||
file.open(file.OpenModeFlag.ReadOnly)
|
||||
self.pdf_document.load(file)
|
||||
self.pdf_view.setDocument(self.pdf_document)
|
||||
size = self.pdf_document.pagePointSize(1)
|
||||
self.resize(size.toSize())
|
||||
print(size)
|
||||
return
|
||||
Reference in New Issue
Block a user