Thursday, September 25, 2025
HomeLanguagesHow to add PDF in Tkinter GUI Python ?

How to add PDF in Tkinter GUI Python ?

In this article, We are going to see how to add a PDF file Tkinter GUI, For that, we don’t have a direct widget to do this. For that, We need to have python version 2.7 or more. And you need to install the ‘tkPDFViewer‘ library. This library allows you to embed the PDF file in your Tkinter GUI.

Installation:

To install this library you just have to type:

pip install tkPDFViewer

Approach:

  • Initialize tk and geometry of our GUI.
  • Import tkPDFViewer.
  • Make the object of Class ShowPdf() from tkPDFViewer.
  • Using pdf_view method from ShowPdf() to place our pdf.
  • Pack the pdf_view in GUI.

Arguments of method pdf_view:

Arguments Uses
pdf_location = “location of your PDF” To add your location of PDF.
width = 0  To set the width of PDF Frame.
height = 0 To set the height of the PDF Frame.
bar = True or False To hide or unhidden the loading bar.
load = after or before To decide that, when your pdf object is to convert.

Below is the implementation:

We are using this pdf for demonstration:

Code:

Python




# Importing tkinter to make gui in python
from tkinter import*
  
# Importing tkPDFViewer to place pdf file in gui.
# In tkPDFViewer library there is
# an tkPDFViewer module. That I have imported as pdf
from tkPDFViewer import tkPDFViewer as pdf
  
# Initializing tk
root = Tk()
  
# Set the width and height of our root window.
root.geometry("550x750")
  
# creating object of ShowPdf from tkPDFViewer.
v1 = pdf.ShowPdf()
  
# Adding pdf location and width and height.
v2 = v1.pdf_view(root,
                 pdf_location = r"location"
                 width = 50, height = 100)
  
# Placing Pdf in my gui.
v2.pack()
root.mainloop()


Output:

RELATED ARTICLES

Most Popular

Dominic
32319 POSTS0 COMMENTS
Milvus
84 POSTS0 COMMENTS
Nango Kala
6681 POSTS0 COMMENTS
Nicole Veronica
11854 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11910 POSTS0 COMMENTS
Shaida Kate Naidoo
6794 POSTS0 COMMENTS
Ted Musemwa
7070 POSTS0 COMMENTS
Thapelo Manthata
6753 POSTS0 COMMENTS
Umr Jansen
6761 POSTS0 COMMENTS