PDF ファイルはドキュメント共有用に広く普及している形式ですが、場合によってはサイズが大きくなり、読み込み時間が遅くなり、ストレージ要件が増加することがあります。 PDF ファイルの最適化は、特に Web アプリケーションでシームレスなユーザー エクスペリエンスを確保するために不可欠です。したがって、このブログ投稿では、JavaScript を使用して PDF ファイルを最適化する方法を検討します。
- PDFを最適化するためのJavaScriptライブラリ
- JavaScript で PDF を最適化する
- PDF の最適化で Web ワーカーを使用する
- JavaScript で PDF リソースを最適化する
PDFを最適化するためのJavaScriptライブラリ
JavaScript アプリケーションでの PDF の最適化には、Aspose.PDF for JavaScript を使用します。これは、開発者が JavaScript を使用して PDF ファイルを処理、操作、最適化できる強力なライブラリです。それでは、まずライブラリをインストールすることから始めましょう。
ライブラリをダウンロードし、Aspose.PDF for JavaScriptをインストールする方法に記載されているインストール手順に従います。
JavaScript で PDF を最適化する
PDF の最適化プロセスに入る前に、PDF ファイルの最適化がなぜ重要なのかを理解しましょう。
- 読み込み時間の短縮: 最適化された PDF は読み込み時間が短縮され、待ち時間が短縮されてユーザー エクスペリエンスが向上します。
- 帯域幅の効率: ファイル サイズが小さいほど帯域幅の消費量が削減され、PDF の共有とダウンロードが容易になります。
- 記憶域スペース: 最適化された PDF は、占有記憶域スペースが少なくなります。これは、大量のドキュメントを扱う場合に特に重要です。
以下の手順に従って、PDF ファイルを最適化するスクリプトを作成しましょう。
- まず、最適化する必要がある PDF ファイルを選択します。
- 次に、ファイルを読み取るための FileReader オブジェクトを作成します。
- その後、AsposePdfOptimize 関数を呼び出して PDF を最適化します。この関数のパラメータには、結果の PDF ファイルの名前が含まれます。
- AsposePdfOptimize 関数は JSON オブジェクトを返し、json.errorCode を使用して PDF ファイルが正常に最適化されているかどうかを確認できます。エラー コードが 0 の場合、PDF は問題なく最適化されています。それ以外の場合は、json.errorText から読み取ることができるエラーが発生しています。
- 最後に、DownloadFile 関数を呼び出して、最適化された PDF ファイルへのリンクを生成します。
次のコード スニペットは、JavaScript で PDF ファイルを最適化する方法を示しています。
var ffileOptimize = function (e) {
const file_reader = new FileReader();
file_reader.onload = (event) => {
/*optimize a PDF-file and save the "ResultOptimize.pdf"*/
const json = AsposePdfOptimize(event.target.result, e.target.files[0].name, "ResultOptimize.pdf");
if (json.errorCode == 0) document.getElementById('output').textContent = json.fileNameResult;
else document.getElementById('output').textContent = json.errorText;
/*make a link to download the result file*/
DownloadFile(json.fileNameResult, "application/pdf");
};
file_reader.readAsArrayBuffer(e.target.files[0]);
};
PDF の最適化で Web Worker を使用する
前のセクションでは、PDF をロードして最適化し、結果の PDF をダウンロードするだけでした。次に、Web ワーカーを使用して、最適化プロセスをよりスムーズにし、UI スレッドがブロックされるのを防ぎましょう。次のスクリプトは、前のセクションで作成した PDF 最適化機能を使用する Web ワーカーの作成方法を示しています。
/*Create Web Worker*/
const AsposePDFWebWorker = new Worker("AsposePDFforJS.js");
AsposePDFWebWorker.onerror = evt => console.log(`Error from Web Worker: ${evt.message}`);
AsposePDFWebWorker.onmessage = evt => document.getElementById('output').textContent =
(evt.data == 'ready') ? 'loaded!' :
(evt.data.json.errorCode == 0) ?
`Result:\n${DownloadFile(evt.data.json.fileNameResult, "application/pdf", evt.data.params[0])}` :
`Error: ${evt.data.json.errorText}`;
/*Event handler*/
const ffileOptimize = e => {
const file_reader = new FileReader();
file_reader.onload = event => {
/*Optimize a PDF-file and save the "ResultOptimize.pdf" - Ask Web Worker*/
AsposePDFWebWorker.postMessage(
{ "operation": 'AsposePdfOptimize', "params": [event.target.result, e.target.files[0].name, "ResultOptimize.pdf"] },
[event.target.result]
);
};
file_reader.readAsArrayBuffer(e.target.files[0]);
};
/*Make a link to download the result file*/
const DownloadFile = (filename, mime, content) => {
mime = mime || "application/octet-stream";
var link = document.createElement("a");
link.href = URL.createObjectURL(new Blob([content], {type: mime}));
link.download = filename;
link.innerHTML = "Click here to download the file " + filename;
document.body.appendChild(link);
document.body.appendChild(document.createElement("br"));
return filename;
}
JavaScript で PDF リソースを最適化する
PDF ファイルを最適化するもう 1 つの方法は、未使用のリソースを削除し、共通のリソースを 1 つのオブジェクトに結合することです。 PDF リソースを最適化するために、Aspose.PDF は AsposePdfOptimizeResource 関数を提供します。次のコード スニペットは、JavaScript で PDF リソースを最適化する方法を示しています。
var ffilePdfOptimizeResource = function (e) {
const file_reader = new FileReader();
file_reader.onload = (event) => {
/*Optimize resources a PDF-file and save the "ResultPdfOptimizeResource.pdf"*/
const json = AsposePdfOptimizeResource(event.target.result, e.target.files[0].name, "ResultPdfOptimizeResource.pdf");
if (json.errorCode == 0) document.getElementById('output').textContent = json.fileNameResult;
else document.getElementById('output').textContent = json.errorText;
/*Make a link to download the result file*/
DownloadFile(json.fileNameResult, "application/pdf");
};
file_reader.readAsArrayBuffer(e.target.files[0]);
};
無料の JavaScript PDF ライブラリを入手
無料の一時ライセンスを取得 すると、JavaScript PDF 最適化ライブラリを制限なく使用できます。
結論
PDF ファイルの最適化は、Web アプリケーションで最適なパフォーマンスとユーザー エクスペリエンスを確保するために重要です。 Aspose.PDF for JavaScript は、PDF ドキュメントを効率的に最適化するための強力なツール セットを提供します。このブログ投稿では、JavaScript を使用して PDF ファイルを最適化する簡単に実装できる方法を紹介しました。この PDF 最適化方法を使用すると、Web アプリケーションにおける全体的なドキュメント管理を大幅に改善できます。
JavaScript PDF ライブラリの詳細については、ドキュメント をご覧ください。ご質問がある場合は、フォーラム 経由で共有してください。