A simple tool to convert any given url or raw html to generate pdf.
npm install myurltopdf
To generate pdf follow these simple steps.
To generate pdf from raw html call myhtmltopdf(html,options,callback). see example below the right syntex
var myurlpdf = require("myurltopdf");
myurlpdf.myhtmltopdf("<strong>Hi Sam,</strong><br/><div> Simple tool to generate raw HTML to pdf using myurltopdf.</div><div style='font-size:12px;color:#DDD'>Created By Dilhad Khan<br/><a href='http://mind2minds.com'>http://mind2minds.com</a></div>",
{
fileName:"....../filename.pdf"
}, function(err){
if(err){
console.log(err);
}else{
console.log("file created successfully");
}
});
Or
To generate pdf from any url call myurltopdf(url,options,callback). see example below the right syntex
myurlpdf.myurltopdf("http://mind2minds.com", {fileName:"...../filename.pdf"}, function(err){
if(err){
console.log(err);
}else{
console.log("file created successfully");
}
});
Options is json object contains following key values
-fileName - pdf file path - required
-tmpFolderPath - optional. default path is tmp folder path of the installed module. Where tmp files created for the pdf generation process and removed after pdf generation process completed.
-viewportSize - optional default viewPortSize is
viewPortSize = { width: 1024, height : 768 }
-paperSize - optional default paperSize is
paperSize={
format: 'A4',
orientation: 'portrait',
border: '0.5cm'
}
viewportSize = {
width : in px
height : in px
}
pageSize = {
format: "A4" - Supported formats are: 'A3', 'A4', 'A5', 'Legal', 'Letter', 'Tabloid'
OR
width : in px,
height : in px,
orientation: 'portrait', 'landscape',
borders: in px,
OR as object for indvidual sides e.g.
borders: {
top: in px,
right: in px,
bottom: in px,
left: in px
},
header: {
height: "1cm",
contents: phantom.callback(function(pageNum, numPages) {
return "<h1>Header <span style='float:right'>" + pageNum + " / " + numPages + "</span></h1>";
})
},
footer: {
height: "1cm",
contents: phantom.callback(function(pageNum, numPages) {
return "<h1>Footer <span style='float:right'>" + pageNum + " / " + numPages + "</span></h1>";
})
}
}