74 tools
Cross-platform word processor whose CLI conversion mode (`abiword --to=txt`) doubles as a lightweight PDF text-extraction tool: imports a PDF's text content and exports it to plain text, HTML, ODT, DOCX, and other formats supported by its plugin system. Originally built as a free, cross-platform alternative to Microsoft Word, with PDF import/export handled through its own document-filter architecture rather than a dedicated PDF engine. Well-suited for batch format conversion where PDF is one of several formats needed.
Java library and CLI toolset covering PDF creation from scratch (with embedded fonts and images), Unicode text extraction, splitting and merging, form field extraction and filling, PDF/A-1b validation via its Preflight module, rendering pages to PNG/JPEG, printing via the Java printing API, and digital signing. The de facto standard Java PDF library, used as the underlying engine behind numerous other tools in this directory (PDFsam, PDFLayoutTextStripper, PdfBox-Android, and more).
Content-analysis toolkit that detects file types and extracts text and metadata from over a thousand file formats (including PDF, DOCX, PPTX, XLSX) through a single parsing interface; supports OCR (via Tesseract), language detection, named-entity recognition, and parsing of embedded documents/attachments. Available as a Java library, CLI (tika-app), or REST server (tika-server).
Thin CLI wrapper that reports a PDF's page dimensions by chaining three existing tools together rather than parsing the PDF itself: extracts the first page with pdftk, converts it to JPEG via ImageMagick, then measures the resulting image with imgsize. A small, single-purpose utility for scripts that just need a page's width/height without pulling in a full PDF-parsing library dependency.
Native PDF converter for AsciiDoc (the `pdf` Asciidoctor backend), converting directly to PDF without an intermediate DocBook/LaTeX step: style/layout control via YAML theme files, syntax highlighting, tables, images, and SVG. Built on the Prawn gem and its extensions (prawn-svg, prawn-table, prawn-icon).
GoDocker-packaged drop-in alternative to wkhtmltopdf: a CLI (`athenapdf`, built on Electron) for direct HTML-to-PDF conversion with an 'aggressive mode' that strips page clutter like ads and navigation before rendering. Also ships a `weaver` HTTP microservice (written in Go) for running conversions as a scalable, horizontally-deployable service on Kubernetes or AWS ECS. Built on Electron/Chromium rather than the discontinued Qt WebKit engine wkhtmltopdf itself relies on.
CLI tool that builds HTML slide presentations from Markdown (via Remark.js), with a live-reload dev server, Sass-based custom templates, static-site/self-contained-HTML export, presenter-notes stripping, and PDF export through DeckTape integration.
E-book library management application built around organizing, converting, and reading large personal e-book collections; its bundled `ebook-convert` CLI happens to double as a capable PDF-to-plain-text (and PDF-to-other-e-book-format) converter, alongside dozens of other supported formats. Not a PDF-specific tool — PDF is just one of many formats its conversion pipeline handles — but a genuinely useful one when PDF-to-text conversion is needed as part of a broader e-book workflow.
Extracts tables from text-based PDFs (not scanned documents) into pandas DataFrames, exportable to CSV/JSON/Excel/HTML/SQLite, with accuracy/whitespace quality metrics and a CLI. Five parsing strategies: `lattice` (ruled tables), `stream` (whitespace-based), `network`/`hybrid` (text-alignment), and an optional neural `ml` parser (Table Transformer) for hard borderless cases.
OCamlOCaml parser and validator for PDF file structure, built by the French national cybersecurity agency (ANSSI) specifically for security-focused PDF analysis rather than general-purpose PDF processing. Offers CLI analysis commands and an interactive console for exploring a PDF's object graph directly, aimed at spotting structural anomalies (malformed objects, suspicious cross-references) that a normal PDF reader would silently paper over or reject outright.
CLI tool and Python module that converts source code files to PDF with syntax highlighting across 23+ selectable style themes (matching Pygments' theme library), optional line numbering, and configurable paper sizes from A2 down to A5. Aimed at producing readable, printable PDF snapshots of source code — for code review handoffs, archival, or printing — rather than any PDF-reading or extraction capability.
Command-line PDF manipulation toolkit: split, merge, and extract pages while preserving bookmarks; encrypt/decrypt (AES 128/256); scale, rotate, crop, and flip pages; stamp text, watermarks, and page numbers; manage annotations, metadata, and file attachments; rasterize pages to images; and produce PDF/UA-tagged output.
General-purpose document processor built on top of TeX, alongside LaTeX one of the two major TeX-based typesetting systems, with its own markup syntax and a strong focus on programmable, highly-configurable document layout. Used by pandoc as one of its PDF-producing backend engines, alongside pdflatex/xelatex/lualatex. Particularly favored for complex technical documents needing fine-grained layout control that LaTeX's more macro-package-driven approach makes harder to achieve directly.
JavaScriptPuppeteer-based (headless Chrome) command-line tool that exports HTML slide presentations to high-quality PDF, with native support for 13 frameworks (reveal.js, impress.js, remark, Bespoke.js, deck.js, etc.) plus a generic mode for others; can also capture slides as PNG/JPG images, export slide ranges, and set PDF metadata.
C++Compares two PDF files page-by-page and reports whether they differ, either as a simple exit code for scripting or, with `--output-diff`, a new PDF that visually highlights every difference between the two inputs. Also offers a GUI mode for interactive side-by-side comparison with synchronized zoom and page-shifting, useful for spotting translation-only or formatting-only changes between two revisions of the same document. Commonly used in CI pipelines to catch unintended visual regressions.
PythonCLI tool that checks whether PDF files are 'born-digital' (created directly from a digital source, with a real text layer) versus scanned images with no underlying text — a distinction that matters before running OCR or text extraction on a large batch of unknown-provenance PDFs. Scans single files or whole directories recursively, reporting results as TSV/CSV for easy filtering in a spreadsheet or further scripting.
Go library, CLI, and HTTP service that converts PDF, DOC, DOCX, XML, HTML, RTF, ODT, Pages, and image files to plain text plus metadata (as JSON), aiming to be a single conversion entry point across many document formats rather than a PDF-specific tool. Optional OCR support (via Tesseract, enabled with the `ocr` build tag) handles image-based input. Its multi-format scope suits ingestion pipelines that need to normalize mixed document types into plain text.
Document-conversion toolkit that parses PDFs (and Office/image formats) into a unified structured representation, with layout analysis, OCR (EasyOCR by default), table structure recognition, and optional vision-language-model image description; exports to Markdown, HTML, or JSON.
JavaStandalone CLI tool and embeddable Java library that converts DOC, DOCX, PPT, PPTX, and ODT files to PDF without requiring a LibreOffice or Microsoft Office installation as a dependency — useful in server environments where installing a full office suite isn't practical. PPT/PPTX slides are converted to PDFs with each slide embedded as a rendered PNG image rather than reconstructed as native PDF content, preserving visual fidelity at the cost of the text no longer being selectable.
CLI utility and Ruby library that extracts searchable UTF-8 plain text from documents, generates page images and thumbnails in any format, splits documents into single-page or full PDFs, and extracts metadata (title, author, page count). Built by DocumentCloud for processing large volumes of source documents in journalism/investigative-reporting workflows, wrapping several underlying tools (Poppler, ImageMagick, Tesseract) behind one consistent CLI.
JavaScriptCLI tool and Node.js API (built on Electron/Chromium) that converts URLs, HTML files, or Markdown files to PDF or PNG, with custom CSS injection, page size/orientation/margin control, print-background support, custom request headers, and batch/concurrent job handling.
CPostScript and PDF interpreter/renderer from Artifex — the reference engine that many other PDF tools build on or shell out to under the hood. Converts PostScript and PDF to raster images, plain text, DOCX, PCL, and XPS; compresses PDFs while preserving visual quality; converts to and validates against the PDF/A archival standard; and adds a searchable OCR text layer to scanned pages. Also handles imposition (N-up page layout), ICC color management, and ZUGFeRD/Factur-X e-invoicing embedding.
CLI tool that converts GitHub-Markup-supported markup files (Markdown, Textile, etc., except roff) to PDF via wkhtmltopdf: embeds images (local/relative/remote), CodeRay syntax highlighting with a GitHub theme, custom CSS, Jekyll front-matter stripping, cover-page generation, direct wkhtmltopdf option passthrough (TOC, page numbering), and Docker support.
Free, portable utility for splitting and merging PDF files, distributed as a reusable library, a console tool, and a GUI — pick whichever interface fits a given workflow. Also converts JPG images directly into PDF pages. Requires no installation, running as a self-contained portable executable, which is its main draw over heavier split/merge alternatives in the same niche.
PDF library and CLI (positioned as a pdftk/Poppler-utils alternative): creates PDFs from scratch with vector drawing, JPEG/PNG/PDF image embedding, and TrueType text with subsetting; a high-level document composition engine (automatic layout, text flow, page breaks, lists, multi-column, reusable styles); modifies and merges existing PDFs; creates AcroForms with Adobe-like appearances; adds annotations, outlines, and file attachments; extracts metadata/text/images/files; encrypts (incl. PDF 2.0 AES-256) and digitally signs; and optimizes file size with object validation.
Pure-Ruby (no external system libraries) invoice-PDF generator, usable as a library, CLI, or server: A4/US Letter formats, purchaser/provider info boxes with addresses and tax IDs, SWIFT/IBAN payment details, itemized tables (description/quantity/price/tax/totals), automatic page numbering, customizable labels, custom fonts/logos/backgrounds/stamps/signatures/QR codes, and JSON-driven invoice data — fast enough for real-time request handling.
RubyRuby framework that converts Markdown (with ERB templating) into PDF (via Prince XML), EPUB, Mobi, and HTML e-books: auto-generated tables of contents from headings, Rouge syntax highlighting, custom @font-face fonts, book-layout stylesheets per format, frontmatter metadata/variables, and pre/post-render content hooks.
Perl script that automates the process of generating a LaTeX document by running pdflatex, xelatex, or lualatex (plus bibtex/makeindex for bibliographies and indexes) the correct number of times — LaTeX often needs 2-3 passes to resolve cross-references, tables of contents, and citations correctly, and latexmk figures out exactly how many are needed rather than requiring the author to guess. Also offers a continuous-preview mode that watches source files and reruns automatically on changes.
C++Full office suite (Writer, Calc, Impress, Draw) that doubles as a batch PDF-conversion tool via its headless CLI mode (`--headless --convert-to`): imports PDF content through the `writer_pdf_import` filter and exports it to plain text, ODF, and dozens of other document formats it already supports natively. Since it's a general office suite rather than a PDF-specific tool, conversion fidelity depends on how cleanly a given PDF's layout maps back onto Writer's own document model.
TeX engine that combines LaTeX with the LuaTeX extension, allowing Lua scripts to be embedded directly in the typesetting process for programmatic control over layout, font handling, and document generation that plain LaTeX macros can't easily express. Ships as part of standard TeX Live/MiKTeX distributions and is one of pandoc's selectable PDF-producing backend engines. Preferred over pdfLaTeX when a document needs Lua-level scripting or more modern font/Unicode handling.
PythonGenerates 48+ test PDF files for security research: phone-home/callback detection, SSRF, XSS injection, NTLM credential theft via UNC paths, data exfiltration, and XXE injection, with four levels of payload obfuscation and integration with Burp Collaborator/Interact.sh. For authorized penetration testing, bug bounty research, and security product validation only.
PHPCLI/Docker tool that converts a Markdown resume into a responsive HTML5/CSS3 page and a matching PDF (rendered via wkhtmltopdf), with selectable visual themes and a live-reload watch mode for editing. Also generates word-frequency stats analysis of the resume content, a distinctive extra not found in most other Markdown-to-resume tools in this directory. Outputs a single self-contained HTML file with embedded styles alongside the PDF.
CLI tool (`md2resume`) that converts a Markdown resume into both a responsive HTML page and a PDF version, rendering the PDF via wkhtmltopdf under the hood. Includes a watch mode for live-reload editing while writing the resume, plus Docker support for running it without a local wkhtmltopdf install. One of several Markdown-to-resume tools in this directory (see also Kitabu, Gimli) built around the same 'write once, get HTML and PDF' workflow.
Converts PDFs, Office documents, images, audio, HTML, and other formats to Markdown for use as LLM input; ships both a CLI and a Python library, and can keep embedded images as base64 data URIs instead of discarding them.
Converts PDF, DOCX, PPTX, XLSX, images, and web pages into Markdown or JSON: strips headers/footers/page numbers while preserving structure, converts formulas to LaTeX and tables to HTML, OCRs scanned/garbled PDFs in 109 languages, handles single/multi-column and complex layouts (incl. cross-page table merging), and extracts images with captions. Offers CLI, FastAPI, and Gradio WebUI, plus Python/Go/TypeScript SDKs; builds on PDF-Extract-Kit's models.
CLightweight, fast C library, desktop viewer, and CLI toolset for PDF, XPS, and e-book formats, built by Artifex around the same rendering core used in Ghostscript. Renders pages and extracts text/images/metadata/structured content; creates, splits, merges, and compresses PDFs; adds annotations (highlights, stamps, shapes); permanently redacts content; and digitally signs documents. Converts between PDF, SVG, PNG, HTML, and PostScript, and embeds into web pages and native apps via its library bindings.
Adds a searchable OCR text layer beneath page images and produces a validated PDF/A file: deskews crooked pages, optionally cleans images pre-OCR, optimizes/compresses images, recognizes 100+ languages via Tesseract, rotates misrotated pages, edits output metadata, parallelizes across CPU cores, and processes multi-thousand-page files in place.
Pure-Ruby framework for parsing, modifying, and creating PDF files, with lazy on-demand parsing: compression filters with predictors, RC4/AES encryption (including Revision 6), digital signatures and usage rights, file attachments, AcroForm/XFA forms, and object streams. Ships CLI tools including `pdfcop` for detecting dangerous PDF content (not a full malware-analysis/forensics suite by the author's own description) plus decompression, decryption, encryption, resource-extraction, and metadata-inspection utilities.
Command-line interface for Paged.js, a free and open-source library that paginates HTML/CSS content the way a browser would lay out a printed page, then produces print-ready PDFs from the result. Built specifically for CSS Paged Media use cases (page counters, running headers/footers, cross-references) that plain headless-browser screenshot-to-PDF pipelines don't handle correctly. Runs Paged.js inside a headless Chromium instance under the hood.
HaskellUniversal document converter between Markdown, HTML, LaTeX/ConTeXt, DOCX/RTF/ODT, EPUB, man/ms roff, DocBook, JATS, TEI, Jupyter notebooks, PowerPoint/reveal.js/Beamer slides, and dozens more formats. Uses external PDF-producing engines (context, latexmk, lualatex, pdflatex, xelatex, wkhtmltopdf, weasyprint, prince, pagedjs-cli, tectonic, pdfroff) to convert into PDF, and preserves metadata, footnotes, tables, math, syntax highlighting, and citations/bibliographies (via CSL) across formats.
PythonPart of the Didier Stevens Suite of security tools: parses a PDF document to identify and inspect its fundamental elements/objects, with an option to search for specific strings within indirect objects — used for PDF malware analysis and forensic triage. Public domain.
C++Command-line tool for extracting text and tabular data from PDF files, with table output written directly to CSV for further processing. Built as a focused, single-purpose alternative to heavier PDF libraries for when all that's needed is getting content out of a document, without pulling in a full parsing/rendering engine as a dependency. Written by the same author as the PDF-Writer/HummusJS engine, sharing some of its low-level PDF parsing code.
PHPThin PHP wrapper around the `pdftotext` CLI binary (from Poppler) that extracts text from a PDF, with support for a custom binary path, password-protected PDFs, and passthrough of `pdftotext`'s own options (e.g. layout preservation). Requires `pdftotext` installed as a system binary — this package is purely a PHP-friendly API over it, not an independent text-extraction implementation.
PythonConverts PDF files to DOCX (Word) format, preserving formatting and layout — fonts, positioning, images — rather than dumping plain text into a Word document, and extracts tables as genuine Word tables rather than flattened text. Offers both a CLI and a GUI, covering scripted batch conversion and one-off interactive use. A common need for taking a PDF that needs further editing back into an editable Word document.
JavaScriptNode.js library/CLI (built on Mozilla's pdf.js engine) that converts PDFs to JSON: extracts text (with position, rotation, styling, color, and font metadata), page layout, and interactive AcroForm field data (text inputs, checkboxes, radio buttons, dropdowns, signature fields); also outputs plain-text files, and runs as a REST service or stream-based parser.
PDF forensics/analysis tool that visualizes a PDF's internal tree-like object structure as large, color-coded diagrams, scans embedded binary streams for suspicious/malicious content using YARA rules (via the companion Yaralyzer), and force-decodes suspicious font binaries.
GoGo PDF processor (CLI + library) supporting PDF up to 2.0 (ISO 32000-2): validate, optimize, split, trim, and merge PDFs; encrypt/decrypt; resize, rotate, and crop pages; extract/manipulate images, fonts, and metadata; manage attachments and portfolios; validate, report, and remove digital signatures; add/remove stamps and watermarks; process forms, bookmarks, and annotations; and generate booklets, N-up/N-down layouts, grids, and posters.
TeX engine (pdfTeX running in LaTeX mode) that produces PDF output directly from LaTeX source, instead of the older DVI-then-convert-to-PostScript-then-to-PDF pipeline classic TeX used. The most common default LaTeX engine in TeX Live/MiKTeX distributions and the one most LaTeX tutorials assume, though XeLaTeX and LuaLaTeX have since become preferred for documents needing modern font handling or Unicode input pdfLaTeX doesn't natively support.
PythonPure-Python CLI (companion to pypdf) with commands including 2-up/booklet page layout, cat (extract/merge pages), check-sign (verify signatures), compress/uncompress, extract-annotated-pages, extract-images, extract-links, extract-text, meta/pagemeta, rm (delete pages), rotate, sign, update-offsets (repair simple PDFs), and x2pdf (convert other formats to PDF pages).
Translates scientific PDF documents while preserving layout, formulas, charts, tables of contents, and annotations; supports Google Translate, DeepL, Ollama, OpenAI, and other translation backends via CLI, GUI, Docker, or a Zotero plugin, with batch/directory translation and partial-document translation.
PythonCLI that converts a PDF to Markdown, built as a thin wrapper around PyMuPDF4LLM — the actual conversion logic lives in PyMuPDF4LLM, with pdfmd providing a simple, single-command CLI entry point over it rather than requiring a Python script. A lightweight choice for command-line/shell-script workflows that just need 'PDF in, Markdown out' without writing any Python code.
TypeScript PDF generation toolkit for Node.js and browsers: generates PDFs from simple JSON templates rather than imperative drawing code, and includes a WYSIWYG template designer plus a PDF viewer component for previewing the result. Also ships CLI tools for template validation, diagnostics, and image-based layout inspection. The template-driven approach suits use cases like invoices or certificates where non-developers need to adjust the layout.
RustPDF toolkit built around a Rust engine, exposed as native bindings for ~20 languages (Python, JavaScript/TypeScript, Go, C#/.NET, Java, and more), a CLI, and an MCP server for AI-assistant integration: text/character-level and image extraction, form-field reading and filling, Markdown/HTML conversion with heading detection, PDF creation and editing, watermarking, merging/splitting, regex-based search, and metadata access.
PDF watermark-removal library/CLI targeting academic-publisher watermarks (institution names, personal identifiers, IP addresses, timestamps) for AIP, IEEE, JSTOR, RSC, and SPIE papers; also removes arbitrary user-specified strings from page content and/or XMP/DocInfo metadata, with in-place overwrite support.
CWrapper script bundled with GNU groff (the free reimplementation of the classic Unix `troff` typesetting system) that automates producing a finished PDF from groff source. Transparently handles multi-pass processing — formatting a table of contents and body text separately, then combining them in the correct final order — and post-processes groff's output stream through Ghostscript to produce the finished PDF. Commonly used for man pages and other troff-formatted technical documents that need a polished, paginated PDF alongside their plain-text form.
C#Free Windows GUI front-end for the PDFtk command-line tool, exposing its operations — split, merge, stamp, add page numbers, rotate, edit metadata, manage bookmarks and attachments — through point-and-click dialogs instead of the command line. Aimed at users who want PDFtk's capabilities without writing or remembering CLI invocations, or learning PDFtk's own multi-flag command syntax for routine batch operations.
Command-line tool to merge, split, and rotate PDFs; fill forms with FDF/XFDF data and flatten them (or generate an FDF stencil from a form's fields); encrypt and decrypt with passwords; add watermarks and stamps; manage bookmarks, metadata, and attachments; repair damaged PDFs; and recompress page streams. The Java-rewritten 'Server' edition of the classic PDFtk command-line tool, maintaining the same CLI interface and command syntax as the original.
Standalone PDF-to-HTML/XML converter built on Xpdf 2.02's parsing code, producing an HTML or XML rendering of a PDF's text and layout — not to be confused with the same-named `pdftohtml` binary bundled with Poppler, a separate, newer implementation that superseded this project. Distributed only as source and Windows binaries via its old SourceForge project page, with no activity since Xpdf 2.02's era.
Command-line tool built on the Xpdf library that extracts per-word text with bounding-box coordinates (top, left, width, height) from every page of a PDF, outputting the result as structured JSON alongside page dimensions and page count. Useful when downstream code needs to know exactly where each word sits on the page — for reconstructing tables, matching form-field positions, or any layout-aware processing that plain-text extraction throws away.
Data-extraction application that converts PDF files into XML, built on an old snapshot of the JPedal library rather than being independently maintained. An abandoned, CVS/SourceForge-era project with no development activity since — kept here for completeness rather than as a recommended active tool, since Poppler's own `pdftohtml -xml` and similar actively-maintained tools now cover the same ground more reliably.
CLI tool and Python package that extracts metadata (creation date, creator, page count, producer) and detects references (other PDFs, URLs, DOIs, arXiv IDs) within a PDF, with parallel downloading of referenced PDFs, plain-text extraction, and broken-hyperlink detection; outputs plain text or JSON, and accepts local files or URLs.
Converts XML (or Markdown) documents to PDF or images (JPEG/PNG via GD/Imagick/Gmagick) with HTML-like tags (div, p, table, headings, lists, images, links); supports auto-breakable/fixed pages, multi-column layouts, headers/footers/watermarks, page numbering, metadata, internal/external links, bookmarks, sticky notes, barcodes (via Zend), simple pie charts, borders, backgrounds, rotation/transparency, and stylesheets; usable via web or CLI, with Symfony2 integration.
PDF rendering library and command-line suite — a fork of Xpdf that's become the de facto standard PDF engine underlying much of the open-source PDF ecosystem, powering tools like Evince, Okular, and countless downstream wrappers. Ships pdftotext, pdfimages, pdftoppm, pdftocairo, pdftohtml, pdftops, pdfinfo, pdffonts, pdfdetach, pdfattach, pdfseparate, pdfunite, and pdfsig, covering text/image extraction, page rendering, format conversion, metadata, attachments, and signature verification.
Converts PDF text to XML, built on pdfminer rather than a from-scratch parser; created as an alternative to Poppler's `pdftoxml` specifically because of better handling of CID Type2 font decoding that the Poppler tool got wrong on certain PDFs. Ships three separate CLI utilities — `pdf2xml`, `pdfxml2csv`, and `headerfilter` — covering the conversion itself plus two post-processing steps for turning the XML output into cleaner tabular data.
OCR and text-extraction library for images and PDFs: extracts existing text from text-native PDFs, runs OCR on image-native PDFs/scans, and can insert a text layer into an existing PDF to make it searchable. Usable from the browser, Node.js, or its own CLI; a hosted GUI is available separately at scribeocr.com.
JavaTable-extraction library (powers the Tabula tool) that pulls tabular data out of PDFs using lattice mode (ruled cell borders) or stream mode (no borders), exporting to CSV, TSV, or JSON; usable as a CLI for batch processing or as a Java API, with support for selective pages, custom extraction areas, and password-protected files.
Modernized, complete, self-contained TeX/LaTeX engine powered by XeTeX and TeXLive, written in Rust with a focus on reproducible builds and not requiring a separate, multi-gigabyte TeX Live installation — it fetches only the packages a given document actually needs, on demand, from a versioned bundle. Used by pandoc as one of its selectable PDF-producing backend engines. Aimed at users who find installing and maintaining a full TeX distribution more friction than the documents warrant.
JavaScriptNode.js module (CLI + API) that extracts text from HTML, PDF, DOC/DOCX, ODT, RTF, XLS/XLSX/XLSB/XLSM, CSV, ODS, PPTX/ODP, XML, Markdown, EPUB, and image formats (PNG/JPG/GIF via Tesseract OCR); wraps external tools (pdftotext, antiword, tesseract, unrtf) and supports password-protected PDFs and configurable OCR language.
Graph-based keyword/keyphrase extraction and extractive text summarization implementing the TextRank algorithm, exposed via `extract_summary` and `extract_phrases` CLI commands. Operates on plain text files — the README describes no PDF-specific handling, so PDF content needs to be extracted to text by a separate tool first before TextRank can summarize or extract keyphrases from it.
Industry-backed, open-source validation library and CLI for checking PDF files against the PDF/A and PDF/UA standards, developed by a consortium including the PDF Association and major archives/libraries specifically to be the reference validator for these standards. Produces a detailed machine-readable validation report identifying exactly which conformance rules a file violates, rather than a simple pass/fail result. Widely used in digital-preservation workflows where formal PDF/A compliance is a hard requirement.
C++Headless command-line tool (and C library) that renders HTML into image files using the Qt WebKit rendering engine, without requiring a display server or window manager — useful for automated screenshot/thumbnail pipelines running on a server. Can capture live URLs or local HTML files, applying the same CSS/JavaScript rendering a real browser would. Shares its rendering engine and codebase with the companion wkhtmltopdf; both are archived and unmaintained, since Qt WebKit itself was deprecated in favor of Chromium-based headless rendering.
Headless command-line tool (and C library) that renders HTML into PDF using the Qt WebKit rendering engine, without requiring a display server or window manager — long the default choice for server-side 'print this webpage to PDF' pipelines before headless Chrome existed. Can capture live URLs or local HTML files, applying the same CSS/JavaScript rendering a real browser would. Archived and unmaintained since Qt WebKit was deprecated; numerous language wrappers throughout this directory still drive it as a subprocess.
TeX engine (XeTeX running in LaTeX mode) with native support for Unicode text input and system fonts — TrueType and OpenType — accessed through the operating system's own font layout engine rather than TeX's traditional font metric files. The natural choice for LaTeX documents needing non-Latin scripts, emoji, or any font already installed on the system rather than a TeX-specific font package. One of pandoc's selectable PDF-producing backend engines alongside pdfLaTeX and LuaLaTeX.
PDF viewer plus a full command-line toolset (pdftotext, pdftops, pdftoppm, pdftopng, pdftohtml, pdfinfo, pdfimages, pdffonts, pdfdetach) for viewing PDFs and converting them to text, PostScript, image, or HTML, alongside metadata, image, font, and attachment extraction. The original codebase Poppler itself forked from; poppler-utils has since become the more actively maintained fork of these same tools, but Xpdf continues independent development under its original author.