Migration guides

Migrate to PDFluent

Step-by-step migration guides from common PDF libraries. Each guide shows before and after code for the most common operations.

Migrate from iText 7Java

iText uses Java and requires a commercial license for production. PDFluent runs natively without a JVM.

Migrate from Apache PDFBoxJava

PDFBox is open-source but requires a JVM. Page indexing differs: PDFBox is 0-based, PDFluent is 0-based.

Migrate from IronPDFC#

IronPDF uses a headless Chromium renderer. PDFluent is a native Rust library with no browser dependency.

Migrate from Apryse (PDFTron)C#

Apryse requires native DLLs and a license initialization call. PDFluent ships as a single Rust crate.

Migrate from pdf-rsRust

pdf-rs is read-only. If you need to write, fill forms, or sign documents, you need PDFluent.

Migrate from Java PDF libraries (iText / PDFBox)Java

General guide for Java developers migrating any Java PDF library to PDFluent. Covers checked exceptions vs Result, JVM cold starts, and static binary deployment.

Migrate from C++ PDF libraries (Poppler / MuPDF)C++

For C++ developers migrating from libpoppler, MuPDF, or custom PDF code. Covers memory safety, raw pointers vs ownership, and Cargo vs CMake.

Migrate from Foxit SDKC++

Foxit requires per-seat licensing and ships native C++ binaries. PDFluent is a Rust crate with published pricing and no native DLLs.

Migrate from Poppler (libpoppler)C++

Poppler is GPL-licensed and read-only. PDFluent is MIT/commercial Rust with full read/write support and no C++ compilation required.

Migrate from legacy PDF stackmixed

For teams running a mix of PDFBox, iText, and shell scripts. Consolidate to one Rust crate and eliminate multiple runtimes and licenses.

Migrate from server-side PDF processingany

Move PDF operations from a server call to a WASM module running in the browser. PDFluent compiles to WASM. No server round-trips for basic PDF operations.