Convert Text and Text File to PDF using Python

25 May, 2022
PDFs are one of the most important and widely used digital media. PDF stands for Portable Document Format. It uses .pdf extension. It is used to present and exchange documents reliably, independent of software, hardware, or operating system. Converting a given text or a text file to PDF (Portable Document Format) is one of the basic requirements in various projects that we do in real life. So, if you don’t know how to convert a given text to PDF then this article is for you. In this article, you will come to know the way to convert text and text file to PDF in Python. FPDF is a Python class that allows generating PDF files with Python code. It is free to use and it does not require any API keys. FPDF stands for Free PDF. It means that any kind of modification can be done in PDF files. The main features of this class are:
Easy to use
It allows page format and margin
It allows to manage page header and footer
Python 2.5 to 3.7 support
Unicode (UTF-8) TrueType font subset embedding
Barcode I2of5 and code39, QR code coming soon ...
PNG, GIF and JPG support (including transparency and alpha channel)
Templates with a visual designer & basic html2pdf
Exceptions support, other minor fixes, improvements and PEP8 code cleanups
To install the fpdf module type the below command in the terminal.
pip install fpdf
Approach:
Import the class FPDF from module fpdfAdd a pageSet the fontInsert a cell and provide the textSave the pdf with “.pdf” extension
Import the class FPDF from module fpdf
Add a page
Set the font
Insert a cell and provide the text
Save the pdf with “.pdf” extension
Example: 
Python3
# Python program to create# a pdf file  from fpdf import FPDF  # save FPDF() class into a# variable pdfpdf = FPDF() # Add a pagepdf.add_page() # set style and size of font# that you want in the pdfpdf.set_font("Arial", size = 15) # create a cellpdf.cell(200, 10, txt = "GeeksforGeeks",         ln = 1, align = 'C') # add another cellpdf.cell(200, 10, txt = "A Computer Science portal for geeks.",         ln = 2, align = 'C') # save the pdf with name .pdfpdf.output("GFG.pdf")  
Output: 
Now if we want to make the above program more advance what we can do is that from a given text file extract the data using file handling and then insert it into the pdf file. The approach is all same as above, one thing you have to do is extract the data from a text file using file handling. Note: Refer this article to know more about file handling in Python. Example: Let’s suppose the text file looks like this –  
Python3
# Python program to convert# text file to pdf file  from fpdf import FPDF  # save FPDF() class into# a variable pdfpdf = FPDF()    # Add a pagepdf.add_page()  # set style and size of font# that you want in the pdfpdf.set_font("Arial", size = 15) # open the text file in read modef = open("myfile.txt", "r") # insert the texts in pdffor x in f:    pdf.cell(200, 10, txt = x, ln = 1, align = 'C')  # save the pdf with name .pdfpdf.output("mygfg.pdf")  
Output: 
prachisoda1234
vinayedula
python-utility
Python
Technical Scripter
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Python Dictionary
Different ways to create Pandas Dataframe
Enumerate() in Python
Read a file line by line in Python
How to Install PIP on Windows ?
Python String | replace()
*args and **kwargs in Python
Python Classes and Objects
Python OOPs Concepts
Iterate over a list in Python