This project hosts pre-compiled binaries of the PDFium library.
See Releases page to download binaries.
Here are the download links for latest release:
OS | CPU | PDFium |
---|---|---|
Android | ARM | pdfium-android-arm.tgz |
ARM64 | pdfium-android-arm64.tgz | |
x64 | pdfium-android-x64.tgz | |
x86 | pdfium-android-x86.tgz | |
iOS | ARM64 | pdfium-ios-arm64.tgz |
x64 | pdfium-ios-x64.tgz | |
Linux | ARM | pdfium-linux-arm.tgz |
ARM64 | pdfium-linux-arm64.tgz | |
x64 | pdfium-linux-x64.tgz | |
macOS | ARM64 | pdfium-mac-arm64.tgz |
x64 | pdfium-mac-x64.tgz | |
Windows | ARM64 | pdfium-win-arm64.tgz |
x64 | pdfium-win-x64.tgz | |
x86 | pdfium-win-x86.tgz |
-
Unzip one of more variants in a folder (eg
C:\Libraries\pdfium
) -
Set the environment variable
PDFium_DIR
to this folder (egC:\Libraries\pdfium
) -
In your
CMakeLists.txt
, addfind_package(PDFium)
-
Then link you executable with PDFium:
target_link_libraries(my_exe pdfium)
-
On Windows, make sure that
pdfium.dll
can be found by your executable.
If you are using the V8 enabled binaries additional initialization is required.
In your code before using PDFium you have to call FPDF_InitEmbeddedLibraries()
from the additional header fpdf_libs.h
which is only available in V8 enabled
binaries.
The archive will contain a res
folder which you have to distribute with your
application. On macOS you should include this in your application bundle for other
platforms place it where your application binary will find it.
See the following example for usage:
#include "fpdf_libs.h"
...
// Determine the path to files in the res folder from the archive
const char* resPath = "<path to the res folder>";
// Initialize V8 and other embedded libraries
FPDF_InitEmbeddedLibraries(resPath);
// Make use of PDFium
FPDF_InitLibrary();
FPDF_DestroyLibrary();
To create a universial macOS binary containing both Intel and ARM code download
both CPU versions and use the mac_create_universal.sh
script to create a
universal archive.
This project isn't affilated with Google nor Foxit.