Skip to main content

Aspose.PDF for Python is a PDF Processing library to perform document management can easily be used to generate, modify, convert, render, secure and print documents without using Adobe Acrobat.

Project description

Product Page | Documentation | Demos | Blog | API Reference | Search | Free Support | Temporary License

Try our Free Online Apps demonstrating some of the most popular Aspose.PDF functionality.

Aspose.PDF for Python is a native library that enables the developers to add PDF processing capabilities to their applications. It can be used to generate or read, convert and manipulate PDF files without the use of Adobe Acrobat. Aspose.PDF for Python allows to perform a range of document processing tasks such as form processing, get and set metadata information, text and page manipulation, management of annotations, add or remove bookmarks and watermarks, attachments, custom font handling and much more. Check out the Landing Pages of Aspose.PDF for Python for a more detailed description of the features and possibilities of the library.

General PDF Features

  • Supports most established PDF standards and PDF specifications.
  • Ability to read & export PDFs in multiple image formats including BMP, GIF, JPEG & PNG.
  • Set basic information (e.g. author, creator) of the PDF document.
  • Configure PDF Page properties (e.g. width, height, cropbox, bleedbox etc.).
  • Set page numbering, bookmark level, page sizes etc.
  • Ability to work with text, paragraphs, headings, hyperlinks, graphs, attachments etc.

Supported PDF versions

Aspose.PDF for Python supports PDF versions 1.2, 1.3, 1.4, 1.5, 1.6, 1.7 and 2.0.

Conversion Features

Aspose.PDF for Python library allows you to successfully, quickly and easily convert your PDF documents to the most popular formats and vice versa.

  • Convert PDF to Word, Excel, and PowerPoint.
  • Convert PDF to Images formats.
  • Convert PDF file to HTML format and vice versa.
  • Convert PDF to EPUB, Text, XPS, etc.
  • Convert EPUB, Markdown, Text, XPS, PostScript, XML, LaTex to PDF.

Package Features

  • Add, search, extract and replace text in PDF files.
  • Add/delete, extract and replace images.
  • Insert, delete, split PDF pages.
  • Set and get XMP metadata.
  • Validate (PDF/A-1a, PDF/A-1b).
  • Work with bookmarks, annotations, PDF forms, stamps, watermarks and more.

Supported File Formats

The following table indicates the file formats that Aspose.PDF for Python can load and Save.

Format Description Load Save Remarks
PDF Portable Document Format Yes Yes   
CGM Computer Graphics Metafile for 2D vector graphics Yes No  
EPUB Ebook file format Yes Yes  
HTML HTML Format Yes Yes  
TeX LaTex typesetting file format Yes Yes  
MHT MHTML Document Yes No  
PCL Printer Control Language Files Yes No  
PS Postscript Files Yes No  
SVG Scalable Vector Graphics (An XML-based vector image format) Yes Yes  
XML XML Format Yes Yes  
XPS XPS Documents Yes Yes  
XSLFO XSL-FO is part of XSL file which is used for the transformation and formatting of XML data Yes No  
MD Markdown Format Yes No  
XLS Saves the document in the Microsoft Excel SpreadSheet No Yes  
XLSX Saves the document in the Microsoft Excel 2007 format No Yes  
PPTX Saves the document in the Microsoft PowerPoint Presentations format No Yes  
DOC Saves the document in the Microsoft Word format No Yes  
DOCX Saves the document in the Microsoft Word format No Yes  
MobiXML Saves the document in eBook MobiXML Standard format No Yes  
JPEG Saves the document in JPEG Format Yes Yes  
EMF Enhanced metafile format (EMF) Yes Yes  
PNG Saves the document in PNG Format Yes Yes  
BMP Saves the document in BMP Format Yes Yes  
GIF Graphic Interchange Format No Yes  
TIFF Saves the document as Single or Multi-Page TIFF Image Yes Yes  
Text Save the document int Text Format Yes Yes  

Platform Independence

Aspose.PDF for Python can be used to develop 32-bit and 64-bit Python applications for different operating systems (such as Windows and Linux) where Python 3.5 or later is installed.

Get Started

Run pip install aspose-pdf to fetch the package. If you already have Aspose.PDF for Python and want to get the latest version, please run pip install --upgrade aspose-pdf.

To learn more about Aspose.PDF for Python and explore the basic requirements and features of the library, check out the following Aspose.PDF for Python Documentation pages for other use cases.

Create a PDF file from scratch in Python

In the next code snippet, we are creating a PDF document fron scratch containing the text “Hello World!”. After installing Aspose.PDF for Python in your environment, you can execute below code sample to see how Aspose.PDF API works.

