Python Forum
[PyQt] [solved] How to display a pdf-file in a PyQt6 widget
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[PyQt] [solved] How to display a pdf-file in a PyQt6 widget
#10
wd = path.dirname(sys.argv[0])

should be

wd = path.dirname(path.abspath(sys.argv[0]))

from PyQt6.QtCore import QUrl
from PyQt6.QtWidgets import QApplication, QMainWindow, QWidget
from PyQt6.QtWebEngineWidgets import QWebEngineView #, QWebEngineSettings
from os import path
 
class MainWindow(QMainWindow):
    def __init__(self):
        super(QMainWindow, self).__init__()
 
        self.setWindowTitle("PDF Viewer")
        self.setGeometry(0, 28, 1000, 750)
 
        self.webView = QWebEngineView()
        self.webView.settings().setAttribute(self.webView.settings().WebAttribute.PluginsEnabled, True)
        self.webView.settings().setAttribute(self.webView.settings().WebAttribute.PdfViewerEnabled, True)
        self.setCentralWidget(self.webView)
 
    def url_changed(self):
        self.setWindowTitle(self.webView.title())
 
    def go_back(self):
        self.webView.back()
 
if __name__ == '__main__':
 
    import sys
    app = QApplication(sys.argv)
    win = MainWindow()
    win.show()
    if len(sys.argv) > 1:
        win.webView.setUrl(QUrl(f"file://{sys.argv[1]}"))
    else:
        wd = path.dirname(path.abspath(sys.argv[0]))
        print(f"wd: {wd}")
        test_pdf = "test.pdf"
        win.webView.setUrl(QUrl(f"file://{wd}/{test_pdf}"))
    sys.exit(app.exec())
Reply


Messages In This Thread
RE: [solved] How to display a pdf-file in a PyQt6 widget - by Axel_Erfurt - May-07-2022, 07:28 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  [PyQt] Saving file to html or pdf stopped working in PyQt6 ejKDE 4 921 Mar-12-2024, 07:45 PM
Last Post: ejKDE
  event driven coding PyQt6 on Combobox change merrittr 3 2,287 May-03-2023, 03:35 AM
Last Post: merrittr
Question [PyQt] Application desktop toolbar with PyQt6 bunz 4 1,680 Mar-09-2023, 08:09 PM
Last Post: bunz
  PyQt6 QAction with icon and string malonn 2 1,851 Sep-12-2022, 11:59 AM
Last Post: malonn
  [PyQt] [Solved]Display PyQtTable results from A->Z & Z->A Extra 2 1,252 Jul-18-2022, 04:04 PM
Last Post: Extra
  [PyQt] [Solved]Display Search Results in QTable Extra 5 2,628 Jun-29-2022, 10:20 PM
Last Post: Extra
  [PyQt] Embed Google Maps in PyQt6 Widget Raures 2 3,283 Sep-11-2021, 04:32 PM
Last Post: Raures
  [PyQt] Collect entry from textline Widget via UI file mart79 3 3,028 Aug-05-2019, 01:40 PM
Last Post: Denni
  Display and update the label text which display the serial value jenkins43 5 9,246 Feb-04-2019, 04:36 AM
Last Post: Larz60+
  Display more than one button in GUI to display MPU6000 Sensor readings barry76 4 4,035 Jan-05-2019, 01:48 PM
Last Post: wuf

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020