PDF.jsをカスタマイズする方法

Linda Hamilton
Linda Hamiltonオリジナル
2024-10-20 06:24:29940ブラウズ

How to customize PDF.js

PDF.js は、頻繁に更新され、新しい機能が追加されている優れたオープンソース プロジェクトですが、見た目が醜い、あるいは時代遅れに見えると言えます。 PDF.js から最新の PDF 機能と修正を入手しながら、プレゼンテーション側の見た目を洗練させてみてはいかがでしょうか?

PdfJsKit の PDF ビューアは目立たず、PDF.js のコードを直接変更しません。PDF.js を iframe に含めるだけで、実行時に HTML、JS、CSS をオーバーライドして、洗練されたモダンな外観と優れた UI を提供します。構造や使いやすさ、新機能など。こうすることで、いつでも PDF.js を簡単に最新バージョンに更新し、すべてのバグ修正や改善を得ることができます。

PDF.js に基づく他の PDF ビューアは、通常、デフォルトの外観を更新しません。また、コンポーネントに分割されているものの部分的に実装されているために機能が欠けている、または不適切な/部分的な API を提供しているものは通常は更新されません。

はじめる

パッケージをプロジェクトにインストールします:

npm install pdfjskit

パッケージがインストールされる(またはバージョンが更新される)と、PdfJsKitで使用されるアセット(CSS、画像など)がnode_modulespdfjskitdistpdfjskitからpublicpdfjskitに自動的にコピーされます。プロジェクトのパブリック サブディレクトリは Web アセットの一般的な場所ですが、JS フレームワークのディレクトリ構造が異なる場合は、アセットを別の場所に移動できます。

デフォルトでは、PdfJsKit はホスト ページに相対的な pdfjskit サブディレクトリからアセットを読み込みますが、カスタム libraryPath オプションを PdfViewer コンストラクターに渡すことでこのパスを変更できます。

使用法

import PdfViewer from "pdfjskit";

var pdfViewer = new PdfViewer({
  documentUrl: "pdfjskit/sample.pdf",
  width: "80%",
  height: 720,
  resizable: true,
  language: "en-US",
  theme: "slate, classic-dark"
});

pdfViewer.render(document.getElementById("container"));

NPM パッケージには ES6 モジュール pdfjskit.min.mjs が含まれており、スクリプト バージョン pdfjskit.min.js も GitHub dist/pdfjskit ディレクトリとここで提供されている開発者パッケージで提供されていることに注意してください。

Vite を使用したプレーン JS プロジェクトでの PdfJsKit の使用

PdfJsKit では任意の JS フレームワーク (React、Vue、Angular、Svelte、Blazor など) を使用できますが、この投稿では簡単にするために、プレーンな JS プロジェクトの使用法を示します。

プレーンな JS プロジェクトの場合は、Vite を使用することをお勧めします。この方法では、HTML ファイルのモジュールから簡単にインポートできます。

  1. Vite プロジェクト テンプレートを作成します:

    npm create vite@latest
    

    設定を選択します:

    ✔ Project name: … pdfjskit-vite-example
    ✔ Select a framework: › Vanilla
    ✔ Select a variant: › JavaScript
    
  2. プロジェクト名のサブディレクトリが作成されます。次の手順を実行します。

    cd pdfjskit-vite-example
    npm install
    npm install pdfjskit
    
  3. index.html を編集し、内容を次のように置き換えます:

    <!DOCTYPE html>
    <html>
      <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
        <title>PdfJsKit Vite Example</title>
      </head>
      <body>
    
        <div id="container"></div>
    
        <script type="module">
          import PdfViewer from "pdfjskit";
    
          var pdfViewer = new PdfViewer({
            documentUrl: "pdfjskit/sample.pdf",
            width: "80%",
            height: 720,
            resizable: true,
            language: "en-US",
            theme: "slate, classic-dark"
          });
    
          pdfViewer.render(document.getElementById("container"));
        </script>
    
      </body>
    </html>
    
  4. これで開発 Web サーバーを実行できるようになります:

    npm run dev
    

    表示される内容:

    ➜  Local:   http://localhost:5173/
    ➜  Network: use --host to expose
    ➜  press h + enter to show help    
    

    CTRL キーを押しながらローカル URL をクリックしてブラウザを起動します。
    ページ内に PDF Viewer がレンダリングされていることがわかります。

ドキュメント

  • HTML API ドキュメント
  • Markdown API ドキュメント
  • ナレッジベース

ライブデモ

  • モジュールバンドルテスト
  • スクリプト バンドル テスト

リンク:

  • GitHub
  • 故宮

以上がPDF.jsをカスタマイズする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。