概要
PDF.jsは、PDFをJavaScriptで解析し、HTML5 Canvas等へ描画するMozilla支援のPDF viewer基盤です。完成済みviewerを使うことも、`getDocument`等のdisplay APIから独自viewerへ組み込むこともできます。
特徴と向いている用途
公式資料に基づく紹介・実機未検証 · 内容確認日:
PDF documentを読み込みpage単位で解析・描画する
getDocumentでPDFを読み込み、page情報や描画処理を取得して独自viewerへ組み込めます。
完成済みviewerと低水準display APIを選ぶ
Firefoxにも組み込まれるviewer UIを基準にする方法と、pdfjs-distのAPIから必要な描画機能だけ利用する方法があります。
出典:[2]
Web application内でPDFを表示・検索・操作するviewer基盤に
browser内でPDFを表示し、page navigationやtext layer等をapplication UIへ統合したい場合に向きます。
出典:[2]
worker・browser対応・bundle sizeを設計する
production利用ではworker fileの配置、modern/legacy build、large PDFのmemory usage等を確認してください。PDF編集libraryではありません。
参考にした公式資料
- [1]mozilla/pdf.js repository(2026-09-21)
- [2]PDF.js README(2026-09-21)
- [3]PDF.js getDocument example(2026-09-21)
- [4]PDF.js development package metadata(2026-09-21)
- [5]PDF.js Apache-2.0 license(2026-09-21)
編集部からの補足
最新GitHub releaseは6.3.289です。repository本体は開発sourceで、application利用では通常pre-builtの`pdfjs-dist`を使います。PDF.jsはPDFの表示・解析が中心で、既存PDFの作成・編集を目的とするpdf-libとは役割が異なります。
3ステップで試す
- 1
配布packageを追加
application利用ではrepository sourceではなくpre-builtのpdfjs-distを使います。
npm install pdfjs-dist - 2
Node例としてPDFを読み込む
公式Node exampleと同じAPIでlocal PDFを読み込みます。
import { getDocument } from 'pdfjs-dist/legacy/build/pdf.mjs' - 3
page数を確認
PDFの解析ができることを確認し、browser viewerへ進む場合はworker構成を別途設定します。
const pdf = await getDocument('sample.pdf').promise; console.log(pdf.numPages)
成長
成長の推移 · 直近30日
53,903 Stars
推移データを蓄積中です。
開発アクティビティ
直近90日・週次
- Commit(直近30日)
- 277
- Open PR
- 60
開発アクティビティを蓄積中です。
Built with
カテゴリとタグ
カテゴリ
GitHubデータ
GitHubのデータGitHubの詳細データを見る
- Stars
- 53,903
- Forks
- 10,686
- Watchers
- 1,096
- Open Issues
- 370
- Contributors
- 387
- 主要言語
- JavaScript
- ライセンス
- Apache-2.0
- リポジトリ最終更新
- 2026/09/20
関連情報
関連記事を投稿するこのOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。
あわせて探訪
- React250,613 Stars
共通タグ 1件 · 共通カテゴリ 1件 · 同じ言語
宣言的なコンポーネントでWebとネイティブのUIを構築するJavaScriptライブラリ。
JavaScript - Node.js122,023 Stars
共通タグ 1件 · 共通カテゴリ 1件 · 同じ言語
JavaScriptをserver・CLI・build toolingへ広げ、CurrentとLTSを分けて運用するcross-platform runtime。
JavaScript - Axios109,206 Stars
共通タグ 1件 · 共通カテゴリ 1件 · 同じ言語
browserとNode.jsで共通利用でき、interceptor・adapter・cancellationまで備えるPromiseベースHTTP client。
JavaScript - Svelte88,157 Stars
共通タグ 1件 · 共通カテゴリ 1件 · 同じ言語
コンポーネントをビルド時にJavaScriptへ変換し、runesで状態と表示を扱うWeb UIフレームワーク。
JavaScript - Prettier52,287 Stars
共通タグ 1件 · 共通カテゴリ 1件 · 同じ言語
source codeをparseし、自身のruleで一貫したlayoutへ再出力するopinionated formatter。
JavaScript
情報の誤りを報告
掲載内容に誤りや古い情報があればお知らせください。