Node.js は、JavaScript を実行するためのオープン ソース プラットフォームです。サーバー側で JavaScript コードを実行できます。その効率性と拡張性により、多くの開発者の最初の選択肢となっています。 Node.js には、さまざまな機能を簡単に実装できる非常に強力なパッケージとライブラリがいくつかあります。その中で今回紹介する機能はPDFファイルを画像に変換する機能で、関係するパッケージはpdf-poppler
とgm
です。
PDF を画像に変換する前に、次の環境をインストールする必要があります:
次に、最初に必要な 2 つのパッケージをインストールし、ターミナルを開き、プロジェクト ディレクトリで次のコマンドを実行します:
npm install pdf-poppler gm --save
インストールが完了したら、これら 2 つのパッケージを使用して、PDF を画像に変換する機能の実装を開始できます。
PDF ファイルを画像に変換するプロセスは次のとおりです:
具体的な実装手順とサンプル コードを以下に示します。
const pdfPoppler = require('pdf-poppler'); const pdfPath = './example.pdf'; const opts = { format: 'jpeg', out_dir: './tmp', out_prefix: 'converted', page: null }; pdfPoppler.convert(pdfPath, opts) .then(() => { console.log('PDF转换完成'); }) .catch((err) => { console.error(err); });
コードの説明:
const gm = require('gm').subClass({imageMagick: true}); const imageMagick = gm.subClass({imageMagick: true}); const path = require('path'); const fs = require('fs'); const PDFImage = require('pdf-image').PDFImage; const pdfPath = './example.pdf'; const pdfImage = new PDFImage(pdfPath); pdfImage.convertPage(0).then(function (imagePath) { const filePath = path.join('./tmp', 'converted-0.jpg'); // 处理图片 imageMagick(imagePath) //.... .write(filePath, function (err) { if (!err) { console.log('图片生成成功'); } }); }).catch(function (err) { console.error(err); });
は画像処理に使用されます。
モジュールと
fs モジュールは、ファイルの読み取りとパスの処理に使用されます。
モジュールを使用して、PDF ファイルを画像に変換できます。
メソッドは、PDF ページを画像に変換するために使用されます。
imageMagick(imagePath) .resize(800) .quality(90) .write(filePath, function (err) { if (!err) { console.log('图片生成成功'); } });
メソッドは、画像のサイズを変更するために使用されます。
メソッドは画質を調整するために使用されます。
const pdfPoppler = require('pdf-poppler'); const gm = require('gm').subClass({imageMagick: true}); const imageMagick = gm.subClass({imageMagick: true}); const path = require('path'); const fs = require('fs'); const PDFImage = require('pdf-image').PDFImage; const pdfPath = './example.pdf'; const opts = { format: 'jpeg', out_dir: './tmp', out_prefix: 'converted', page: null }; pdfPoppler.convert(pdfPath, opts) .then(() => { console.log('PDF转换完成'); const pdfImage = new PDFImage(pdfPath); pdfImage.convertPage(0).then(function (imagePath) { const filePath = path.join('./tmp', 'converted-0.jpg'); imageMagick(imagePath) .resize(800) .quality(90) .write(filePath, function (err) { if (!err) { console.log('图片生成成功'); } }); }).catch(function (err) { console.error(err); }); }) .catch((err) => { console.error(err); });
以上がNodejs PDFから画像への詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。