For a library for generating pdfs in C#, the strongest matches are questpdf/questpdf (QuestPDF is a powerful C library designed specifically for), uglytoad/pdfpig (This library provides robust capabilities for reading, extracting text) and hopding/pdf-lib (This is a JavaScript and TypeScript library for PDF). embedpdf/embed-pdf-viewer and wkhtmltopdf/wkhtmltopdf round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
We curate open-source GitHub repositories matching “best c sharp pdf libraries”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.
QuestPDF is a C# PDF generation library and layout engine used to create structured documents, reports, and invoices. It utilizes a fluent API and a component-based layout approach to convert code into high-fidelity PDF and XPS files. The library distinguishes itself with a dedicated layout debugger that provides real-time previews, hot-reload capabilities, and visual boundary tools to map rendered elements back to source code. It also functions as an accessibility tool, providing semantic tagging and navigational aids to ensure documents comply with international accessibility and archival s
QuestPDF is a powerful C# library designed specifically for programmatic PDF generation and layout, though it focuses on document creation rather than the manipulation or rendering of existing PDF files.
Read and extract text and other content from PDFs in C# (port of PDFBox)
This library provides robust capabilities for reading, extracting text, and analyzing PDF content in .NET, though it is primarily focused on extraction rather than full-scale document generation or rendering.
pdf-lib is a JavaScript PDF manipulation library used for creating, modifying, and editing PDF documents programmatically. It functions as a cross-runtime tool compatible with Node, Browser, Deno, and mobile JavaScript environments. The library provides a programmatic interface for document editing and form generation. It supports building interactive PDF forms, populating existing fields with custom data, and flattening forms into static content. Its broader capabilities include generating new documents from scratch, rearranging or copying pages between files, and managing document metadata
This is a JavaScript and TypeScript library for PDF manipulation, which does not provide the native C# or .NET integration required for your development environment.
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
This is a browser-based JavaScript/TypeScript PDF viewer component designed for frontend integration, rather than a C#/.NET library for programmatic PDF manipulation and generation.
wkhtmltopdf is a command-line utility that renders web pages into PDF documents or image files. It functions as a headless browser engine, utilizing the Qt WebKit rendering environment to process HTML, CSS, and JavaScript into visual representations suitable for server-side tasks. The tool distinguishes itself by translating standard web styling rules into physical page dimensions and layout constraints, allowing for the creation of structured documents from web-based source files. It supports the generation of automated tables of contents and provides granular control over document layout, i
This is a command-line utility for converting HTML to PDF rather than a native .NET library for programmatic document manipulation, text extraction, or form filling.
pdfplumber is a PDF data extraction library and layout analysis tool used to retrieve text, tables, and geometric objects from PDF files using precise coordinate-based analysis. It functions as a layout analyzer and table parser that identifies the bounding boxes and visual coordinates for every character and image on a page. The library distinguishes itself through visual debugging capabilities, allowing users to render PDF pages as images and draw annotations to verify the position of extracted data. It employs line and intersection analysis to identify cell structures and convert unstructu
This is a Python-based library for PDF data extraction and layout analysis, which does not meet the requirement for a C#/.NET library.
pdfcpu is a Go PDF processing library and command-line interface designed for programmatically manipulating, optimizing, and validating PDF files. It provides a toolkit for document content modification and structural management. The project distinguishes itself as an optimization tool and layout engine, capable of reducing file sizes and improving loading speeds by streamlining internal structures. It also functions as a security manager, providing password-based encryption, decryption, and digital signature verification. Its capability surface includes page management for merging, splittin
This is a PDF processing tool written in Go, which does not provide the native C#/.NET integration or library interface required for your development environment.
unioffice is a comprehensive document processing suite that provides a PDF document processor, an Open XML document library, a document security toolkit, and a document content extractor. It is designed to programmatically create, read, and modify Word, Excel, and PowerPoint files, as well as generate and edit PDF documents. The project is distinguished by its native language implementation of the Open XML standard, which removes native binary dependencies to simplify container deployments. It features advanced capabilities for digital document security, including hardware-based PDF signing,
This is a document processing library written in Go rather than C#/.NET, making it a cross-language alternative rather than a native library for the requested ecosystem.
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
This is a Python-based library for PDF manipulation and analysis, which does not provide the native C#/.NET interface required for your development environment.
Pdfcraft is a containerized service for self-managed PDF processing, editing, and conversion. It provides a toolkit for document manipulation, a multi-format converter, and OCR software to transform scanned documents into searchable and editable text. The project features a visual, node-based workflow editor that allows users to build automated pipelines by chaining together various PDF conversion and optimization operations. The service covers a broad range of capabilities, including document management for merging and splitting files, format conversion between PDFs and office documents or
This is a containerized service and workflow orchestration tool for PDF processing rather than a C#/.NET library that you can integrate into your own applications.
Pdfarranger is a PDF page organizer, document editor, image converter, and booklet generator. It provides a visual drag-and-drop interface to reorder, merge, split, and delete pages within PDF documents. The application includes specialized tools for creating booklet printing layouts and converting image files into PDF pages or exporting PDF pages as PNG and JPEG images. It allows for the modification of document metadata while preserving internal outlines and hyperlinks. The software covers a range of structural manipulations, including page rotation, resizing, cropping, and overlaying. It
This is a standalone desktop application with a graphical user interface rather than a programmatic library for .NET developers to integrate into their own applications.
This project is a portable document rendering engine designed to parse and display complex document layouts directly within standard web browser environments. It functions as a web-native viewer that enables the presentation of documents without requiring external software or browser plugins. The engine utilizes a canvas-based rendering layer to map document page data onto standard web drawing surfaces, ensuring high-fidelity visual output. To maintain interface responsiveness, it offloads heavy parsing and object extraction tasks to background threads. The system also employs asynchronous by
This is a JavaScript-based web rendering engine for displaying PDFs in browsers, which does not provide the C#/.NET library functionality required for programmatic document manipulation and generation.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| questpdf/questpdf | 14.1K | C# | NOASSERTION | |
| uglytoad/pdfpig | 2.5K | C# | Apache-2.0 | |
| hopding/pdf-lib | 8.5K | TypeScript | MIT | |
| embedpdf/embed-pdf-viewer | 3.3K | TypeScript | mit | |
| wkhtmltopdf/wkhtmltopdf | 14.6K | C++ | LGPL-3.0 | |
| jsvine/pdfplumber | 9.7K | Python | mit | |
| pdfcpu/pdfcpu | 8.7K | Go | Apache-2.0 | |
| unidoc/unioffice | 4.8K | Go | other | |
| pymupdf/pymupdf | 9.1K | Python | agpl-3.0 | |
| pdfcrafttool/pdfcraft | 3.1K | JavaScript | agpl-3.0 |