Convert Figma logo to code with AI

Top PDF Viewer Libraries

Top 5 Projects Compared

  1. Overview: Sumatra PDF is a free, open-source, and lightweight PDF, EPUB, MOBI, CHM, XPS, DjVu, CBZ, and CBR reader for Windows.

  2. Code Example:

var pdf = new PdfDocument("example.pdf");
var page = pdf.GetPage(1);
var image = page.Render();
  1. Pros:

    • Lightweight and fast compared to other PDF viewers.
    • Supports a wide range of document formats.
    • Provides a simple and clean user interface.
  2. Cons:

    • Limited functionality compared to more feature-rich PDF viewers.
    • Only available for Windows operating system.
    • May not have the same level of support and community as some other PDF viewer projects.

Other Projects

  1. xournalpp/xournalpp: A handwriting notetaking software with PDF annotation support, designed for stylus-based input on Tablet PCs or similar devices.
  2. wojtekmaj/react-pdf: A React component that renders PDF files in the browser using the PDF.js library.
  3. DImuthuUpe/AndroidPdfViewer: A customizable PDF viewer library for Android, with support for annotations, bookmarks, and other features.
  4. ahrm/sioyek: A PDF viewer focused on providing a distraction-free reading experience, with features like smooth scrolling and keyboard-centric navigation.
  5. ONLYOFFICE/DocumentServer: A self-hosted web-based office suite that includes a PDF viewer and editor.
  6. pdf2htmlEX/pdf2htmlEX: A tool that converts PDF files to HTML/CSS, allowing them to be displayed in web browsers.
  7. 501351981/vue-office: A Vue.js component that provides a PDF viewer and other office document viewers.
  8. emacs-eaf/emacs-application-framework: An Emacs package that includes a PDF viewer and other applications.
  9. pdfme/pdfme: A lightweight, cross-platform PDF viewer written in Rust.
  10. FranckFreiburger/vue-pdf: A Vue.js component for rendering PDF files in the browser.
  11. react-pdf-viewer/react-pdf-viewer: A React component for viewing PDF files, built on top of PDF.js.
  12. pdfpc/pdfpc: A presenter console with multi-monitor support for PDF files.
  13. elias-sundqvist/obsidian-annotator: A plugin for the Obsidian note-taking app that allows annotating PDF files.
  14. VadimDez/ng2-pdf-viewer: An Angular component for viewing PDF files in the browser.
  15. Cimbali/pympress: A dual-screen PDF presenter for Linux, Windows, and macOS.
  16. oguzhaninan/Buka: A modern, fast, and lightweight PDF reader for Linux.
  17. agentcooper/react-pdf-highlighter: A React component that provides PDF highlighting and annotation functionality.

xournalpp/xournalpp is an open-source note-taking and PDF annotation application.

// Example code (C++)
XournalView* view = new XournalView(this);
view->setZoom(1.5);
view->repaint();

Pros of xournalpp/xournalpp

  1. Supports a wide range of input devices, including styluses and graphics tablets, for natural handwriting and drawing.
  2. Provides a feature-rich set of annotation tools, including text, shapes, and freehand drawing.
  3. Allows for seamless integration with PDF documents, enabling users to annotate and take notes directly on PDF files.

Cons of xournalpp/xournalpp

  1. The user interface may be less intuitive compared to some other PDF annotation tools, especially for users unfamiliar with the application.
  2. The application may have a steeper learning curve compared to simpler PDF viewers or annotation tools.
  3. The development of xournalpp/xournalpp may be slower or less active compared to some other projects in the same space.

Other Projects

  1. sumatrapdfreader/sumatrapdf: A lightweight, open-source PDF reader for Windows.
  2. wojtekmaj/react-pdf: A React component for rendering PDF documents.
  3. DImuthuUpe/AndroidPdfViewer: A PDF viewer library for Android.
  4. ahrm/sioyek: A PDF reader and annotation tool focused on academic and technical reading.
  5. ONLYOFFICE/DocumentServer: An open-source office suite with PDF viewing and annotation capabilities.
  6. pdf2htmlEX/pdf2htmlEX: A tool for converting PDF files to HTML/CSS.
  7. 501351981/vue-office: A Vue.js component for viewing and annotating Office documents, including PDFs.
  8. emacs-eaf/emacs-application-framework: An Emacs extension that provides a PDF viewer and other applications.
  9. pdfme/pdfme: A PDF manipulation library for Node.js.
  10. FranckFreiburger/vue-pdf: A Vue.js component for rendering PDF documents.
  11. react-pdf-viewer/react-pdf-viewer: A React component for viewing PDF documents.
  12. pdfpc/pdfpc: A presenter console with multi-monitor support for PDF files.
  13. elias-sundqvist/obsidian-annotator: A plugin for the Obsidian note-taking app that adds PDF annotation capabilities.
  14. VadimDez/ng2-pdf-viewer: An Angular component for viewing PDF documents.
  15. Cimbali/pympress: A dual-screen PDF presenter for Linux.
  16. oguzhaninan/Buka: A modern, open-source e-book reader for Linux.
  17. agentcooper/react-pdf-highlighter: A React component for highlighting and annotating PDF documents.

A React component for rendering PDF files.

Code Example

import React from 'react';
import { Document, Page } from 'react-pdf';

function App() {
  return <Document file="example.pdf"><Page /></Document>;
}

