Some test text!

menu
search

C++

Welcome to PDFTron. This guide will help you run PDFTron samples and integrate PDFTron SDK into C++ applications on Windows.

linkPrerequisites

  1. Visual Studio

    Make sure that the Desktop development with C++ workload and Windows 8.1 SDK are part of your installation.

    This guide will use Visual Studio 2017.

    The Troubleshooting section has information about other versions.

  2. PDFTron SDK for Windows (64-bit or 32-bit).

linkSetup

Extract the folder from the .zip file.

This article uses PDFNET_BASE as the path into the PDFNetDotNet4 folder that you extracted.

PDFNET_BASE = path/to/extraction/folder/PDFNetC(64)/

linkRun Samples

Navigate to the location of extracted contents. Find and enter the Samples folder (PDFNET_BASE/Samples). Here you can find sample code for a large number of features supported by the PDFTron SDK.

Find Samples_VC20XX.sln inside the Samples folder and open it with Visual Studio. Choose the appropriate solution based on your Visual Studio installation.

Running all samples

Make sure that the target type for the debugger is set to the right type for your machine and your PDFTron SDK Download. Click on Local Windows Debugger to run all the samples.

Running a single sample

  1. Find the sample you want to run and set it as the Startup project.

    If you're running into issues, see the Troubleshooting section.

  2. Run the project.

Right Machine Type and Run

If you prefer using command line to compile and run code, have a look at the Advanced section.

linkIntegrate PDFTron into your C++ application

This section will help you build the "PDFTron Hello World" application. It is easy to integrate the rest of PDFTron SDK if you are able to open, save and close a PDFDoc.

Before writing the application, some dependencies needed to be with Visual Studio.

  1. Create a new C++ Console Project for Windows called myapp.
  2. Add PDFNET_BASE\Lib\PDFNetC.lib to the project's Additional Dependencies in the Linker Input settings.
  3. Add PDFNET_BASE\Headers to the project's Additional Include Directories in the C/C++ General Settings.
  4. Copy the PDFNET_BASE\Lib\PDFNetC.dll file to the project's output directory. Verify that the right version of PDFNetC.dll was added from the path used to add the reference.

The Troubleshooting section has more detailed instructions for newcomers to Visual Studio.

linkThe Code

Replace the contents of myapp.cpp with:

#include <iostream>

 // Important for PDF related manipulations
 #include <PDF/PDFNet.h>
 #include <PDF/PDFDoc.h>

 // Important for document filesystem interaction and more
 #include <SDF/ObjSet.h>

 using namespace pdftron;
 using namespace PDF;
 using namespace SDF;


 int main()
 {
     try
     {
         // This is required before any PDFTron related 
         // classes and methods can be properly used
         PDFNet::Initialize();

         PDFDoc doc;

         // Create a new page and push it into
         // the page sequence of the document.
         Page page = doc.PageCreate();
         doc.PagePushBack(page);

         // Save the document as a linearized PDF which is the most
         // popular and effective fast viewing format
         doc.Save("linearized_output.pdf", SDFDoc::e_linearized);
     }
     catch (pdftron::Common::Exception& ex)
     {
         std::cout << ex.GetMessage() << std::endl;
     }
     return 0;
 }

You can use the Local Windows Debugger button to build the solution and run the main function.

Once the code has been run, you can find a new document called linearized_output.pdf in the output directory of your project.

You can learn about and add more features by reading our guides, samples and API.

linkAdvanced

Run samples manually

Using Batch Files and Command Prompt

  1. Navigate into the folder for any sample that you like (PDFNET_BASE/Samples/X).
  2. Create a new file inside the CPP folder called RunTest.bat. Paste the following code in it (replace X with the name of the Test folder):

    @echo off
    setlocal
    REM Replace X with the name of the Test folder, Ex. FDFTest
    set TEST_NAME=X
    if not exist PDFNetC.dll copy "%cd%\..\..\..\Lib\PDFNetC.dll" PDFNetC.dll
    cl /EHsc /I"../../../Headers" ../../../Lib/PDFNetC.lib %TEST_NAME%.cpp
    %TEST_NAME%.exe
    endlocal
    PAUSE

    Save the file.

  3. Open the Windows Start Menu and in Apps, scroll down and find the Visual Studio 2019 folder (not application). Expand it and click on Developer Command Prompt for Visual Studio 2017. Navigate to the test folder on your system.
  4. Use the following to compile, build and run the test:

    RunTest.bat

linkTroubleshooting

Older versions of Visual Studio
Find out more about the versions we support.

Setting a startup project
Find out how to set a startup project

Trouble Setting dependencies
Set dependencies for the SDK with a step by step guide taking you through it.

Get the answers you need: Support

close

Free Trial

Get unlimited trial usage of PDFTron SDK to bring accurate, reliable, and fast document processing capabilities to any application or workflow.

Select a platform to get started with your free trial.

Unlimited usage. No email address required.

PDFTron Receives USD$71 Million Growth Investment Led By Silversmith Capital Partners

Learn more
close