Security News
The Unpaid Backbone of Open Source: Solo Maintainers Face Increasing Security Demands
Solo open source maintainers face burnout and security challenges, with 60% unpaid and 60% considering quitting.
calipers-pdf
Advanced tools
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).
The Poppler library C++ interface is required for PDF support.
To install Poppler on Mac OS X using Homebrew:
brew install poppler
To install Poppler on Ubuntu:
apt-get install pkg-config
apt-get install libpoppler-cpp-dev
To use, install calipers and calipers-pdf via npm:
npm install calipers calipers-pdf
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 measured
err
- 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 keys width
and height
which values
are floating-point PostScript Point dimensionsvar 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
// }
// ]
// }
Please report any issues in the core Calipers repository.
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
.
FAQs
PDF plugin for calipers.
The npm package calipers-pdf receives a total of 448 weekly downloads. As such, calipers-pdf popularity was classified as not popular.
We found that calipers-pdf demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Solo open source maintainers face burnout and security challenges, with 60% unpaid and 60% considering quitting.
Security News
License exceptions modify the terms of open source licenses, impacting how software can be used, modified, and distributed. Developers should be aware of the legal implications of these exceptions.
Security News
A developer is accusing Tencent of violating the GPL by modifying a Python utility and changing its license to BSD, highlighting the importance of copyleft compliance.