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

Linda Hamilton
リリース: 2024-10-20 06:24:29
オリジナル
831 人が閲覧しました

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 サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!