Below code snippet follows these steps:

  1. Instantiate a Document object.
  2. Add a Page to the document object.
  3. Create a TextFragment object.
  4. Add TextFragment to Paragraph collection of the page.
  5. Save the resultant PDF document.

The following code snippet is a “Hello, World!” program to exhibit working of Aspose.PDF for Python API:

import aspose.pdf as ap

# Initialize document object
document = ap.Document()
# Add page
page = document.pages.add()
# Initialize textfragment object
text_fragment = ap.text.TextFragment("Hello,world!")
# Add text fragment to new page
page.paragraphs.add(text_fragment)
# Save updated PDF
document.save("output.pdf")

Example of converting HTML to PDF

Aspose.PDF for Python is a PDF manipulation API that lets you convert any existing HTML documents to PDF format. The process of converting HTML to PDF can be flexibly customized.

Below code snippet follows these steps:

  1. Create an instance of the HtmlLoadOptions object.
  2. Initialize Document object.
  3. Save output PDF document by calling Document.Save() method.
import aspose.pdf as ap
# Instantiate an object of HtmlLoadOptions
options = ap.HtmlLoadOptions()
# Convert HTML to PDF
document = ap.Document("input.html", options)
# Save PDF
document.save("output.pdf")

Example of converting PDF to SVG

Aspose.PDF for Python supports the feature to convert SVG image to PDF format. To accomplish this requirement, the SvgSaveOptions class has been introduced into the Aspose.PDF namespace. Instantiate an object of SvgSaveOptions and pass it as a second argument to the Document.Save(..) method.

Below code snippet follows these steps:

  1. Create an object of the Document class.
  2. Create SvgSaveOptions object with needed settings.
  3. Call the Document.Save() method and pass it SvgSaveOptions object convert the PDF document to SVG.
import aspose.pdf as ap

# Open PDF document
document = ap.Document("input.pdf")

# Instantiate an object of SvgSaveOptions
saveOptions = ap.SvgSaveOptions()

# Do not compress SVG image to Zip archive
saveOptions.compress_output_to_zip_archive = False
saveOptions.treat_target_file_name_as_directory = True

# Save the output in SVG files
document.save("output.svg", saveOptions)

Merge PDF Files

Merge multiple PDF into single file in Python with Aspose.PDF programmatically. PDF files are merged such that the first one is joined at the end of the other document.

Below code snippet follows these steps:

  1. Open first document.
  2. Open second document.
  3. Add pages of second document to the first.
  4. Save concatenated output file.
import aspose.pdf as ap

# Open first document
document1 = ap.Document("input_1.pdf")
# Open second document
document2 = ap.Document("input_2.pdf")

# Add pages of second document to the first
document1.pages.add(document2.pages)

# Save concatenated output file
document1.save("output.pdf")

Print PDF to XPS printer

You can print a PDF file to an XPS printer, or some other soft printer for that matter, using the PdfViewer class.

Below code snippet follows these steps:

  1. Create an object of the PdfViewer class.
  2. Open the PDF file using the bind_pdf method.
  3. Set different print settings using the PrinterSettings and PageSettings classes.
  4. Set the printer_name property to the XPS or other printer.
  5. Print document using the print_document_with_settings method.
import aspose.pdf as ap
import aspose.pydrawing as drawing

# Create PdfViewer object
viewer = ap.facades.PdfViewer()

# Open input PDF file
viewer.bind_pdf("input.pdf")

# Set attributes for printing
# Print the file with adjusted size
viewer.auto_resize = True
# Print the file with adjusted rotation
viewer.auto_rotate = True
# Do not produce the page number dialog when printing
viewer.print_page_dialog = False

# Create objects for printer and page settings
ps = drawing.printing.PrinterSettings()
pgs = drawing.printing.PageSettings()

# Set XPS/PDF printer name
ps.printer_name = "Microsoft XPS Document Writer"
# Or set the PDF printer
# ps.printer_name = "Adobe PDF"

# Set PageSize(if required)
pgs.paper_size = drawing.printing.PaperSize("A4", 827, 1169)

# Set PageMargins(if required)
pgs.margins = drawing.printing.Margins(0, 0, 0, 0)

# Print document using printer and page settings
viewer.print_document_with_settings(pgs, ps)

# Close the PDF file after printing
viewer.close()

Product Page | Documentation | Demos | Blog | API Reference | Search | Free Support | Temporary License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

aspose_pdf-22.11.0-py3-none-win_amd64.whl (74.8 MB view hashes)

Uploaded Python 3 Windows x86-64

aspose_pdf-22.11.0-py3-none-win32.whl (69.3 MB view hashes)

Uploaded Python 3 Windows x86

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page