Get started with C
This guide walks you through the steps to use a sample project, and then explains how to integrate the Pdftools SDK into your application with the C programming language.
Try the Pdftools SDK without a license key for free.
Getting started with a sample project
Learn how to use the Pdftools SDK using a C sample project and convert a PDF file to an image.
Prerequisites
This sample project uses GCC toolset 4.8+ and CMake version 3.16 or higher.
Compile and run the sample
-
Download a sample project, and then unzip the file.
-
In the command line, navigate to the root directory of the unzipped sample project and then run:
cmake .
-
Build the sample:
cmake --build .
-
The sample project contains a PDF file
PdfPrimerWhitePaper.pdf
. To render it in multi-page TIFF image format, run:./pdftoolspdf2imgsimple PdfPrimerWhitePaper.pdf PdfPrimerWhitePaper.tiff
The code sample 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.
Review the following snippet with a placeholder and compare it to the last step of the previous procedure:
./pdftoolspdf2imgsimple INPUT_FILE OUTPUT_FILE
You can apply a similar procedure described in this tutorial for other code samples. For more information, see Code samples page.
Integrate the SDK into your application
Integrate and initialize the Pdftools SDK into your application by following the instructions in the following sections.
Add the SDK to your project
-
Click the download link to get the latest version of the Pdftools SDK for C in a zip archive.
Optional: For older Linux distributions running glibc 2.12+, download the SDK from a separate download.
-
Unzip the file on your machine into a local directory recommended for your operating system. For example:
- Windows
- Linux
- macOS
C:\Program Files\PDF Tools AG\
Included subdirectories are:
Subdirectory Description ~
Contains important information in the README.md
file.lib
Runtime executable binaries and runtime import libraries: win-x86\PdfToolsSdk.dll
andwin-x86\PdfToolsSdk.lib
for 32-bit Windows.win-x64\PdfToolsSdk.dll
andwin-x64\PdfToolsSdk.lib
for 64-bit Windows.win-arm64\PdfToolsSdk.dll
andwin-arm64\PdfToolsSdk.lib
for 64-bit Windows ARM.
include
Header files to add to your C or C++ project. The main header PdfTools.h
includes all the other headers./opt/pdftools.com/
Included subdirectories are:
Subdirectory Description ~
Contains important information in the README.md
file.lib
Runtime executable binaries for all supported platforms: linux-x64/libPdfToolsSdk.so
for 64-bit Linuxinclude
Header files to add to your C or C++ project. The main header PdfTools.h
includes all the other headers./opt/pdftools.com/
Included subdirectories are:
Subdirectory Description ~
Contains important information in the README.md
file.lib
Runtime executable binaries:
osx-x64/libPdfToolsSdk.dylib
for 64-bit (Intel) macOS
osx-arm64/libPdfToolsSdk.dylib
for ARM (Apple Silicon) macOSinclude
Header files to add to your C or C++ project. The main header PdfTools.h
includes all the other headers. -
Optional: The native libraries must be available in your compiler's library path. This step is only required if your build process doesn't resolve it automatically:
- Windows
- Linux
- macOS
Add the
lib\win-x64
,lib\win-arm64
orlib\win-x86
subdirectory to the%PATH%
environment variable.Create a link to the shared library from one of the standard library directories, e.g:
ln -s /opt/pdf-tools.com/lib/linux-x64/libPdfToolsSdk.so /usr/lib
Create a link to the shared library from one of the standard library directories. For example (for an Intel processor Mac):
ln -s /opt/pdf-tools.com/lib/osx-x64/libPdfToolsSdk.dylib /usr/lib
Optional: Initialize the SDK
Learn how to remove watermarked output of the Pdftools SDK using a valid license key.
You can try the Pdftools SDK without a license key for free. This section is optional if you want to evaluate this SDK. Initialization only lets you remove watermarks added to output files.
Contact the Pdftools sales team through the Contact page to get a full license. For additional information, review Pdftools SDK license management.
To remove watermarks, follow these steps:
-
Locate your license key. For more information, review Find the license key.
-
Before you call any function of the Pdftools SDK, first call the
PdfTools_Sdk_Initialize
function.GOTO_CLEANUP_IF_FALSE_PRINT_ERROR(PdfTools_Sdk_Initialize(_T("insert-license-key-here"), NULL),
_T("Failed to set the license key. %s (ErrorCode: 0x%08x).\n"), szErrorBuff,
PdfTools_GetLastError());Replace the
insert-license-key-here
with the value of your license key. Include the less-than (<
) and greater-than (>
) signs.
To get a code sample with the PdfTools_Sdk_Initialize
function that you can use as a reference for your code, follow these steps:
- On the Code samples page, download and unzip a C code sample. For example: Download Convert PDF to image sample.
- Unzip the file, and then find the
PdfTools_Sdk_Initialize
function in the main C file of the sample. For example: Convert PDF to image sample includesPdfTools_Sdk_Initialize
function in thepdftoolspdf2imgsimple.c
file. - Uncomment the function and replace
insert-license-key-here
with your license key.
Uninitialize the SDK
After processing files with the Pdftools SDK, call the Uninitialize
function to unload the library correctly:
// Uninitialize library
PdfTools_Uninitialize();
Implement your use case
- Find more use cases and sample projects on the Code samples page.
- For more technical information about the Pdftools SDK for C, consult the C technical notes.