Pros

  • Ease of Use: wojtekmaj/react-pdf provides a simple and straightforward API for integrating PDF viewing into React applications.
  • Cross-Platform: The library works across various platforms, including web, mobile, and desktop.
  • Active Development: The project has an active community and is regularly maintained, with frequent updates and bug fixes.

Cons

  • Limited Features: Compared to some other PDF viewer projects, wojtekmaj/react-pdf may have a more limited set of features and customization options.
  • Performance: Depending on the complexity of the PDF files and the user's device, the performance of the PDF viewer may not be as optimal as some other solutions.
  • Dependency on React: The library is tightly coupled with the React ecosystem, which may be a limitation for developers not using React.

DImuthuUpe/AndroidPdfViewer is an open-source Android library that provides a customizable PDF viewer for Android applications.

Code Example for DImuthuUpe/AndroidPdfViewer

PdfView pdfView = findViewById(R.id.pdfView);
pdfView.fromAsset("sample.pdf")
       .defaultPage(0)
       .load();

Pros of DImuthuUpe/AndroidPdfViewer

  1. Customizable: DImuthuUpe/AndroidPdfViewer allows for a high degree of customization, enabling developers to tailor the PDF viewer to their specific needs.
  2. Lightweight: The library is relatively lightweight, making it suitable for integration into a wide range of Android applications.
  3. Active Development: The project has an active community and is regularly updated, ensuring ongoing support and improvements.

Cons of DImuthuUpe/AndroidPdfViewer

  1. Limited Features: Compared to some of the other projects, DImuthuUpe/AndroidPdfViewer may lack certain advanced features, such as annotation support or complex rendering capabilities.
  2. Android-Specific: As an Android-focused library, DImuthuUpe/AndroidPdfViewer may not be suitable for cross-platform development or integration with non-Android environments.
  3. Smaller Community: While active, the project's community is smaller than some of the more established PDF viewer projects, which may result in fewer resources and support options.

ahrm/sioyek is a PDF viewer and annotator with a focus on keyboard-centric navigation and customization.

Code Example for ahrm/sioyek

from sioyek import SioyekPdfViewer

viewer = SioyekPdfViewer()
viewer.open_pdf("example.pdf")

Pros of ahrm/sioyek

  1. Highly customizable keyboard shortcuts and interface, allowing for efficient navigation and annotation.
  2. Supports advanced features like bookmarks, annotations, and custom scripts.
  3. Designed with a focus on productivity and minimalism, providing a distraction-free reading experience.

Cons of ahrm/sioyek

  1. Smaller user base compared to some other popular PDF viewers, potentially limiting community support and resources.
  2. May have a steeper learning curve for users unfamiliar with keyboard-centric interfaces.
  3. Limited support for advanced features like form filling or digital signatures, which may be important for certain use cases.

All Top Projects

sumatrapdfreader's avatar

sumatrapdf

13,350

SumatraPDF reader

xournalpp's avatar

xournalpp

10,906

Xournal++ is a handwriting notetaking software with PDF annotation support. Written in C++ with GTK3, supporting Linux (e.g. Ubuntu, Debian, Arch, SUSE), macOS and Windows 10. Supports pen input from devices such as Wacom Tablets.

wojtekmaj's avatar

react-pdf

9,266

Display PDFs in your React app as easily as if they were images.

DImuthuUpe's avatar

AndroidPdfViewer

8,115

Android view for displaying PDFs rendered with PdfiumAndroid

ahrm's avatar

sioyek

6,978

Sioyek is a PDF viewer with a focus on textbooks and research papers

ONLYOFFICE's avatar

DocumentServer

4,741

ONLYOFFICE Docs is a free collaborative online office suite comprising viewers and editors for texts, spreadsheets and presentations, forms and PDF, fully compatible with Office Open XML formats: .docx, .xlsx, .pptx and enabling collaborative editing in real time.

pdf2htmlEX's avatar

pdf2htmlEX

3,687

Convert PDF to HTML without losing text or format.

501351981's avatar

vue-office

3,600

支持word(.docx)、excel(.xlsx,.xls)、pdf等各类型office文件预览的vue组件集合,提供一站式office文件预览方案,支持vue2和3,也支持React等非Vue框架。Web-based pdf, excel, word preview library

emacs-eaf's avatar

emacs-application-framework

3,045

EAF, an extensible framework that revolutionizes the graphical capabilities of Emacs

pdfme's avatar

pdfme

2,476

Open-source PDF generation library built with TypeScript and React. Features a WYSIWYG template designer, PDF viewer, and powerful generation capabilities. Create custom PDFs effortlessly in both browser and Node.js environments.

FranckFreiburger's avatar

vue-pdf

2,205

vue.js pdf viewer

react-pdf-viewer's avatar

react-pdf-viewer

2,203

A React component to view a PDF document

Visual Copilot logoVisual Copilot
Promo

Turn Figma designs into high-quality code using AI

pdfpc's avatar

pdfpc

1,540

A presenter console with multi-monitor support for PDF files.

elias-sundqvist's avatar

obsidian-annotator

1,467

A plugin for reading and annotating PDFs and EPUBs in obsidian.

VadimDez's avatar

ng2-pdf-viewer

1,298

📄 PDF Viewer Component for Angular

Cimbali's avatar

pympress

1,144

Pympress is a simple yet powerful PDF reader designed for dual-screen presentations

oguzhaninan's avatar

Buka

1,088

Buka is a modern software that helps you manage your ebook at ease.

agentcooper's avatar

react-pdf-highlighter

1,031

Set of React components for PDF annotation