calipers-pdf v3.0.0
calipers-pdf

PDF Plugin for Calipers. It can be used to measure the page dimensions of a PDF and to check whether or not a PDF is encrypted (password-protected).
Installation
The Poppler library C++ interface is required for PDF support.
To install Poppler on Mac OS X using Homebrew:
brew install popplerTo install Poppler on Ubuntu:
apt-get install pkg-config
apt-get install libpoppler-cpp-devTo use, install calipers and calipers-pdf via npm:
npm install calipers calipers-pdfUsage
Calipers must be initialized by calling the required function with supported
file types passed in, in this case 'pdf'.
// Initializes Calipers with support for calipers-pdf.
var Calipers = require('calipers')('pdf');Calipers exposes a single function, measure, once initialized.
measure(filePath, [callback])
Measures the file at the given path.
filePath- The path of the file.callback- called when the file has been measurederr- An Error is provided for unsupported file types or corrupt files.result- Contains the following keys:type- a string representing the file type (e.g.'pdf')encrypted- a boolean which is true if the PDF is encryted, false otherwisepages- an array of objects with keyswidthandheightwhich values are floating-point PostScript Point dimensions
Examples
var Calipers = require('calipers')('pdf');
// You can use a callback:
Calipers.measure('/path/to/document.pdf', function (err, result) {
// result:
// {
// type: 'pdf',
// encrypted: false,
// pages: [
// {
// width: 450,
// height: 670
// },
// {
// width: 450,
// height: 670
// }
// ]
// }
});
// Or you can use promises:
Calipers.measure('/path/to/file.pdf')
.then(function (result) {
// result:
// {
// type: 'pdf',
// encrypted: false,
// pages: [
// {
// width: 450,
// height: 670
// }
// ]
// }
});
// Or you can use async/await
const result = awawit Calipers.measure('/path/to/file.pdf')
// result:
// {
// type: 'pdf',
// encrypted: false,
// pages: [
// {
// width: 450,
// height: 670
// }
// ]
// }
Issues/Bugs
Please report any issues in the core Calipers repository.
Contribute
The easiest and most helpful way to contribute is to find a file that calipers incorrectly measures, and submit a PR with the file. The tests automatically run against all files in the test/fixtures directory, so simply drop it into the appropriate subdirectory, and name it according to its size <width>x<height>x<pages>.pdf.