Skip to main content
Version: Version 1.7

Get started with C

This guide walks you through the steps to use a code example, and then explains how to integrate the Pdftools SDK into your application with the C programming language.

tip

Try the Pdftools SDK without a license key.

Getting started with a sample project​

Learn how to use the Pdftools SDK using a C 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-c repository.

Prerequisites​

This code example uses GCC toolset 4.8+ and CMake version 3.16 or higher.

Compile and run the sample​

  1. Clone the sdk-examples-c repository:

    git clone https://github.com/pdf-tools/sdk-examples-c.git
  2. Navigate to the Pdf2ImgSimple code example:

    cd sdk-examples-c/Pdf2ImgSimple
  3. Configure and build:

    cmake .
  4. Build the sample:

    cmake --build .
  5. The code example contains a PDF file PdfPrimerWhitePaper.pdf. To render it in multi-page TIFF image format, run:

    ./pdftoolspdf2imgsimple PdfPrimerWhitePaper.pdf PdfPrimerWhitePaper.tiff

The code example takes:

  • The input and output files 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
note

You can apply a similar procedure as described in this tutorial for other code examples. 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 next sections.

Add the SDK to your project​

  1. 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.

  2. Unzip the file on your machine into a local directory recommended for your operating system. For example:

    C:\Program Files\PDF Tools AG\

    Included subdirectories are:

    SubdirectoryDescription
    ~Contains important information in the README.md file.
    libRuntime executable binaries and runtime import libraries:
    win-x86\PdfToolsSdk.dll and win-x86\PdfToolsSdk.lib for 32-bit Windows
    win-x64\PdfToolsSdk.dll and win-x64\PdfToolsSdk.lib for 64-bit Windows
    includeHeader files to add to your C or C++ project. The main header PdfTools.h includes all the other headers.
  3. 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:

    Add the lib\win-x64 or lib\win-x86 subdirectory to the %PATH% environment variable.

Initialize the SDK​

tip

Try the Pdftools SDK without a license key.

Without a license key, output files carry a watermark. To remove the watermark, follow these steps:

  1. Copy your license key. For more information, review Find the license key.

  2. Find and uncomment the following function, and then replace the YOUR_LICENSE_KEY with the value of your license key:

    // GOTO_CLEANUP_IF_FALSE_PRINT_ERROR(PdfTools_Sdk_Initialize(_T("YOUR_LICENSE_KEY"), NULL),
    // _T("Failed to set the license key. %s (ErrorCode: 0x%08x).\n"), szErrorBuff,
    // PdfTools_GetLastError());

    Use the license key in the same format you copied it. Include the less-than (<) and greater-than (>) signs.

Try it without license key

Without a license key, output files carry a watermark. For more information, review Pdftools SDK license management. Without a valid license key, the output files carry a watermark. Contact the Pdftools sales team through the Contact page to get a full license.

Uninitialize the SDK​

After processing files with the Pdftools SDK, call PdfTools_Uninitialize to unload the library correctly:

// Uninitialize library
PdfTools_Uninitialize();

Implement your use case​

  • Find more use cases and code examples on the Code samples page.
  • For more technical information about the Pdftools SDK for C, consult the C technical notes.