HostBill uses versatile mPDF library to generate PDF documents, as such it allows you to control generated document features through custom html/css tags. You can read more about it at mPDF Online Manual
Table of Contents |
---|
Feature Description
...
When customizing HTML template that is used to render PDF/HTML invoice in HostBill, you can make use of custom tags to render footer/header on every PDF page.
Headers and footers can be defined anywhere in the source
of the document but we recommend adding header at the top and footer at very bottom of document structure.
PDF library used by HostBill allows use of the custom HTML elements <htmlpageheader>
and <htmlpagefooter>
to define PDF header and footer templates.
Once defined they should be called by CSS @page attribute
The <htmlpageheader>
tag allows you to define a PDF header template. Everything inside the <htmlpageheader>
tag will be rendered in the header.
The <htmlpagefooter>
tag allows you to define a PDF footer template. Everything inside the <htmlpagefooter>
tag will be rendered in the footer.
Example below will render html footer on all (both odd and even) PDF pages:
Code Block | ||
---|---|---|
| ||
<htmlpagefooter name="myCustomFooter">This will be rendered at the very bottom of every PDF page</htmlpagefooter> <style> @page { footer: html_myCustomFooter; } </style> |
Using htmlpagehader and htmlpagefooter in HTML version of invoice
...
Since HostBill uses same template to render invoice, you should add some CSS code to properly display those elements.
...
Code Block | ||
---|---|---|
| ||
<style><!-- #invoice-container sethtmlpagefooter, #invoice-container sethtmlpageheader { display:none } #invoice-container htmlpagefooter, #invoice-container htmlpageheader { display:block; } --></style> |
Page Numeration
...
In document headers & footers it is possible to render page number and total number of pages by the use of following tags:
- {PAGENO} - to show current page on document
- {nbpg} - to show total number of pages in a document
Custom Margins
...
It is possible to define your own margins using css inside @page selector. You can read about supported rules in mPDF documentation.
...