#!/usr/bin/env node // Imports var fs = require('fs'); var pdf = require('html-pdf'); var yargs = require('yargs'); // Understanding var argv = yargs .usage("Usage: $0 -o out.pdf [options]") .example('$0 -i doc.pdf -o doc.pdf', 'Convert doc.html to PDF using the default values') .help('h') .alias('h', 'help') .describe('i', 'Input file') .alias('i', 'input') .default('i', '/dev/stdin') .describe('o', 'Output file') .alias('o', 'output') .describe('t', 'Title of file') .alias('t', 'title') .default('t', 'Sans titre') .demandOption(['o']) .argv; // Settings options = { "base": "file://" + process.cwd() + '/', "format": "A4", "orientation": "portrait", "border": "2cm", "footer": { "height": "10mm", "contents": { default: '
' + argv.title + '
{{page}}/{{pages}}
', } }, } // Reading htmlString = fs.readFileSync(argv.i, "utf8"); // Conversion pdf.create(htmlString, options).toFile(argv.o, function(err, res) { if (err) console.error(err); });