Get started with Python
This guide walks you through the steps to use the Pdftools SDK in a code example with Python. The Python interface wraps the Pdftools SDK C API.
Try the Pdftools SDK without a license key.
Prerequisites
The Pdftools SDK for Python requires Python 3.6 or higher.
Get started with a sample project
Learn how to use the Pdftools SDK using a Python code example. The Pdf2ImgSimple example converts a PDF file to an image. Use similar steps to run any other code example from the sdk-examples-python repository.
Clone and run the sample
-
Clone the sdk-examples-python repository:
git clone https://github.com/pdf-tools/sdk-examples-python.git -
Navigate to the
Pdf2ImgSimplecode example:cd sdk-examples-python/Pdf2ImgSimple -
Install the Pdftools SDK package:
pip install pdftools_sdk -
To render the sample PDF file
PdfPrimerWhitePaper.pdfto a multi-page TIFF image format, run:python ./pdf2_img_simple.py PdfPrimerWhitePaper.pdf PdfPrimerWhitePaper.tiff
Run python3 instead on systems where only Python 3 is installed and python is not aliased.
The code example takes:
- The input and output files are represented as a file name or a file path with the file name.
- Both file paths (input and output) can be relative or absolute.
Compare the command syntax with a placeholder to the previous procedure:
python ./pdf2_img_simple.py INPUT_PDF IMAGE_OUTPUT_PATH
The sample runs without a license key, and the output carries a watermark. To remove the watermark, open pdf2_img_simple.py and uncomment the Sdk.initialize method call in the if __name__ == "__main__": block. Replace the "insert-license-key-here" placeholder with your license key. Include the less-than (<) and greater-than (>) signs.
Integrate the SDK into your application
Integrate and initialize the Pdftools SDK into your application.
Add the SDK to your project
-
Install the Python package:
pip install pdftools_sdk -
Clone the sdk-examples-python repository and navigate to any sample directory.
-
Review the
README.mdfile with usage details. Every code example includes aREADME.mdwith different usage instructions. -
Import the required packages in the header of your Python code:
from ctypes import *from pdftools_sdk.pdf import Documentfrom pdftools_sdk.pdf2_image import Converterfrom pdftools_sdk.pdf2_image.profiles import Archive
The imports depend on the Python sample you use. Imports displayed in the last step of the previous procedure are valid for the Convert PDF to image sample. Every sample includes a single Python file from which you can copy the imports. To use a different feature, copy the correct imports into your project:
- In the sdk-examples-python repository, navigate to a sample directory. For example:
sdk-examples-python/Decrypt. - Open the
decrypt.pyfile, and then copy its imports to the header of your Python code.
Optional: Initialize the SDK
Learn how to remove watermarked output of the Pdftools SDK using a valid license key.
Initialization removes watermarks from output files and readies the SDK for production. Without a license key, output files carry a watermark.
Contact the Pdftools sales team through the Contact page to get a full license. For more information, review the Pdftools SDK license management.
To remove watermarks, follow these steps:
-
Find your license key. For more information, review Find the license key.
-
Call
Sdk.initializeonce at application startup, before any other Pdftools SDK method call:Sdk.initialize("YOUR_LICENSE_KEY")Replace
YOUR_LICENSE_KEYwith your license key. Use the license key in the same format you copied it. Include the less-than (<) and greater-than (>) signs.
To get a working reference with the Sdk.initialize method, follow these steps:
- Clone the sdk-examples-python repository and navigate to a sample directory. For example,
sdk-examples-python/Pdf2ImgSimple. - Open the main Python file and find the commented-out
Sdk.initializecall. For example, the Pdf2ImgSimple Python sample includes it inpdf2_img_simple.py. - Uncomment the call and replace the
"insert-license-key-here"placeholder with your license key.
Implement your use case
- Find more use cases and code examples on the Code samples page.
- If you need to configure a proxy, review Configure proxy documentation section.