FPDI
PHP library that imports pages from existing PDFs into FPDF, mPDF, TCPDF and tFPDF templates.
Jobs Convert
Operated by Setasign GmbH & Co. KG
Opens the vendor's own site.
Jobs covered
Open a task to see exactly what the vendor documentation supports.
Convert
Browse all convert toolsimporting pages from existing PDFs into a template; not a Word, Excel or image converter
Where your files are processed
No server involved
A pure-PHP component you require inside your own application. No service and no account; the source PDF and the generated one never leave your infrastructure. That is a property of the library itself: what an application built with it does with your file depends on that application, not on this.
It is an embedded PHP library, so it runs in the process that includes it and the host application decides what happens to the files. The library itself makes no network call that the documentation describes, but embedded operation does not establish the host application’s data flow, so this is a statement about the library rather than a guarantee that nothing leaves the infrastructure.
What it does
FPDI lets a PHP application use pages from an existing PDF as templates inside a PDF it is generating: you take a page from a source document and place it as the background of a page you write yourself. That is the mechanism behind personalised letters on a pre-printed form, certificates with a fixed design, and documents assembled from existing artwork.
It works with the common PHP generation libraries - FPDF, tFPDF, mPDF and TCPDF - and the vendor says it has been downloaded more than 150 million times through Packagist, which makes it one of the most widely deployed PDF components in the world.
Best for
PHP applications that need to overlay generated content onto an existing design, where redrawing the background in code is impractical. It is also a common dependency of other PHP PDF tooling, so a reader may already have it in their dependency tree without knowing.
Worth knowing
The free library cannot read every PDF, and the limitation is documented rather than obvious: importing pages from documents that use compressed cross-reference streams and object streams, which were introduced with PDF 1.5, and that introduction date does not establish how common they are - or from encrypted and password-protected files requires a separate paid add-on, the FPDI PDF-Parser, licensed per developer. A developer who tests with an old sample PDF and then meets a real customer file can therefore hit this in production rather than in development.
The project is also a component rather than a complete tool: it imports pages, and everything else - text, layout, fonts - comes from whichever generation library it is paired with, so its quality is partly the other library's. And although the licence is MIT and the vendor says it is free for commercial use, the add-on is not, so "FPDI is free" is true of the part many projects start with and false of the part they end up needing.
Imported pages also do not generally preserve interactive forms, annotations, or document-wide bookmarks, layers and actions; URI link annotations are a documented opt-in exception from FPDI 2.4.0. Encrypted input and the paid parser remain separate distinctions, and the parser carries its own developer licence.
Imported pages also do not generally preserve interactive forms, annotations, or document-wide bookmarks, layers and actions; URI link annotations are a documented opt-in exception from FPDI 2.4.0. Encrypted input and the paid parser remain separate distinctions, and the parser carries its own developer licence.
Details, and where each comes from
Vendor statements, our own reading of their pages, and the things nobody has established yet, each answered separately. Where we have not confirmed something it says so rather than guessing, and a row nobody has established is greyed out.
- Versions covered
- Self-hosted
- Website
- setasign.com
- Requires an account
- Not applicable
- Watermark on the free tier
- Not verified
- Maximum file size
- Not verified
- Batch processing
- Not verified
- Data residency
- Self-hosted
- Open source
- Yes
- Self-hostable
- Yes
- Licence
- MIT (FPDI itself); the FPDI PDF-Parser add-on is commercial, licensed per developer
- Redaction
- No redaction feature
- Programmatic access
- Embeddable library
- Last availability check
- Responded in 906 ms 21 October 2026
Checked automatically by our own runner, not reported by the vendor. 100% of our last 30 checks got a response.
What the redaction verdict rests on
From the vendor's own documentation, read 22 September 2026. Not tested by us.
“Our open-source solution FPDI let PHP developers import pages of existing PDFs into reusable templates for common PDF generation libraries such as FPDF, tFPDF, mPDF or TCPDF.”
What that does not establish
Recorded as `none` on absence: FPDI copies pages from one document into another and nothing in its description removes content from a page. What it does not establish is anything reassuring, and this is the one record in the batch where that deserves saying plainly rather than in passing: FPDI IMPORTS a page, which means a PDF that was redacted by covering content can be imported with the covering still over the original text, and FPDI has no way to know the difference.
A tool that moves pages between documents is a way for a badly redacted file to keep circulating, not a way to fix one.
What the vendor says
Claims are labelled rather than repeated as fact. Where we have checked something ourselves, it says so and shows when. Checked means we read the vendor's own page and it says what we recorded - not that we tested the behaviour, unless the note says we did.
-
“Our open-source solution FPDI let PHP developers import pages of existing PDFs into reusable templates for common PDF generation libraries such as FPDF, tFPDF, mPDF or TCPDF. With more than 150 million downloads via packagist FPDI became an integral part of the PHP eco system when it comes to dynamic PDF generation.”
Checked by us - the source says this Read 1 October 2026
Confirmed. The quoted text appears in the rendered page as read on 2026-10-01.
This claim was carried as reported rather than checked until this read.
Standing: Not re-read against the live source
Check it yourself: the source, the SHA-256, and how we checked
- From
- the text a browser renders
- SHA-256
- c8ea65ac5bd3fa74870a84250eb727acb2c2588ea5f720194293942c76486915
How we checked
Read as rendered text in headless Chrome on 2026-10-01 and saved to the evidence archive, so the read can be repeated against the same file. Comparison ignores case, punctuation and hyphenation, which is why "open-source" on the record matches "open source" on the page.
-
“It adds support for importing pages of PDF documents that are using compressed cross-references and streams (a PDF format feature that was introduced in PDF 1.5) or which are encrypted by a user or owner password.”
Checked by us - the source says this Read 1 October 2026
Confirmed. The quoted text appears in the rendered page as read on 2026-10-01.
This claim was carried as reported rather than checked until this read.
Standing: Not re-read against the live source
Check it yourself: the source, the SHA-256, and how we checked
- From
- the text a browser renders
- SHA-256
- c8ea65ac5bd3fa74870a84250eb727acb2c2588ea5f720194293942c76486915
How we checked
Read as rendered text in headless Chrome on 2026-10-01 and saved to the evidence archive, so the read can be repeated against the same file. Comparison ignores case, punctuation and hyphenation, which is why "open-source" on the record matches "open source" on the page.
Each claim is quoted from the vendor's own pages. This section describes what we have and have not checked - it is not a judgement about anyone.
Sponsorship is distribution, not an endorsement or a promise of search rankings, AI citations, traffic, or sales. This listing is a free entry, compiled from published sources.
Related reading
- Which PDF tools keep your file on your machine - what we count as processing on your own device.
- Open source PDF tools, and what their licences require - what open source does and does not tell you.