javascriptnode.jsnpmpdf.jspdfjs-dist

How to run the pdf.js node examples?


I am trying to run the pdf.js node examples, e.g. getinfo.js. However it fails with

C:\Repositories\pdf.js>node getinfo.js
node:internal/modules/cjs/loader:1080
  throw err;
  ^

Error: Cannot find module 'pdfjs-dist/legacy/build/pdf.js'
Require stack:
- C:\Repositories\pdf.js\getinfo.js
    at Module._resolveFilename (node:internal/modules/cjs/loader:1077:15)
    at Module._load (node:internal/modules/cjs/loader:922:27)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at require (node:internal/modules/cjs/helpers:110:18)
    at Object.<anonymous> (C:\Repositories\pdf.js\getinfo.js:9:18)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Module._load (node:internal/modules/cjs/loader:960:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [ 'C:\\Repositories\\pdf.js\\getinfo.js' ]
}

Node.js v18.16.1

This is what I did before:

git clone https://github.com/mozilla/pdf.js.git
cd pdf.js
npm install
npm install -g gulp-cli
gulp generic
gulp generic-legacy
cd examples
cd node
node getinfo.js -> gives error mentioned above

So, how to get the node examples running? Also, why is it 'pdfjs-dist/legacy/build/pdf.js'? Can one update to the current version / is there an up to date example to get started?


Solution

  • Needed to install pdfjs-dist. Alternatively that might work too:

    Run gulp dist-install to generate 'pdfjs-dist' npm package files.

    I could adapt the sample and change

    const pdfjsLib = require("pdfjs-dist/legacy/build/pdf.js"); to const pdfjsLib = require("pdfjs-dist/build/pdf.js");

    without any issues (for getinfo.js)