pdf-merge-multistamp
v1.3.0
Published
Merge PDF files into a single PDF document, with multistamp supported
Downloads
3
Maintainers
Readme
PDFMerge
Merge multiple PDF Files into a single PDF document supporting three output formats: Buffer, Stream, New file on disk.
Requirements
PDFMerge uses PDFtk to merge the documents and as such it is a requirement in order for PDFMerge to work. It will work on any platform supported by PDFtk.
Starting from v1.0.0 a requirement of Node >= 4.0.0 is required as well. If you are stuck in the dark ages then npm i [email protected]
should still work.
Installing PDFtk
Windows
Download and run the Installer.
Debian, Ubuntu
apt-get install pdftk
RPM
https://www.pdflabs.com/docs/install-pdftk-on-redhat-or-centos/
Syntax
PDFMerge(files
, options
)
files
is expected to be an array of files (must be full path for each respective file) or objects.
The file object have the follow options:
file
Full path of PDF fileinputPw
Password to decrypt a PDF Optional!
options
:
libPath
Should only be provided if pdftk is not in yourPATH
Optional!output
Defaults toBuffer
. ValuesBuffer
,Stream
, and path to a new file are accepted. Optional!multistamp
Should only be provided if multistamp is used Optional!getMeta
Should only be provided to get single file meta Optional!execOptions
This is an optional string where you can pass additional argument to pdftk, for example compress. For the complete list see the docu of the pdftk
Examples 1
const PDFMerge = require('pdf-merge');
const files = [
`${__dirname}/1.pdf`,
`${__dirname}/2.pdf`,
{file: `${__dirname}/protected.pdf`, inputPw: '_SeCrEt_'}
];
//Buffer (Default)
PDFMerge(files)
.then((buffer) => {...});
//Stream
PDFMerge(files, {output: 'Stream'})
.then((stream) => {...});
//Save as new file
PDFMerge(files, {output: `${__dirname}/3.pdf`})
.then((buffer) => {...});
Examples 2
const PDFMerge = require('pdf-merge');
const files = [
`${__dirname}/1.pdf`
];
//Applies each page of the stamp PDF to the corresponding page of the input PDF
PDFMerge(files, {multistamp: `${__dirname}/stamp.pdf`, output: `${__dirname}/3.pdf`})
.then((buffer) => {...});
Examples 2
const PDFMerge = require('pdf-merge');
const files = [
`${__dirname}/1.pdf`
];
//Applies each page of the stamp PDF to the corresponding page of the input PDF
PDFMerge(files, {getMeta: true})
.then((meta) => {...});