30 open-source projects similar to kozea/weasyprint, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
PyMuPDF is a comprehensive PDF manipulation library and document analysis tool. It serves as a text extraction tool, OCR engine, and image converter, providing a programmatic interface to edit, merge, split, and optimize PDF and Office documents. The project distinguishes itself through high-performance capabilities, including the use of C-bindings for low-level manipulation and parallelized page processing to accelerate workloads. It provides specialized conversion paths, such as transforming PDF content into Markdown for retrieval-augmented generation and large language model pipelines. It
mPDF is a PHP library that transforms UTF-8 encoded HTML and CSS into formatted PDF documents. It serves as a PDF generation engine and document architect capable of converting web pages and HTML forms into professional files. The project is distinguished by its multilingual rendering capabilities, providing comprehensive support for bidirectional text, right-to-left scripts, and CJK languages using Unicode font embedding and OpenType layout processing. It further enables professional print-ready design through advanced color modeling in CMYK, precise page dimensioning, and compliance with PD
Gutenberg is a CSS print formatting framework and web-to-PDF layout engine. It provides a system for managing stylesheets, element visibility, and structural layout rules to ensure web content maintains a consistent visual structure when converted to physical documents or PDF files. The project manages print-specific rendering through a stylesheet manager that filters out non-essential interface elements and prevents the automatic expansion of URLs. It includes utilities to enforce the rendering of background colors and images, which browsers typically strip during the printing process. The
Sphinx is an extensible documentation framework and multi-format document publisher. It serves as a technical content organizer that converts reStructuredText markup and Python source code comments into structured documentation for technical projects. The system transforms a single set of markup files into multiple output formats, including HTML, LaTeX, EPUB, and Texinfo. It functions as a Python API documentation tool, extracting documentation directly from source code to maintain synchronized technical reference manuals. The framework organizes complex information into hierarchies with aut
Dompdf is a PHP library that functions as a document rendering engine, transforming HTML and CSS markup into portable document files. It operates by parsing web-based layout attributes and visual properties to generate static documents suitable for reports, invoices, or archival purposes. The library distinguishes itself by integrating a resource-fetching pipeline that retrieves external stylesheets and images to maintain visual fidelity. It also supports the execution of server-side scripts during the document creation process, allowing for the injection of dynamic data and custom logic into
Tablib is a Python library designed for importing, exporting, and manipulating tabular datasets. It functions as a multi-format data converter and manager, allowing users to move information between different file standards. The library supports data transformation across CSV, JSON, YAML, and Excel formats. It provides a programmatic interface to manage these datasets by adding rows, filtering columns, and segregating records. The system uses a common internal representation and adapter-based mapping to normalize diverse input sources. This allows for consistent reading and writing routines
xlwings - Make Excel fly with Python!
This project is an AI-powered document processing engine designed to transform diverse file formats into structured Markdown. By leveraging multimodal language models, it performs complex layout analysis and semantic text extraction, allowing for the conversion of both unstructured files and scanned images into machine-readable content. The toolkit distinguishes itself through a modular, plugin-based architecture that orchestrates multi-stage extraction pipelines. Users can steer the parsing behavior by injecting custom instructions, enabling the system to adapt to domain-specific document st
python-docx is an OOXML document manipulation library used for creating, reading, and updating Microsoft Word files. It functions as a generator for building formatted documents and a parser for extracting text, metadata, and structural elements from existing files. The project provides a comprehensive style management system for defining and applying character, paragraph, and table styles within OpenXML documents. It allows for the programmatic control of document appearance through an object-oriented approach to the underlying XML schema. Capabilities cover a wide range of document generat
ReLaXed is a document workflow and compilation system that transforms Markdown, JSON data, and HTML/CSS into print-ready PDF files. It utilizes a headless browser engine to render web technologies into final documents, serving as a build system for technical documentation and dynamic reports. The project features a pipeline that automates asset generation, allowing scripts to produce images, charts, and tables from raw data files during the build process. It supports the integration of LaTeX formulas for mathematical equations and converts CSV files into formatted HTML tables. The system inc
This project is a Laravel integration for the Dompdf rendering engine, providing a tool to convert HTML and CSS templates into PDF documents. It functions as a wrapper that allows Laravel applications to generate downloadable or streamable PDF files from web-standard content. The library includes specialized tools for producing PDF/A-3b compliant documents intended for long-term electronic preservation. This archival capability includes the ability to embed XML metadata and attachments, which supports electronic invoicing standards for digital business transactions. The software covers a bro
This project provides a markdown penetration testing report template and a set of utilities for converting security documentation into formatted PDF reports. It serves as a security certification documentation template designed to meet professional reporting standards for certifications such as the OSCP. The toolkit includes a markdown to PDF report generator that uses static CSS styling for code block highlighting and a specialized exam submission packaging tool. This packaging utility compresses report files into archives and generates integrity hashes to ensure data consistency during subm
html2pdf.js is a client-side JavaScript library used to convert HTML elements and webpages into downloadable PDF documents. It operates entirely within the browser, removing the need for a backend server to generate files. The library employs a conversion pipeline that renders HTML to a canvas before generating the final PDF layout. This process includes the ability to preserve active hyperlinks by overlaying clickable regions on anchor tags and managing page breaks through specific style rules or selectors. Users can configure document appearance through settings for page margins, filenames
This project is a web-based resume builder and document designer used to create professional CVs. It integrates a visual editor with a template system and PDF generation to transform structured professional history into polished documents. The tool features a template-based editor with predefined professional design themes, allowing users to switch layouts and color schemes without losing content. It supports custom template creation and the embedding of industry-standard icon sets to personalize the visual presentation. The system manages document design through a reactive interface and sty
OpenPDF is a Java library and document processor used for creating, editing, rendering, and encrypting PDF documents. It functions as a toolkit for generating new files from scratch, modifying existing document structures, and extracting text content. The project includes a dedicated engine for transforming HTML and CSS content into PDF documents by parsing markup and applying styles. It also provides a rendering engine to convert PDF pages into image formats for thumbnails and previews, alongside a security utility for protecting content via document encryption. The library supports the add
This project is a browser rendering service and headless Chrome PDF generator built on Puppeteer. It functions as a backend tool for converting web pages and raw HTML content into PDF documents and screenshots. The service distinguishes itself through browser session control, allowing for the injection of session cookies and the configuration of navigation timeouts to handle authenticated pages. It also includes viewport-based layout scaling to adjust browser dimensions and device scale factors during the rendering process. The broader capability surface covers HTML content export and automa
Snappy is a PHP library that acts as a wrapper for the wkhtmltopdf and wkhtmltoimage binaries. It provides a utility suite for transforming HTML strings and remote URLs into PDF documents and image snapshots. The project enables the generation of downloadable or streamable PDFs and the creation of web page thumbnails. It supports the aggregation of multiple separate URLs into a single unified PDF document. Users can adjust document output through configuration settings for JavaScript execution, cookie handling, background removal, and custom stylesheet application.
pdfmake is a JavaScript PDF generation library and declarative document engine that transforms structured JavaScript objects into formatted PDF files. It functions as a layout engine capable of producing documents on both the client side within a web browser and on the server side using Node.js. The library utilizes a declarative approach to translate object-based document definitions into final PDFs. It distinguishes itself through a virtual layout engine that calculates element positions and page breaks and an inheritance-based style system that uses dictionaries to maintain visual consiste
Invoify is a browser-based billing tool and invoice generator built with Next.js and TypeScript. It provides a web interface for designing, creating, and managing professional billing documents for clients. The application features a professional invoice designer with live previews and layout templates. It allows for the direct generation of portable document format files and includes an integrated email service for automated invoice delivery to recipients. The system manages billing data through local browser storage and supports exporting invoice information into PDF, JSON, and CSV formats
This library provides a framework for constructing professional PDF documents using declarative component syntax. It functions as a document engine that transforms component trees into structured files, allowing developers to define layouts, headers, footers, and margins through standard component structures rather than proprietary markup languages. The tool distinguishes itself by enabling server-side synthesis of dynamic data, which allows for the automated generation of personalized documents from live information sources. It maps web-standard styling and layout properties into the fixed-p
Blitz is an HTML and CSS rendering engine and native UI framework designed to translate web-standard markup into visual interfaces for native applications. It functions as a layout engine that converts raw HTML strings into a structured object model for programmatic rendering. The project implements a web-standard layout engine using Flexbox and Grid models to compute element positions and sizes. It includes a dedicated SVG graphics renderer for displaying scalable vector graphics embedded within HTML-based layouts. The framework covers native windowing integration and system accessibility t
Embed PDF Viewer is a browser-based PDF rendering library that uses a WebAssembly port of the PDFium engine to display documents entirely on the client side, with no server-side processing required. It provides a framework-agnostic core engine layer that manages the PDF document lifecycle, memory allocation, and WebAssembly resource cleanup, with dedicated integration hooks for React and Vue 3 that handle initialization, document loading, and reactive state management. The library offers both a pre-built, embeddable viewer that can be inserted into any web page with a single initialization ca
RmlUi is a cross-platform UI renderer and middleware library that enables the creation of user interfaces using a subset of HTML and CSS. It functions as a rendering-agnostic layer designed to integrate web-standard layout and styling into custom game engines and embedded applications. The framework is distinguished by its integration of Lua for dynamic logic and control, as well as a specialized toolkit for rendering SVG images and Lottie animations. It utilizes a pluggable rendering backend that decouples geometry generation from the final display, allowing it to generate textured geometry
Yoga is a cross-platform layout engine and embeddable core that determines the dimensions and offsets of hierarchical element trees. It provides a C++ implementation of the Flexbox layout model to calculate element positions and sizes based on web standards, ensuring a uniform appearance across diverse devices and operating systems. The engine is designed for portability via a C API, allowing the layout logic to be integrated into various host languages and platforms. It utilizes an incremental layout system that identifies modified subtrees and recalculates positions only for changed nodes a
pdfkit is a JavaScript PDF generation library used to programmatically create binary PDF documents in Node.js and browser environments. It functions as a vector graphics engine for rendering paths, shapes, gradients, and tiling patterns, and as a tool for producing rich text and tagged documents that follow international accessibility standards for screen reader compatibility. The library includes a security and encryption utility for applying document encryption and restricting user permissions regarding printing, copying, or editing. It also serves as a form and annotation tool, enabling th
Browsershot is a PHP library that serves as a Puppeteer browser wrapper to convert HTML and URLs into PDFs, images, or strings using a headless Chrome browser. It functions as a tool for transforming web content into visual media or extracting the final rendered DOM state of a page. The library enables the automation of browser rendering to generate PDFs and screenshots from web pages. It can retrieve the final rendered HTML markup after all client-side JavaScript execution is complete and can capture a full audit of network requests triggered during the page load process. The system include
HTML-Renderer is a managed C# library that processes HTML and CSS content to render desktop user interfaces, generate image files, and export PDF documents. Built entirely in managed code without external native dependencies, the library parses markup into a structured document object model, applies cascading style rules, and computes virtual box layouts directly in memory. The rendering pipeline features a direct bitmap rasterisation engine that draws styled layouts straight onto graphics targets and document canvases, along with a dedicated pagination engine that splits continuous layouts a
Clay is a header-only layout engine designed for C and C++ applications that computes element positions and dimensions using a declarative box model. By operating as an immediate-mode framework, it calculates interface geometry dynamically on every frame, allowing for the creation of responsive and fluid user interfaces without maintaining persistent state. The library functions as a platform-agnostic tool that decouples layout logic from specific graphics backends. It provides a flexible coordinate system that supports layered elements, such as modals and tooltips, alongside standard documen
Jsoup is a Java library designed for parsing, extracting, and manipulating HTML and XML content. It provides a document object model that represents web content as a hierarchical tree, allowing for programmatic navigation and modification of elements, attributes, and text. The library functions as a toolkit for web scraping, enabling the retrieval of remote content via standard web protocols and the management of HTTP sessions for automated form interaction. The library distinguishes itself through its fault-tolerant tokenization, which reconstructs valid document structures from malformed or
Virtual-dom is a rendering engine and library designed for building declarative user interfaces. It functions by maintaining a lightweight tree representation of the document structure, which serves as a blueprint for synchronizing the application state with the browser display. The library performs virtual DOM reconciliation by comparing two tree structures to calculate the minimal set of modifications required to update the interface. Once these differences are identified, it applies patches directly to the live document object model to ensure the screen reflects the latest state with minim