Skip to content

PDFium - Compile instructions and tools for all supported platforms

License

Notifications You must be signed in to change notification settings

rparthi-pdf/pdfium-lib

 
 

Repository files navigation

PDFium Library Logo

PDFium Library

PDFium - iOS PDFium - macOS PDFium - Android PDFium - WASM

Project to compile PDFium library to multiple platforms.


Platforms

This project currently compiles to these platforms:

  • iOS device (armv7, arm64)
  • iOS simulator (x86_64)
  • Android (armv7, armv8, x86, x86_64)
  • macOS (x86_64, arm64)
  • WASM (web assembly)

Platforms in roadmap:

  • Linux
  • Windows

Obs: PDFium project is from Google and i only patch it to compile to all platforms above. Check all oficial details and PDFium license here:

https://pdfium.googlesource.com/

Web demo

Since this project generate WASM version, i published a demo that you can test PDFium direct on web browser here:

https://pdfviewer.github.io/?title=Demo%20PDF%20with%201MB&url=https://raw.githubusercontent.com/mozilla/pdf.js-sample-files/master/tracemonkey.pdf

Requirements

  1. Ninja Build
  2. Python 3
  3. PIP

Obs: Generally Python 3 already come with PIP installed. Check it with command python3 -m pip --version.

How to compile

These are the general steps that need be executed before all others platforms steps.

  1. Get the source:
git clone https://github.com/paulocoutinhox/pdfium-lib.git
cd pdfium-lib
  1. Install PIP requirements:
python3 -m pip install -r requirements.txt
  1. Get Google Depot Tools:
python3 make.py build-depot-tools
export PATH=$PATH:$PWD/build/depot-tools

Obs:

  • The file make.py need be executed with Python version 3.
  • These steps you only need make one time.
  • If you change pdfium git commit revision, edit file modules/config.py and execute step 4.

How to compile for iOS

Check tutorial here: Build for iOS

How to compile for macOS (with Apple Silicon - M1)

Check tutorial here: Build for macOS

How to compile for Android

Check tutorial here: Build for Android

How to compile for WASM

Check tutorial here: Build for WASM

Prebuilt binary

Access releases page to download prebuilt binaries:

https://github.com/paulocoutinhox/pdfium-lib/releases

How to include files and extend pdfium

Check tutorial here: How to include files

Buy me a coffee

Support the continuous development of this project.

Buy Me a Coffee at ko-fi.com

License

This license informations is about this personal project, not the Google PDFium Library.

MIT

Copyright (c) 2018-2022, Paulo Coutinho

About

PDFium - Compile instructions and tools for all supported platforms

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 45.4%
  • HTML 34.5%
  • Swift 6.6%
  • Objective-C 6.1%
  • Dockerfile 3.5%
  • JavaScript 2.0%
  • C++ 1.9%