36 tools
PDF rendering library and command-line suite (pdftotext, pdfimages, pdftoppm, pdftocairo, pdftohtml, pdftops, pdfinfo, pdffonts, pdfdetach, pdfattach, pdfseparate, pdfunite, pdfsig) covering text/image extraction, page rendering, format conversion, metadata, attachments, and signature verification.
Command LinePDF viewer plus command-line tools (pdftotext, pdftops, pdftoppm, pdftopng, pdftohtml, pdfinfo, pdfimages, pdffonts, pdfdetach) for viewing PDFs and converting them to text, PostScript, image, or HTML, plus metadata, image, font, and attachment extraction.
Command LinePostScript and PDF interpreter/renderer from Artifex: converts PostScript/PDF to images, text, DOCX, PCL, and XPS; compresses PDFs while preserving quality; converts to/validates PDF/A; adds an OCR text layer to scanned pages; imposition (N-up), ICC color management, and ZUGFeRD/Factur-X e-invoicing support.
Command LineLightweight C library, viewer, and CLI toolset for PDF, XPS, and e-book formats: renders and extracts text/images/metadata/structured content; creates, splits, merges, and compresses PDFs; adds annotations (highlights, stamps, shapes); permanently redacts content; digitally signs documents; converts between PDF, SVG, PNG, HTML, and PostScript; and embeds into web pages/apps.
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. Can capture live URLs or local HTML.
Handwriting notetaking application (GTK3) that annotates on top of PDFs: highlight, underline, or strike through selected/copied PDF background text, follow links in the background PDF, and export annotated notes to SVG, PNG, or PDF from the GUI or command line. Supports pen/stylus input (e.g. Wacom tablets).
C++Open-source graphical front-end for Ghostscript on Windows/Linux/macOS: views and navigates PostScript and PDF files, and converts sequences of PDF pages to image files (from bitmap through TIFF-pack formats) at selectable resolutions.
Print formatter driven by XSL Formatting Objects (XSL-FO): reads an FO tree (often produced via XSLT from semantic XML) and renders it to PDF (its primary target, targeting the PDF 1.4 spec), plus PostScript, PCL, AFP, PNG, RTF, TXT, and other outputs. Handles multi-page tables, footnotes, static page regions, and external graphics; usable standalone, embedded, via servlet, or via an Ant task.
JavaJava library and CLI toolset covering PDF creation from scratch (with embedded fonts/images); Unicode text extraction; splitting and merging; form field extraction and filling; PDF/A-1b validation via Preflight; rendering pages to PNG/JPEG; printing via the Java printing API; and digital signing.
JavaRenders well-formed XML/XHTML using CSS 2.1 layout/formatting to Swing panels, images, or PDF (via an OpenPDF-based renderer, or by delegating to a headless Chrome shell for modern HTML5/CSS3 support); also offers SWT output for Eclipse-based apps.
JavaPure-Java HTML/CSS-to-PDF/image renderer, a modernization of Flying Saucer.
Renders a practical subset of XML/XHTML/HTML5 with CSS 2.1+ (incl. CSS3 transforms, gradients, multiple backgrounds) to PDF or images, with SVG and MathML plugin support, accessible/tagged PDF output (Section 508, PDF/UA, WCAG 2.0), PDF/A compliance, font fallback and embedding, RTL/bidi text, footnotes, and file embedding via link download attributes.
Puppeteer-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.
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.
JavaScriptNode.js library that renders HTML (local strings or remote URLs) to PDF using headless Chrome/Chromium, or exports as PNG/JPEG/WebP screenshots; supports templated headers/footers, custom HTTP headers, configurable viewport/device-scale, and multiple render-completion triggers (callbacks, DOM events, timers).
JavaScriptPhantomJS-based library that converts HTML to PDF, PNG, or JPEG via a file/stream/buffer API, with paper size, orientation, margin, zoom, and header/footer options.
Node.js wrapper around PDFtk, Ghostscript, and ImageMagick for PDF manipulation: split/select/reorder/reverse pages, filter even/odd pages, join multiple PDFs, rotate (90/180/270/360°), crop (noted as unreliable), extract text and embedded images, extract metadata/properties, and render pages to PNG at a given DPI.
JavaScriptMicroservice (Puppeteer/headless Chrome) that converts URLs or posted HTML into PDFs or PNG/JPEG screenshots, with configurable viewport, PDF page size/orientation/margins/scale, header/footer templates, page-range selection, cookies/headers, SPA network-idle waiting, and optional API-key auth; deployable via Heroku or Docker.
OCR/document-ingestion library (Node/TypeScript and Python implementations) that converts PDFs, Word/Excel/PowerPoint files, and images to page images, then sends each to a vision-language model (OpenAI, Azure OpenAI, AWS Bedrock, Google Gemini, or Vertex AI) to produce Markdown, preserving tables/charts; supports structured JSON-schema extraction, page selection, concurrent processing, and orientation/edge correction.
JavaScriptNode.js module that converts PDF files into image buffers (PNG) without touching the filesystem.
JavaScriptNode.js utility for converting PDF pages to image formats, with output directly to file, base64, or buffer.
PHPConverts 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.
PHP package that drives headless Chrome (via Puppeteer) to convert a URL, HTML string, or local HTML file into a PDF or image; can also extract the rendered HTML body after JavaScript execution and list all network requests the page triggered.
PHPPHP wrapper around wkhtmltopdf/wkhtmltoimage that generates PDFs or image snapshots/thumbnails from URLs or HTML, merges multiple URLs into a single PDF, supports XSL-based tables of contents, and passes through wkhtmltox options (page size, margins, cookies, JS); includes Symfony, Laravel, and Zend Framework integrations.
PHPConverts PDFs (via ImageMagick + Ghostscript) to JPG/JPEG/PNG/WebP images: render specific or all pages, control quality/DPI/dimensions/background color, read page count and page dimensions, and handle password-protected PDFs (requires ImageMagick 7).
PHPLaravel wrapper around the Snappy library: generates PDFs or images from HTML strings, files, or Laravel views, with output to file/browser/download, wkhtmltopdf/wkhtmltoimage option passthrough (paper size, orientation, margins), and a fake mode for testing without real rendering.
PythonCompares the text layers of two PDFs and outputs the bounding boxes of changed text as JSON, then rasterizes the changed pages to a PNG with red outlines drawn around the differences.
PythonWraps Poppler's `pdftoppm`/`pdftocairo` to convert PDFs (whole documents or page ranges) into PIL Image objects: PPM/JPEG/PNG output, multi-threaded batch conversion, grayscale mode, custom sizing, and password-protected PDF support.
Python ctypes bindings to Google's PDFium: renders pages to images, extracts text, reads metadata/bookmarks/page properties, creates new PDFs and inserts images/pages, and searches for text — with both convenience helper classes and raw PDFium API access.
RR bindings for extracting content from PDFs: `pdf_text()` for per-page text, `pdf_info()` for metadata (author, creation date, tags), `pdf_toc()` for table of contents/section headers, `pdf_fonts()` for font info, embedded-attachment access, and `pdf_render_page()` to rasterize pages to bitmap (e.g. PNG/WEBP). Does not handle table extraction (recommends the `tabulizer`/`tabulapdf` package) or OCR of scanned text (recommends the `tesseract` package).
RubyRuby gem that uses Puppeteer/headless Chromium (or Firefox) to convert URLs, inline HTML, local files, or Rails view templates into PDF, PNG, or JPEG: configurable page layout/margins/viewport, cookies/headers, CSS/JS injection, cover pages, HTTP basic auth, remote-browser connections, wait conditions (network idle, element visibility), and Rack middleware for URL-extension-triggered conversion.
RubyRails-oriented gem (headless Chrome via Ferrum, no Node.js dependency) that renders HTML/URLs to PDF (`render ferrum_pdf: {}`) with paper size/margin/orientation/scale options and dynamic headers/footers, or captures PNG/JPEG screenshots (`render ferrum_screenshot: {}`) of the full page, viewport, or a CSS-selected element.
RubyGhostscript-based document API that generates documents programmatically and converts between PDF, PS, GIF, TIF, PNG, and JPG, with support for EPS templates and optimizations for handling large documents.
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).
RubyRuby gem (using ImageMagick and Ghostscript) that extracts a PDF page as an image (e.g. PNG) or as page text, reports total page count, and iterates all pages in batch, with configurable image width/density/quality/colorspace/alpha and custom processor paths.
Extracts figures, tables, captions, figure names/numbers, section titles, and in-figure text from scholarly (computer science) PDFs, with page location and bounding boxes; renders extracted figures as raster (PNG/JPEG) or vector (SVG/PS/EPS, via pdftocairo) images; supports multi-threaded batch processing and includes debugging visualization tools.