---
title: "Six best PDF generator APIs in 2026: Nutrient vs. competitors compared"
canonical_url: "https://www.nutrient.io/blog/the-six-best-pdf-generator-apis/"
md_url: "https://www.nutrient.io/blog/the-six-best-pdf-generator-apis.md"
last_updated: "2026-09-11T13:50:36.573Z"
description: "Compare six PDF generator APIs by input format, template editing, billing model, and workflow support. Choose a service for invoices, reports, and forms."
---

**TL;DR**

Choose a PDF generator API based on your input and the work that follows generation:

- **Nutrient DWS Processor API** — Generate from HTML or convert documents. Then combine supported PDF processing actions in a Build request.

- **PDF generator API** — Build visual templates and populate them with JSON data.

- **APITemplate.io** — Choose between visual templates and HTML-based PDF generation, with image generation available separately or in combined plans.

- **PDFMonkey** — Generate documents from templates and dynamic data using a visual builder or HTML/CSS.

- **Anvil** — Generate PDFs alongside form filling and electronic signature workflows.

- **Converterer, formerly Paperplane** — Convert files or capture webpages and deliver output to your cloud storage.

[Jump to the comparison table](#top-six-pdf-generator-apis-in-2026) to compare inputs, billing models, and plan limits. This is a documentation-based comparison, not a performance benchmark. Product and billing information was checked on 8 September 2026; confirm current terms before purchasing.

## What is a PDF generator API?

A PDF generator API creates PDF files from inputs such as HTML, document templates, JSON data, or existing files. Your application sends a request, and the service returns the PDF or a way to retrieve it after processing.

A hosted API moves rendering-engine maintenance to the provider. You still manage authentication, input validation, retries, and file handling. For an implementation example, see how to [generate PDF invoices from HTML in Python](https://www.nutrient.io/blog/how-to-generate-pdf-invoices-from-html-in-python/).

## Why use a PDF generator API?

A hosted API can help when your application needs to:

1. **Automate generation** — Create invoices or reports from application events.

2. **Reuse templates** — Apply a common layout to changing data.

3. **Reduce renderer maintenance** — Let the provider operate and update the rendering service.

4. **Handle changing volume** — Use hosted capacity within the provider’s rate and concurrency limits.

5. **Connect processing steps** — Add operations such as conversion, watermarking, or form filling where the API supports them.

Compare usage fees with the cost of running your own renderer. Neither approach is always cheaper.

## Common PDF generator API use cases

The input format and required output determine which service fits each task:

- **Invoicing** — Turn billing data into PDFs. See examples in [Python](https://www.nutrient.io/blog/how-to-generate-pdf-invoices-from-html-in-python/), [Node.js](https://www.nutrient.io/blog/how-to-generate-pdf-invoices-from-html-in-nodejs/), [Java](https://www.nutrient.io/blog/how-to-generate-pdf-invoices-from-html-in-java/), [C#](https://www.nutrient.io/blog/how-to-generate-pdf-invoices-from-html-in-csharp/), or [PHP](https://www.nutrient.io/blog/how-to-generate-pdf-invoices-from-html-in-php/).

- **Reports** — Render tables, charts, and summaries with predictable page breaks.

- **Contracts and forms** — Generate a document or populate an existing PDF. Then send it through the required signing workflow.

- **Shipping documents** — Produce labels, packing lists, and customs forms from order data.

- **Certificates** — Apply recipient data to a reusable design.

## What to look for in a PDF generator API

Test a representative document before comparing plan prices:

- **Input and templates** — Do you already have HTML, a PDF form, or JSON data? Check whether templates live in your application or the provider’s editor.

- **Rendering** — Test your fonts, long tables, images, page breaks, and JavaScript-dependent charts.

- **Processing steps** — Separate generation from filling, editing, extraction, and signing. They may use different endpoints and billing units.

- **Delivery** — Check whether the API returns bytes, a download URL, or a job ID with a webhook callback.

- **Data handling** — Review retention, storage destinations, regional processing, and contractual requirements for your documents.

- **Operational limits** — Check rate limits, concurrency, timeouts, and retry behavior against your expected workload.

If documents must stay in infrastructure you operate, evaluate a self-hosted option such as [Nutrient Document Engine](https://www.nutrient.io/sdk/document-engine/). Hosting choices still require configuration and a review of your deployment requirements.

## Understanding PDF generator API pricing models

A credit, an API call, and a generated document aren’t interchangeable billing units. Estimate usage with the same sample workload for each provider.

### Common credit-based models

The services below use different approaches:

- **Operation-based credits** — Nutrient charges for the tools used in a request. Combining actions doesn’t make those actions free.

- **Page-based credits** — The PDF generator API counts document pages in blocks of five, so a longer document can consume multiple credits.

- **Document quotas** — APITemplate.io and PDFMonkey offer plans with generation allowances and plan-specific features.

- **Metered API usage** — Anvil distinguishes PDF filling/generation calls from workflow submissions and electronic signature packets.

- **Conversion quotas** — Converterer counts file conversions and website captures against a shared allowance.

Compare recurring free allowances, time-limited trials, and sandbox access separately. Check watermarks, external-asset access, storage duration, and payment-method requirements before treating a free plan as suitable for production.

## Top six PDF generator APIs in 2026

Use this table to shortlist services by workflow. The billing column describes what to measure rather than treating unlike quotas as equivalent prices.

| Provider                         | Suitable use case                                      | Main inputs for generation                           | Billing and evaluation considerations                                                                    |
| -------------------------------- | ------------------------------------------------------ | ---------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
| Nutrient DWS Processor API       | Generation followed by PDF processing                  | HTML/CSS, Office documents, images                   | Credits depend on the operations; use the Build analysis endpoint to estimate a request                  |
| PDF generator API                | Visual templates populated by application data         | JSON with a template; HTML conversion also available | Page-based credits; template, workspace, and request limits vary by plan                                 |
| APITemplate.io                   | Teams choosing between visual and HTML templates       | Template data, HTML, Markdown                        | PDF-only and combined image/PDF plans have different allowances                                          |
| PDFMonkey                        | Template-driven invoices, reports, and certificates    | Template data or HTML/CSS                            | Monthly document quotas; free-plan restrictions include external resources                               |
| Anvil                            | Generation connected to forms and signing workflows    | HTML/CSS, Markdown; existing PDFs for filling        | Metered PDF usage is separate from signing and workflow usage; production API access needs billing setup |
| Converterer, formerly Paperplane | File conversion and webpage capture into cloud storage | Files, HTML, or webpage URLs                         | File conversions and website captures share the plan’s allowance                                         |

### Nutrient DWS Processor API![Nutrient DWS PDF generator API](@/assets/images/blog/2022/the-six-best-pdf-generator-apis/nutrient-api.png)

[Nutrient’s PDF generator API](https://www.nutrient.io/api/pdf-generator-api/) creates PDFs from HTML and CSS. Its Build API can assemble inputs and apply supported actions such as watermarking, optical character recognition (OCR), redaction, or flattening. The [Build workflow guide](https://www.nutrient.io/guides/dws-processor/developer-guides/combine-workflows.md) explains the request structure and operation order.

**Key differentiators:**

- **Generation and conversion** — Generate from HTML or use [supported document conversions](https://www.nutrient.io/api/pdf-converter-api/) for Office files and images.

- **Processing after generation** — Combine supported actions in one Build request. Cryptographic signing uses the separate `/sign` endpoint after processing is complete.

- **Form workflows** — Use [form filling](https://www.nutrient.io/api/pdf-form-filling-api/) and flattening where the output should contain completed form values.

- **Developer tools** — Use the official [Python client](https://github.com/PSPDFKit/nutrient-dws-client-python) or [TypeScript client](https://github.com/PSPDFKit-labs/nutrient-dws-client-typescript), or start with the [Postman collection](https://www.nutrient.io/guides/dws-processor/getting-started/postman-collection.md).

- **Automation** — Connect through the [Zapier integration](https://www.nutrient.io/guides/dws-processor/getting-started/zapier-integration.md) or [model context protocol (MCP) server](https://www.nutrient.io/guides/dws-processor/getting-started/mcp-server.md) when that fits your workflow.

**Quick start:**

[Create an API key](https://www.nutrient.io/guides/dws-processor/getting-started.md) and save an `index.html` file in your working directory. Replace the key placeholder before running this request. The example uploads one HTML file; include additional local stylesheets, fonts, and images as assets when your template needs them.

```bash

curl -X POST https://api.nutrient.io/build \
  -H "Authorization: Bearer your_api_key_here" \
  -o result.pdf \
  --fail \
  -F index.html=@index.html \
  -F instructions='{
      "parts": [
        {
          "html": "index.html"
        }
      ]
    }'

```

For asset handling, page sizes, and margins, see the [PDF generation guide](https://www.nutrient.io/guides/dws-processor/developer-guides/pdf-generation.md). Keep the API key on your server when integrating this request into a web application.

#### Documents supported

Nutrient supports HTML/CSS generation and conversion from Office documents and images. Existing PDFs can be assembled and processed in the same Build workflow where the requested operations are supported.

#### Real-world workflow examples

Choose actions based on the input:

- **Invoices** — Generate from HTML and add a watermark in a Build request.

- **Scanned records** — Run OCR before operations that depend on recognized text.

- **Completed forms** — Fill and flatten the document. Then send the final PDF to the [digital signature endpoint](https://www.nutrient.io/api/reference/public/#tag/Digital-Signatures/operation/sign-file) if signing is required.

Nutrient is a useful candidate when generation is one step in a larger document process. If you only need an editor for business users to design templates, compare the visual-template services below as well.

#### Pricing

Nutrient uses operation-based credits. The [credit calculation guide](https://www.nutrient.io/guides/dws-processor/pricing/calculate-credit-usage.md) explains how combined requests are charged and how `/analyze_build` estimates usage without executing the conversion. Use [Processor API pricing](https://www.nutrient.io/api/pricing/processor-api/) for current allowances and plans, and [create an account](https://dashboard.nutrient.io/sign_up/?product=processor) to evaluate output with your own files.

### PDF generator API![PDF generator API image](@/assets/images/blog/2022/the-six-best-pdf-generator-apis/pdf_generator_api_image.png)

[The PDF generator API](https://docs.pdfgeneratorapi.com/) combines a visual template editor with an API that accepts template identifiers and JSON data. It also offers HTML-to-PDF conversion, so its input options aren’t limited to visual templates.

#### Key features

- **Visual editing** — Design templates without writing all of the layout in HTML.

- **Dynamic content** — Populate templates with data, conditional content, and repeating elements.

- **Workspace organization** — Separate templates and users through workspaces, subject to plan limits.

- **Additional PDF services** — Form filling and other processing capabilities extend beyond document generation.

This service suits applications that need reusable templates maintained through an editor. Check embedded-editor access and template-management features for the plan you’re evaluating.

#### Documents supported

Use JSON data with a stored template, or the HTML conversion API for existing HTML content.

#### Pricing

Plans use credits based on document length: Each block of five pages consumes one credit. Don’t estimate cost by counting data sources or assuming one request always equals one credit. Compare page counts, templates, workspaces, and request limits when selecting a plan.

### APITemplate.io![API Template PDF generator API](@/assets/images/blog/2022/the-six-best-pdf-generator-apis/api_template_image.png)

[APITemplate.io](https://docs.apitemplate.io/reference/api-reference.html) offers visual and HTML-based template options, plus API routes for generating PDFs from HTML or Markdown. It also generates images, which matters when the same application produces both PDF documents and graphics.

#### Key features

- **Template options** — Choose visual editing or HTML-based layouts.

- **PDF and image generation** — Use the output type required by your application.

- **Automation integrations** — Connect document generation to tools such as Zapier, Make, and n8n.

- **Page styling** — Configure PDF headers, footers, and page settings through the supported editor or API options.

It’s a candidate for teams whose template authors have different technical backgrounds. Test the chosen editor with a real document; editor features and API options aren’t identical.

#### Documents supported

Use template data, HTML, or Markdown for PDF generation.

#### Pricing

APITemplate.io separates PDF-only plans from plans covering both images and PDFs. Compare generation allowances, template limits, storage, and webhook availability for the specific plan. The free allowance includes PDF generation.

### PDFMonkey![PDFMonkey PDF generator API](@/assets/images/blog/2022/the-six-best-pdf-generator-apis/pdf_monkey_image.png)

[PDFMonkey](https://pdfmonkey.io/docs/getting-started/) provides a visual builder and code templates that use HTML/CSS with dynamic data. Its code-template documentation covers Liquid syntax, custom JavaScript, fonts, and page layout.

#### Key features

- **Template authoring** — Choose a visual builder or code templates.

- **Dynamic data** — Populate the document from your application’s payload.

- **Delivery workflow** — Retrieve generated documents and use webhooks to respond to completion.

- **External assets** — Load resources such as images and fonts on plans that support them.

Use it for recurring documents that share a template. Test the intended production plan: A premium trial can allow resources that the free plan won’t load afterward.

#### Documents supported

Use templates with dynamic data or the HTML-to-PDF route for your own HTML.

#### Pricing

PDFMonkey offers monthly document quotas and a separate trial of paid features. Plan differences include document retention, external resources, and maximum generation time. Confirm how overage usage is handled before relying on a fixed monthly allowance.

### Anvil PDF Generation API![Anvil PDF generator API](@/assets/images/blog/2022/the-six-best-pdf-generator-apis/pdf_anvil_image.png)

[Anvil’s generation API](https://www.useanvil.com/docs/api/generate-pdf/) creates PDFs from HTML/CSS or Markdown. Its wider platform includes filling existing PDF forms and electronic signature workflows. Those are distinct capabilities, not operations of the generation endpoint.

#### Key features

- **Direct generation** — Send content to the PDF generation endpoint and receive PDF output.

- **Form filling** — Populate existing PDF templates through a separate API.

- **Electronic signatures** — Connect generated or filled documents to signing workflows.

- **Development mode** — Test integrations with development keys, checking their limits and output watermarks.

Anvil is a candidate when the application needs generation, forms, and signing within the same platform. Check the API and billing requirements for each step.

#### Documents supported

Generate from HTML/CSS or Markdown. Use the filling API when the starting point is an existing PDF form.

#### Pricing

PDF filling/generation is metered separately from workflow submissions and electronic signature packets. Anvil’s free UI plan isn’t a recurring free production API allowance: Production API access requires adding a payment method or upgrading. Check starter-credit terms and product-specific charges before estimating ongoing use.

### Paperplane![Paperplane PDF generator API](@/assets/images/blog/2022/the-six-best-pdf-generator-apis/paperplane_pdf_image.png)

Paperplane has rebranded as [Converterer](https://www.converterer.com/). The existing screenshot above shows the earlier product. Evaluate the current service and documentation when starting a new integration.

#### Key features

- **File conversion** — Convert supported input files through its conversion API.

- **Website capture** — Render webpages into PDF or image output through a separate capture API.

- **Storage destinations** — Deliver output to supported cloud storage, including Amazon S3, Cloudflare R2, Google Cloud Storage, and Azure.

- **Job completion** — Use webhook callbacks to handle completed jobs.

Converterer fits applications that want conversion or capture results delivered to their own supported storage destination.

#### Documents supported

Inputs include files and webpages. Check the conversion matrix for the exact input/output pair and the capture documentation for HTML rendering options.

#### Pricing

Converterer uses conversion allowances shared by file conversion and website capture. Paid plans have overage rates. Check current allowances and overage rates before estimating your costs.

## Conclusion and recommendations

Start with your source material. For an existing HTML invoice, test direct HTML conversion. For JSON data and business-managed layouts, evaluate a template editor. If the generated file then needs processing, compare the supported operations and endpoint sequence, as well as the renderer.

Test one typical document and one difficult case, such as a long table with custom fonts. Record page breaks, missing assets, generation time, and billable usage. Choose the service that meets those requirements at your expected volume.

For generation inside an application you operate, compare [Nutrient’s document SDKs](https://www.nutrient.io/sdk/) with the hosted API approach.

**Featured Content**

**Test your PDF generation workflow**

Generate a PDF from your own HTML. Then evaluate the processing steps your application needs.

[Create free account](https://dashboard.nutrient.io/sign_up/?product=processor) | [Read the generation guide](https://www.nutrient.io/guides/dws-processor/developer-guides/pdf-generation.md)

## FAQ

#### What is the best free PDF generator API?

There isn’t one best option for every workload. Compare the PDF allowance, watermarks, external-asset support, retention, and API access. A trial of paid features or a free UI plan isn’t equivalent to an ongoing free production API plan.

#### Can I integrate a PDF generator API into a web or SaaS application?

Yes. Call the API from your backend and return the generated file or download link to the application. Keep secret API keys out of browser code, and handle errors and asynchronous jobs where required.

#### How do I manage templates and dynamic data for PDF generation?

Some services store templates in a visual editor and accept JSON data at generation time. Others accept HTML rendered by your application. Check who can edit templates and how you promote tested changes into production.

#### What should I watch out for when scaling PDF generation workflows?

Check request and concurrency limits, job timeouts, file-size limits, and billing units. Test bursts of requests and long documents rather than estimating capacity from a single small PDF.

#### Is it possible to combine PDF generation with other document processing actions?

Yes. Nutrient’s Build API combines generation with supported processing actions such as watermarking or flattening. Use the separate signing endpoint for cryptographic signatures. Combined requests still incur the applicable operation costs.

#### How long does it take to generate a PDF with an API?

There’s no reliable universal timing. Measure your own templates, fonts, images, page counts, and network conditions. For asynchronous services, include queueing and file delivery in the time your application records.

#### Do PDF generator APIs support custom fonts and styling?

Many support custom fonts through uploaded assets, CSS `@font-face`, or editor settings. Verify supported font formats and test character coverage, line wrapping, and page breaks in the generated PDF.

#### Can I generate PDFs from existing documents like Word or Excel files?

Yes, if the service supports document conversion. Nutrient accepts Office documents and images for PDF conversion. Confirm the exact input format; HTML generation alone doesn’t imply Office conversion support.

#### How do I handle errors and failed PDF generations?

Read the provider’s error response before retrying. Correct invalid inputs and missing assets first. For transient failures and rate limits, follow the documented retry guidance and use idempotency controls where available to avoid duplicate work.

#### Are PDF generator APIs secure for sensitive documents?

Assess the provider’s documented retention, access controls, processing locations, and contractual terms against your requirements. Include output storage and application logging in that review. A hosted API doesn’t automatically make the surrounding application compliant.

#### What’s the difference between HTML-to-PDF and template-based generation?

HTML-to-PDF generation converts markup and styles supplied by your application. Template-based generation combines a stored layout with data supplied at runtime. Both can produce repeatable documents; the distinction is where the layout is authored and maintained.

#### How much does a PDF generator API cost?

Cost depends on the billing unit, allowance, and required features. Estimate document length, generation volume, processing actions, storage, and overages. Compare that workload across plans instead of equating one credit with one PDF.

#### Can I test a PDF generator API before committing to a paid plan?

The services in this comparison provide evaluation options, but the terms differ. Check whether testing requires a payment method, whether output is watermarked, and which features remain available after a trial ends.

#### How do PDF generator APIs compare to server-side libraries like wkhtmltopdf or Puppeteer?

Hosted APIs move renderer operations to a provider and charge for service usage. With a local library or browser renderer, your team manages dependencies, capacity, and updates. Compare total operating cost and deployment requirements; high volume alone doesn’t determine the cheaper option.
---

## Related pages

- [The business case for accessibility: Five ways it drives enterprise value](/blog/5-ways-accessibility-drives-enterprise-value.md)
- [Accessibility Untangled Why It Matters Guide](/blog/accessibility-untangled-why-it-matters-guide.md)
- [Advanced Techniques For React Native Ui Components](/blog/advanced-techniques-for-react-native-ui-components.md)
- [`vector_store` holds your indexed documents (see the multimodal RAG post](/blog/agentic-rag.md)
- [How to build an AI agent for contract redlining against a compliance playbook](/blog/ai-contract-redlining-compliance-playbook.md)
- [Ai Document Automation Extraction To Action](/blog/ai-document-automation-extraction-to-action.md)
- [Ai Document Workflows Ocr Compliance Heavy Teams](/blog/ai-document-workflows-ocr-compliance-heavy-teams.md)
- [Ai Legal Assistant Document Authoring](/blog/ai-legal-assistant-document-authoring.md)
- [Amazon Textract Alternatives](/blog/amazon-textract-alternatives.md)
- [Start (clears any prior buffer), navigate the document, then stop into a file.](/blog/android-faster-pdf-rendering.md)
- [Android Pdf Out Of Memory Handling](/blog/android-pdf-out-of-memory-handling.md)
- [Angular File Viewer Pdf Image Office Files](/blog/angular-file-viewer-pdf-image-office-files.md)
- [Approval Workflow Software](/blog/approval-workflow-software.md)
- [Approvals Matrix](/blog/approvals-matrix.md)
- [Auto Tagging And Document Accessibility In Dotnet Sdk](/blog/auto-tagging-and-document-accessibility-in-dotnet-sdk.md)
- [Simple PII redaction.](/blog/automated-pii-removal.md)
- [Azure Document Intelligence Alternatives](/blog/azure-document-intelligence-alternatives.md)
- [Best Ai Document Workflow Platforms](/blog/best-ai-document-workflow-platforms.md)
- [Best Document Ai Platforms](/blog/best-document-ai-platforms.md)
- [Best Document Classification Platforms](/blog/best-document-classification-platforms.md)
- [Best document parser for RAG: LlamaParse vs. Unstructured vs. Reducto vs. Nutrient](/blog/best-document-parser-llamaparse-unstructured-reducto.md)
- [Best Document Parsing Apis](/blog/best-document-parsing-apis.md)
- [Best Document Viewers](/blog/best-document-viewers.md)
- [Best Llm Document Understanding Platforms](/blog/best-llm-document-understanding-platforms.md)
- [Best Multilingual Ocr Software](/blog/best-multilingual-ocr-software.md)
- [Best Pdf Parsers For Rag](/blog/best-pdf-parsers-for-rag.md)
- [Best Salesforce Document Generation Apps](/blog/best-salesforce-document-generation-apps.md)
- [Best Secure Document Collaboration Platforms](/blog/best-secure-document-collaboration-platforms.md)
- [Bpm Guide](/blog/bpm-guide.md)
- [Bpm Tools](/blog/bpm-tools.md)
- [Build Vs Buy Document Extraction](/blog/build-vs-buy-document-extraction.md)
- [Business Automation](/blog/business-automation.md)
- [Capex Vs Opex](/blog/capex-vs-opex.md)
- [The CEO’s AI playbook: Why decision architecture beats model selection](/blog/ceo-ai-playbook-decision-architecture.md)
- [1. Extract and chunk the PDF.](/blog/chat-with-pdf.md)
- [Complete Guide To Pdfjs](/blog/complete-guide-to-pdfjs.md)
- [Construction Document Data Extraction](/blog/construction-document-data-extraction.md)
- [Convert One Drive Files To Pdf In Sharepoint](/blog/convert-one-drive-files-to-pdf-in-sharepoint.md)
- [Create And Edit Pdfs In Flutter](/blog/create-and-edit-pdfs-in-flutter.md)
- [Create Pdfs With React](/blog/create-pdfs-with-react.md)
- [Creating A Document Scanner With Ocr In Python](/blog/creating-a-document-scanner-with-ocr-in-python.md)
- [Creating And Filling Pdf Forms Programmatically In Javascript](/blog/creating-and-filling-pdf-forms-programmatically-in-javascript.md)
- [The CTO’s AI playbook: Why accountability architecture beats orchestration](/blog/cto-ai-playbook-accountability-architecture.md)
- [Digital Signatures](/blog/digital-signatures.md)
- [Digital Workflow Automation](/blog/digital-workflow-automation.md)
- [Docling Alternatives](/blog/docling-alternatives.md)
- [Document Ai Vs Ocr](/blog/document-ai-vs-ocr.md)
- [Document Authoring Audit Trail](/blog/document-authoring-audit-trail.md)
- [Document Extraction Confidence Scores](/blog/document-extraction-confidence-scores.md)
- [Document Viewer](/blog/document-viewer.md)
- [Document Watermarking](/blog/document-watermarking.md)
- [Emerging threats: Your logging system may be an agentic threat vector](/blog/emerging-threats-your-logging-system.md)
- [Extend Alternatives](/blog/extend-alternatives.md)
- [Extract Patient Data On Premises](/blog/extract-patient-data-on-premises.md)
- [app.py](/blog/extract-text-from-pdf-using-python.md)
- [Fillable Pdf](/blog/fillable-pdf.md)
- [Google Document Ai Alternatives](/blog/google-document-ai-alternatives.md)
- [How To Add Digital Signature To Pdf Using React](/blog/how-to-add-digital-signature-to-pdf-using-react.md)
- [How To Build A Dotnet Maui Pdf Viewer](/blog/how-to-build-a-dotnet-maui-pdf-viewer.md)
- [How To Build A Flutter Pdf Viewer](/blog/how-to-build-a-flutter-pdf-viewer.md)
- [or](/blog/how-to-build-a-javascript-pdf-viewer-with-pdfjs.md)
- [or](/blog/how-to-build-a-javascript-pdf-viewer.md)
- [How To Build A Nextjs Pdf Viewer](/blog/how-to-build-a-nextjs-pdf-viewer.md)
- [How To Build A Powerpoint Viewer Using Javascript](/blog/how-to-build-a-powerpoint-viewer-using-javascript.md)
- [Using Yarn](/blog/how-to-build-a-react-excel-viewer.md)
- [How To Build A React Native Pdf Viewer](/blog/how-to-build-a-react-native-pdf-viewer.md)
- [How To Build A React Powerpoint Viewer](/blog/how-to-build-a-react-powerpoint-viewer.md)
- [How To Build A Reactjs File Viewer](/blog/how-to-build-a-reactjs-file-viewer.md)
- [or](/blog/how-to-build-a-reactjs-pdf-viewer-with-react-pdf.md)
- [or](/blog/how-to-build-a-reactjs-pdf-viewer.md)
- [How To Build A Reactjs Viewer With Pdfjs](/blog/how-to-build-a-reactjs-viewer-with-pdfjs.md)
- [How To Build A Vuejs Pdf Viewer With Pdfjs](/blog/how-to-build-a-vuejs-pdf-viewer-with-pdfjs.md)
- [How To Build A Vuejs Pdf Viewer](/blog/how-to-build-a-vuejs-pdf-viewer.md)
- [How To Build An Android Pdf Viewer](/blog/how-to-build-an-android-pdf-viewer.md)
- [How To Build An Angular Pdf Viewer With Ng2 Pdf Viewer](/blog/how-to-build-an-angular-pdf-viewer-with-ng2-pdf-viewer.md)
- [How To Build An Angular Pdf Viewer With Pdfjs](/blog/how-to-build-an-angular-pdf-viewer-with-pdfjs.md)
- [How To Convert Docx To Pdf Using Javascript](/blog/how-to-convert-docx-to-pdf-using-javascript.md)
- [How To Convert Docx To Pdf Using Python](/blog/how-to-convert-docx-to-pdf-using-python.md)
- [How To Convert Html To Pdf Using Html2pdf](/blog/how-to-convert-html-to-pdf-using-html2pdf.md)
- [or](/blog/how-to-convert-html-to-pdf-using-react.md)
- [How To Convert Html To Pdf Using Wkhtmltopdf And Csharp](/blog/how-to-convert-html-to-pdf-using-wkhtmltopdf-and-csharp.md)
- [or](/blog/how-to-convert-html-to-pdf-using-wkhtmltopdf-and-python.md)
- [How To Convert Html To Pptx](/blog/how-to-convert-html-to-pptx.md)
- [Quarterly report](/blog/how-to-convert-pdf-to-markdown-using-python.md)
- [How To Convert Word To Pdf In Nodejs](/blog/how-to-convert-word-to-pdf-in-nodejs.md)
- [or](/blog/how-to-create-a-react-js-signature-pad.md)
- [How To Create Pdfs With React To Pdf](/blog/how-to-create-pdfs-with-react-to-pdf.md)
- [How To Edit Pdfs Using Ios Pdf Library](/blog/how-to-edit-pdfs-using-ios-pdf-library.md)
- [How To Embed A Pdf Viewer In Your Website](/blog/how-to-embed-a-pdf-viewer-in-your-website.md)
- [How To Extract Tables From Pdf And Images](/blog/how-to-extract-tables-from-pdf-and-images.md)
- [How To Generate Pdf From Html With Nodejs](/blog/how-to-generate-pdf-from-html-with-nodejs.md)
- [base_url tells WeasyPrint where to resolve relative asset paths](/blog/how-to-generate-pdf-reports-from-html-in-python.md)
- [How To Merge Pdfs Using Javascript](/blog/how-to-merge-pdfs-using-javascript.md)
- [How To Ocr Pdfs In Linux](/blog/how-to-ocr-pdfs-in-linux.md)
- [How To Print Pdf In Csharp](/blog/how-to-print-pdf-in-csharp.md)
- [How To Programmatically Create And Fill Pdf Form In Angular](/blog/how-to-programmatically-create-and-fill-pdf-form-in-angular.md)
- [Open an image.](/blog/how-to-use-tesseract-ocr-in-python.md)
- [From an HTML string.](/blog/html-in-pdf-format.md)
- [Html To Pdf In Javascript](/blog/html-to-pdf-in-javascript.md)
- [Intelligent Data Extraction](/blog/intelligent-data-extraction.md)
- [Invoice Approval Software](/blog/invoice-approval-software.md)
- [Javascript Document Editor](/blog/javascript-document-editor.md)
- [Javascript Pdf Editors](/blog/javascript-pdf-editors.md)
- [Javascript Pdf Libraries](/blog/javascript-pdf-libraries.md)
- [Landing Ai Alternatives](/blog/landing-ai-alternatives.md)
- [Langextract Vs Llamaindex Extraction Comparison](/blog/langextract-vs-llamaindex-extraction-comparison.md)
- [Linearized Pdf](/blog/linearized-pdf.md)
- [Uses OpenAI by default — set OPENAI_API_KEY.](/blog/llamaindex-vs-langchain-rag.md)
- [Llamaindex Workflows Vs Langgraph](/blog/llamaindex-workflows-vs-langgraph.md)
- [Llamaparse Alternatives](/blog/llamaparse-alternatives.md)
- [Low Code No Code Document Integrations](/blog/low-code-no-code-document-integrations.md)
- [Material Requisition](/blog/material-requisition.md)
- [or](/blog/merge-pdfs.md)
- [Swift Package Manager](/blog/mobile-pdf-sdk.md)
- [`elements` come from your document parser — each has a type and content.](/blog/multimodal-rag.md)
- [Nutrient Flutter 6 Bindings Api](/blog/nutrient-flutter-6-bindings-api.md)
- [Nutrient Flutter Bindings Architecture](/blog/nutrient-flutter-bindings-architecture.md)
- [Nutrient Vs Conga Composer](/blog/nutrient-vs-conga-composer.md)
- [Online Document Viewer](/blog/online-document-viewer.md)
- [Open Pdf In Your Web App](/blog/open-pdf-in-your-web-app.md)
- [PDF accessibility for developers: Meeting WCAG 2.2, Section 508, and PDF/UA with an SDK](/blog/pdf-accessibility.md)
- [Extract data from PDF files: A developer guide to structured data from PDFs and scans](/blog/pdf-data-extraction-developer-guide.md)
- [Pdf Extraction Benchmark Opendataloader Bench](/blog/pdf-extraction-benchmark-opendataloader-bench.md)
- [Pdf Extraction Document Case Studies](/blog/pdf-extraction-document-case-studies.md)
- [Pdf Page Labels](/blog/pdf-page-labels.md)
- [Pdf Sdk Compliance Security Checklist](/blog/pdf-sdk-compliance-security-checklist.md)
- [Pdf Sdk Performance Benchmark](/blog/pdf-sdk-performance-benchmark.md)
- [Pdf Ua Compliance Guide](/blog/pdf-ua-compliance-guide.md)
- [Pdf Ua Validation](/blog/pdf-ua-validation.md)
- [Pdfjs Accessibility Structtree Printing](/blog/pdfjs-accessibility-structtree-printing.md)
- [Pdfjs Advanced Loading Streaming Workers](/blog/pdfjs-advanced-loading-streaming-workers.md)
- [Pdfjs Annotation Editor Layer](/blog/pdfjs-annotation-editor-layer.md)
- [Pdfjs Area Annotations Canvas Capture](/blog/pdfjs-area-annotations-canvas-capture.md)
- [Pdfjs Coordinate Systems Pdf To Screen](/blog/pdfjs-coordinate-systems-pdf-to-screen.md)
- [Pdfjs Document Outline Bookmarks Metadata](/blog/pdfjs-document-outline-bookmarks-metadata.md)
- [Pdfjs Eventbus Guide](/blog/pdfjs-eventbus-guide.md)
- [macOS](/blog/pdfjs-file-format-conversion-to-pdf.md)
- [macOS](/blog/pdfjs-generating-pdf-thumbnails-pdf2pic.md)
- [Pdfjs Limitations Commercial Upgrade](/blog/pdfjs-limitations-commercial-upgrade.md)
- [Pdfjs Native Annotation Layer Forms](/blog/pdfjs-native-annotation-layer-forms.md)
- [Pdfjs Navigation Zoom Rotation](/blog/pdfjs-navigation-zoom-rotation.md)
- [Pdfjs Pdf Page Manipulation Pdf Lib](/blog/pdfjs-pdf-page-manipulation-pdf-lib.md)
- [Pdfjs React Viewer Setup](/blog/pdfjs-react-viewer-setup.md)
- [Pdfjs Rendering Overlays React Portals](/blog/pdfjs-rendering-overlays-react-portals.md)
- [Pdfjs Server Side Text Extraction](/blog/pdfjs-server-side-text-extraction.md)
- [Pdfjs Sticky Note Annotations](/blog/pdfjs-sticky-note-annotations.md)
- [Pdfjs Text Highlight Annotations](/blog/pdfjs-text-highlight-annotations.md)
- [Pdfjs Text Search Pdffindcontroller](/blog/pdfjs-text-search-pdffindcontroller.md)
- [Pdfjs Thumbnail Sidebar](/blog/pdfjs-thumbnail-sidebar.md)
- [People Process Tools](/blog/people-process-tools.md)
- [Process Flows](/blog/process-flows.md)
- [React Native Pdf Annotation](/blog/react-native-pdf-annotation.md)
- [React Pdf Annotation Layer Forms](/blog/react-pdf-annotation-layer-forms.md)
- [React Pdf Custom Rendering Hooks](/blog/react-pdf-custom-rendering-hooks.md)
- [Using Yarn](/blog/react-pdf-editor.md)
- [React Pdf Loading States Errors Passwords](/blog/react-pdf-loading-states-errors-passwords.md)
- [React Pdf Non Latin Fonts Special Pdfs](/blog/react-pdf-non-latin-fonts-special-pdfs.md)
- [React Pdf Outline Table Of Contents](/blog/react-pdf-outline-table-of-contents.md)
- [React Pdf Performance Optimization](/blog/react-pdf-performance-optimization.md)
- [React Pdf Setup Basic Rendering](/blog/react-pdf-setup-basic-rendering.md)
- [React Pdf Text Layer Custom Renderer](/blog/react-pdf-text-layer-custom-renderer.md)
- [React Pdf Thumbnails Page Navigation](/blog/react-pdf-thumbnails-page-navigation.md)
- [Reducto Alternatives](/blog/reducto-alternatives.md)
- [Requisition System](/blog/requisition-system.md)
- [labels.py](/blog/route-documents-automatically-classify-api.md)
- [or](/blog/sample-blog-updated.md)
- [Sdk Product Updates Q2 2026](/blog/sdk-product-updates-q2-2026.md)
- [System Of Record Vs Source Of Truth](/blog/system-of-record-vs-source-of-truth.md)
- [Add DWS MCP Server to your Claude Code project.](/blog/teaching-llms-to-read-pdfs.md)
- [Open an image file.](/blog/tesseract-python-guide.md)
- [Define the HTML part of the document.](/blog/top-10-ways-to-generate-pdfs-in-python.md)
- [Top 5 Javascript Pdf Viewers](/blog/top-5-javascript-pdf-viewers.md)
- [or](/blog/top-js-pdf-libraries.md)
- [Convert an HTML file to PDF.](/blog/top-ten-ways-to-convert-html-to-pdf.md)
- [Unstructured Alternatives](/blog/unstructured-alternatives.md)
- [Vector Pdf](/blog/vector-pdf.md)
- [Wcag2 Accessibility Requirements Documents](/blog/wcag2-accessibility-requirements-documents.md)
- [Web Sdk Is Now Headless](/blog/web-sdk-is-now-headless.md)
- [What Are Annotations](/blog/what-are-annotations.md)
- [What Is A Vpat](/blog/what-is-a-vpat.md)
- [What Is Business Logic](/blog/what-is-business-logic.md)
- [What Is Document Processing](/blog/what-is-document-processing.md)
- [What Is Intelligent Document Processing](/blog/what-is-intelligent-document-processing.md)
- [What Is Ocr Invoice Processing](/blog/what-is-ocr-invoice-processing.md)
- [What Is Pdf Ua](/blog/what-is-pdf-ua.md)
- [Why Pdfium Is A Trusted Platform For Pdf Rendering](/blog/why-pdfium-is-a-trusted-platform-for-pdf-rendering.md)
- [Why Your Ai Agent Hallucinates Pdf Table Data](/blog/why-your-ai-agent-hallucinates-pdf-table-data.md)

