octopus-pdf
v1.1.3
Published
nodejs server export pdf from base html template
Downloads
12
Maintainers
Readme
octopus-pdf
Nodejs export pdf report from base html templates!
Install
npm install --save octopus-pdf
Supports
- Base html template with EJS engine.
- Embeded Chart.js v2.9.3.
- Server side without browser.
Examples
- Import from package
import { HtmlReport, ReportOptions } from "octopus-pdf";
- Define configures
const reportOptions: ReportOptions = {
title: "Test report with chartjs",
useChartJs: true,
pdfOptions: {
margin: {
top: "100px",
bottom: "200px",
right: "30px",
left: "30px",
},
},
template: "template.ejs",
headerTemplate: "header-template.ejs",
footerTemplate: "footer-template.ejs",
styles: [
"styles.css"
],
scripts: [
"utils.js",
"index.js",
],
data: {
users: [
{
name: "Luong Phung",
},
{
name: "Jasmine",
},
],
title: "Test report with chartjs",
author: "Luong Phung",
time: "2020",
},
};
- Create pdf file as buffer
const htmlReport = new HtmlReport();
const reportPdf = await htmlReport.createPdf(reportOptions);
const savePath = path.resolve("./chartjs_report.pdf");
fs.writeFileSync(savePath, reportPdf, "binary");
- Check you report file "chartjs_report.pdf"
Screen shots
API references
PdfOptions
| Name | type | default | Description | | --------------- | -------------------------- | ------------ | ------------------------------------------- | | scale | number | 1 | Scale of the webpage rendering | | printBackground | boolean | false | Print background graphics. | | landscape | boolean | false | Paper orientation | | format | string | "A4" | Page format as : "Letter" "A0" ... "A4" ... | | margin | {top, bottom, left, right} | {0, 0, 0, 0} | Page margin as number of pixels |
ReportOptions
| Name | type | default | Description | | -------------- | -------------------------- | ------- | ---------------------- | | title | string | null | Pdf report title | | useChartJs | boolean | false | Use chartjs as default | | pdfOptions | PdfOptions | null | any | | template | string | null | Template path | | footerTemplate | string | null | Footer template path | | headerTemplate | string | null | Header template path | | styles | string[] | [] | Style paths | | scripts | string[] | [] | Scripts paths | | data | object | {} | Report data |
License
octopus-pdf is released under the MIT license.