converter-pdf-html

1.0.2 • Public • Published

Do you want to convert HTML to PDF. Follow these Steps to convert HTML to PDF.

  • Step 1 - install the converter-pdf-html package using the following command

    $ npm i converter-pdf-html --save

    --save flag adds package name to package.json file.

  • Step 2 - Add required packages and read HTML template

 //Required package
 var pdf = require("converter-pdf-html");
 var fs = require("fs");

 // Read HTML Template
 var html = fs.readFileSync("template.html", "utf8");
  • Step 3 - Create your HTML Template

    <!DOCTYPE html>
    <html>
      <head>
        <mate charest="utf-8" />
        <title>Watch Anime Whole Day</title>
      </head>
      <body>
        <h1>Anime List</h1>
        <ul>
          {{#each anime}}
          <li>Name: {{anime.name}}</li>
          <li>Age: {{anime.seen}}</li>
          <br />
          {{/each}}
        </ul>
      </body>
    </html>
  • Step 4 - Provide format and orientation as per your need

    "height": "10.5in", // allowed units: mm, cm, in, px

    "width": "8in", // allowed units: mm, cm, in, px

    • or -

    "format": "Letter", // allowed units: A3, A4, A5, Legal, Letter, Tabloid

    "orientation": "portrait", // portrait or landscape

        var opt = {
            format: "A3",
            orientation: "portrait",
            border: "10mm",
            header: {
                height: "45mm",
                contents: '<div style="text-align: center;">Author: Arpan Das</div>'
            },
            footer: {
                height: "28mm",
                contents: {
                    first: 'Cover page',
                    2: 'Second page', // Any page number is working. 1-based index
                    default: '<span style="color: #444;">{{page}}</span>/<span>{{pages}}</span>', // fallback value
                    last: 'Last Page'
                }
            }
        };
    • Step 5 - Provide HTML, user data and PDF path for output
    var anime = [
      {
        name: "Naruto",
        seen: "yes",
      },
      {
        name: "My hero Academia",
        seen: "yes",
      },
      {
        name: "Vitthal",
        seen: "No",
      },
    ];
    var doc = {
      html: html,
      data: {
        anime: anime,
      },
      path: "./your.pdf",
      type: "",
    };
    // By default a file is created but you could switch between Buffer and Streams by using "buffer" or "stream" respectively.
  • Step 6 - After setting all parameters, just pass document and options to pdf.create method.

    pdf
      .convert(doc, opt)
      .then((res) => {
        console.log(res);
      })
      .catch((error) => {
        console.error(error);
      });

Reference

If you want to use conditions in your HTML template, check this out:

End

License

pdf-converter is MIT licensed.

Package Sidebar

Install

npm i converter-pdf-html

Weekly Downloads

4

Version

1.0.2

License

MIT

Unpacked Size

5.94 kB

Total Files

4

Last publish

Collaborators

  • adasarpan