Document Rendering Service

API

Base URL

  • Testing: https://stg.documentrenderingservice.shipping.cimpress.io
  • Production: https://documentrenderingservice.shipping.cimpress.io

Endpoint

   POST /api/v1/documents

Authentication

Uses Auth0 bearer token(JWT) for authentication. For more information, see the authentication documentation.

Headers

  • Accept (required): Media types which are acceptable for the response. Available values are application/pdf and text/csv.
  • Content-Encoding: The content encoding can be gzip or deflate to send compressed requests. Available values are gzip and deflate.

PDF Document Rendering

Usage

   Document Rendering Service (DRS) is a service which supports pdf, csv document generation. This document aims at details about the usage of service to generate pdf documents. In order to generate pdf using Document Rendering service, below are the set of inputs needed.

  1.  Template Type: It is the templating language in which the template is created. We are using Handlebars as templating language. It provides the power necessary to let you build semantic templates.

  2.  Template: Handlebar Template is a regular HTML with dynamic handler expression. The handler expression is in the form {{CONTENTKEY}}. The CONTENTKEY is provided in the template context. The template in the request must be base64 encoded.

    Example: The handler expression like {{headerTitle}} is used which is specified in the template context of the request.

  3. usage-template

  4.  Template Context: It is the data context used when interpolating the template.

  5. usage-template-context

  6.  PDF Rendering Options: It is to define the options for the pdf document. Following are the set of options we can specify.
    1. Orientation: specifies the orientation of the page. Options are portrait and landscape. By default, it is portrait.
    2. Paper size: specifies the format of page. Options are A4, A3, Legal, Letter, Tabloid.
    3. Footer: specifies footer for every page. By default, it displays center aligned page number. Footer can also be configured to display an image using option “div id=pageFooter”
    4. Header: specifies header for every page. If images are required in header choose the "div id=pageHeader" option in the template
    5. Border: specify border margins for pdf documents.

Features

  • Since the input template is an HMTL, it leverages all the powers and features of an HTML page rendering into a pdf document.
  • HTML with Cascading Style Sheets (CSS), and JavaScript forms a triad of capabilities for DRS.
  • With HTML constructs, images and other objects, such as interactive forms and dynamic contents may be embedded into the rendered PDF using template context. It provides a means to create structured documents by denoting structural semantics for text such as headings, paragraphs, lists, links, quotes and other items.


Samples

  1. Styling Tables

    Sample 1 - Document with static contents for a table.
    To render PDF with static data, simply create template as a regular html file with all contents and styling needed for the contents.

    JSON request:
                                    {
                                      "template": "PCFET0NUWVBFIGh0bWw+DQo8aHRtbD4NCjxoZWFkPg0KPHN0eWxlPg0KdGFibGUsIHRoLCB0ZCB7DQogICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7DQp9DQo8L3N0eWxlPg0KPC9oZWFkPg0KPGJvZHk+DQo8ZGl2IGlkID0gInBhZ2VIZWFkZXIiIHN0eWxlPSJoZWlnaHQ6MTBweDsiPg0KPGgyIHN0eWxlPSJ0ZXh0LWFsaWduOmNlbnRlciI+RGFpbHkgUmVwb3J0czwvaDI+DQo8L2Rpdj4NCjxoMz5BUEkgRG9jdW1lbnRhdGlvbjwvaDM+DQo8cD5QREYgUmVuZGVyaW5nIGRvY3VtZW50YXRpb24uPC9wPg0KPHRhYmxlIHN0eWxlPSJ3aWR0aDoxMDAlIj4NCiAgPHRyPg0KICAgIDx0aD5GaXJzdG5hbWU8L3RoPg0KICAgIDx0aD5MYXN0bmFtZTwvdGg+IA0KICAgIDx0aD5BZ2U8L3RoPg0KICA8L3RyPg0KICA8dHI+DQogICAgPHRkPkppbGw8L3RkPg0KICAgIDx0ZD5TbWl0aDwvdGQ+DQogICAgPHRkPjUwPC90ZD4NCiAgPC90cj4NCiAgPHRyPg0KICAgIDx0ZD5FdmU8L3RkPg0KICAgIDx0ZD5KYWNrc29uPC90ZD4NCiAgICA8dGQ+OTQ8L3RkPg0KICA8L3RyPg0KICA8dHI+DQogICAgPHRkPkpvaG48L3RkPg0KICAgIDx0ZD5Eb2U8L3RkPg0KICAgIDx0ZD44MDwvdGQ+DQogIDwvdHI+DQo8L3RhYmxlPg0KPC9ib2R5Pg0KIDxmb290ZXI+DQogIDxwPlBvc3RlZCBieTogQ2ltcHJlc3M8L3A+DQogIDxwPkNvbnRhY3QgaW5mb3JtYXRpb246IDxhIGhyZWY9Im1haWx0bzpzb21lb25lQGV4YW1wbGUuY29tIj4NCiAgc29tZW9uZUBleGFtcGxlLmNvbTwvYT4uPC9wPg0KPC9mb290ZXI+IA0KPC9odG1sPg==",
                                      "templateType": "handlebars"
                                    }
                                  


    Decoded template:
                                    
                                    
                                       
                                          
                                       
                                       
                                          
                                          

    API Documentation

    PDF Rendering documentation.

    Firstname Lastname Age
    Jill Smith 50
    Eve Jackson 94
    John Doe 80


    Response Pdf:
    resources/tables-sample1-response
    pdf-thumbnail response-1.pdf


    Sample 2 - Document with dynamic contents for a table.
    To render PDF document with dynamic data, create a template using handler expression. These handler expressions are interpolated from the template context of the request.

    JSON request:
                                    {
                                    	"template": "PCFET0NUWVBFIGh0bWw+DQo8c3R5bGU+DQp0aCB7DQogICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgYmxhY2s7DQogICAgICBib3JkZXItdG9wOiAzcHggc29saWQgYmxhY2s7DQogICAgICBoZWlnaHQ6IDUwcHg7DQogICAgfQ0KPC9zdHlsZT4JDQo8aHRtbD4NCjxib2R5Pg0KPGRpdiBpZCA9ICJwYWdlSGVhZGVyIiBzdHlsZT0iaGVpZ2h0OjEwcHg7Ij4NCjxoMiBzdHlsZT0idGV4dC1hbGlnbjpjZW50ZXIiPkRhaWx5IFJlcG9ydHM8L2gyPg0KPC9kaXY+DQo8aDM+QVBJIERvY3VtZW50YXRpb248L2gzPg0KPHA+UERGIFJlbmRlcmluZyBkb2N1bWVudGF0aW9uLjwvcD4NCnt7I3RhYmxlIHRhYmxlRGF0YX19e3svdGFibGV9fQ0KPC9ib2R5Pg0KPGZvb3Rlcj4NCiA8cD5Qb3N0ZWQgYnk6IENpbXByZXNzPC9wPg0KIDxwPkNvbnRhY3QgaW5mb3JtYXRpb246IDxhIGhyZWY9Im1haWx0bzpzb21lb25lQGV4YW1wbGUuY29tIj4NCiAgc29tZW9uZUBleGFtcGxlLmNvbTwvYT4uPC9wPg0KPC9mb290ZXI+IA0KPC9odG1sPg==",
                                    	"templateContext": {
                                    		"tableData": {
                                    			"border": "1",
                                    			"header": {
                                    				"style": "font-family:verdana;text-align:center;",
                                    				"columns": [
                                    					"First Name",
                                    					"Last Name",
                                    					"Eyecolor",
                                    					"City"
                                    				]
                                    			},
                                    			"body": {
                                    				"style": "font-family:verdana;text-align:center;",
                                    				"rows": [
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					]
                                    				]
                                    			}
                                    		}
                                    	},
                                    	"templateType": "handlebars"
                                    }
                                  

    Decoded template:
                                    
                                    
                                    
                                      
                                        
                                        

    API Documentation

    PDF Rendering documentation.

    {{#table tableData}}{{/table}}

    Response Pdf:
    resources/tables-sample2-response
    pdf-thumbnail response-2.pdf


    Sample 3 - Styling for column – colspan, color.
    To customize the table with colspan or color for particular column, below is the sample request.

    JSON request:
                                    {
                                      "template":"PCFET0NUWVBFIGh0bWw+DQo8c3R5bGU+DQp0aCB7DQogICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgYmxhY2s7DQogICAgICBib3JkZXItdG9wOiAzcHggc29saWQgYmxhY2s7DQogICAgICBoZWlnaHQ6IDUwcHg7DQogICAgfQ0KPC9zdHlsZT4JDQo8aHRtbD4NCjxib2R5Pg0KPGRpdiBpZCA9ICJwYWdlSGVhZGVyIiBzdHlsZT0iaGVpZ2h0OjEwcHg7Ij4NCjxoMiBzdHlsZT0idGV4dC1hbGlnbjpjZW50ZXIiPkRhaWx5IFJlcG9ydHM8L2gyPg0KPC9kaXY+DQo8aDM+QVBJIERvY3VtZW50YXRpb248L2gzPg0KPHA+UERGIFJlbmRlcmluZyBkb2N1bWVudGF0aW9uLjwvcD4NCnt7I3RhYmxlIHRhYmxlRGF0YX19e3svdGFibGV9fQ0KPC9ib2R5Pg0KPGZvb3Rlcj4NCiA8cD5Qb3N0ZWQgYnk6IENpbXByZXNzPC9wPg0KIDxwPkNvbnRhY3QgaW5mb3JtYXRpb246IDxhIGhyZWY9Im1haWx0bzpzb21lb25lQGV4YW1wbGUuY29tIj4NCiAgc29tZW9uZUBleGFtcGxlLmNvbTwvYT4uPC9wPg0KPC9mb290ZXI+IA0KPC9odG1sPg==",
                                      "templateContext":{
                                        "tableData":{
                                          "border":"1",
                                          "header":{
                                            "style":"font-family:verdana;text-align:center;",
                                            "columns":[
                                              "First Name",
                                              "Last Name",
                                              "Eyecolor",
                                              "City"
                                            ]
                                          },
                                          "body":{
                                            "style":"font-family:verdana;text-align:center;",
                                            "rows":[
                                              [
                                                "Anthony",
                                                "Conley",
                                                "brown",
                                                "Monument"
                                              ],
                                              [
                                                "Anthony",
                                                "Conley",
                                                "brown",
                                                "Monument"
                                              ],
                                              [
                                                {
                                                  "text":"Total",
                                                  "style":"color:red",
                                                  "colspan":2
                                                }
                                              ]
                                            ]
                                          }
                                        }
                                      },
                                      "templateType":"handlebars"
                                    }
                                  

    Decoded Template:
                                    
                                    
                                    
                                    
                                    
                                    

    API Documentation

    PDF Rendering documentation.

    {{#table tableData}}{{/table}}

    Response Pdf:
    resources/tables-sample3-response


    pdf-thumbnail response-3.pdf


    Sample 4 - Styling for Cells.
    Customize cells styling using below properties in the request.

    JSON request:
                                    {
                                      "template":"PCFET0NUWVBFIGh0bWw+DQo8c3R5bGU+DQp0aCB7DQogICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgYmxhY2s7DQogICAgICBib3JkZXItdG9wOiAzcHggc29saWQgYmxhY2s7DQogICAgICBoZWlnaHQ6IDUwcHg7DQogICAgfQ0KPC9zdHlsZT4JDQo8aHRtbD4NCjxib2R5Pg0KPGRpdiBpZCA9ICJwYWdlSGVhZGVyIiBzdHlsZT0iaGVpZ2h0OjEwcHg7Ij4NCjxoMiBzdHlsZT0idGV4dC1hbGlnbjpjZW50ZXIiPkRhaWx5IFJlcG9ydHM8L2gyPg0KPC9kaXY+DQo8aDM+QVBJIERvY3VtZW50YXRpb248L2gzPg0KPHA+UERGIFJlbmRlcmluZyBkb2N1bWVudGF0aW9uLjwvcD4NCnt7I3RhYmxlIHRhYmxlRGF0YX19e3svdGFibGV9fQ0KPC9ib2R5Pg0KPGZvb3Rlcj4NCiA8cD5Qb3N0ZWQgYnk6IENpbXByZXNzPC9wPg0KIDxwPkNvbnRhY3QgaW5mb3JtYXRpb246IDxhIGhyZWY9Im1haWx0bzpzb21lb25lQGV4YW1wbGUuY29tIj4NCiAgc29tZW9uZUBleGFtcGxlLmNvbTwvYT4uPC9wPg0KPC9mb290ZXI+IA0KPC9odG1sPg==",
                                      "templateContext":{
                                        "tableData":{
                                          "style":"width:100%",
                                          "header":{
                                            "columns":[
                                              "First Name",
                                              "Last Name",
                                              "Eyecolor",
                                              "City"
                                            ],
                                            "options":{
                                              "width":[
                                                "90%",
                                                "*",
                                                "5%"
                                              ]
                                            }
                                          },
                                          "body":{
                                            "style":"font-family:Verdana; color:green",
                                            "rows":[
                                              [
                                                "Anthony",
                                                "Conley",
                                                "brown",
                                                "Monument"
                                              ],
                                              [
                                                "Anthony",
                                                "Conley",
                                                "brown",
                                                "Monument"
                                              ],
                                              [
                                                "Anthony",
                                                "Conley",
                                                "brown",
                                                "Monument"
                                              ]
                                            ]
                                          }
                                        }
                                      },
                                      "templateType":"handlebars"
                                    }
                                  

    Decoded Template:
                                    
                                      
                                      
                                      
                                      
                                      

    API Documentation

    PDF Rendering documentation.

    {{#table tableData}}{{/table}}

    Response Pdf:
    resources/tables-sample4-response
    pdf-thumbnail response-4.pdf


    Sample 5 - Styling for rows.
    Customize rows using styling properties as below.

    JSON request:
                                    {
                                    	"template": "PCFET0NUWVBFIGh0bWw+DQo8c3R5bGU+DQp0aCB7DQogICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgYmxhY2s7DQogICAgICBib3JkZXItdG9wOiAzcHggc29saWQgYmxhY2s7DQogICAgICBoZWlnaHQ6IDUwcHg7DQogICAgfQ0KPC9zdHlsZT4JDQo8aHRtbD4NCjxib2R5Pg0KPGRpdiBpZCA9ICJwYWdlSGVhZGVyIiBzdHlsZT0iaGVpZ2h0OjEwcHg7Ij4NCjxoMiBzdHlsZT0idGV4dC1hbGlnbjpjZW50ZXIiPkRhaWx5IFJlcG9ydHM8L2gyPg0KPC9kaXY+DQo8aDM+QVBJIERvY3VtZW50YXRpb248L2gzPg0KPHA+UERGIFJlbmRlcmluZyBkb2N1bWVudGF0aW9uLjwvcD4NCnt7I3RhYmxlIHRhYmxlRGF0YX19e3svdGFibGV9fQ0KPC9ib2R5Pg0KPGZvb3Rlcj4NCiA8cD5Qb3N0ZWQgYnk6IENpbXByZXNzPC9wPg0KIDxwPkNvbnRhY3QgaW5mb3JtYXRpb246IDxhIGhyZWY9Im1haWx0bzpzb21lb25lQGV4YW1wbGUuY29tIj4NCiAgc29tZW9uZUBleGFtcGxlLmNvbTwvYT4uPC9wPg0KPC9mb290ZXI+IA0KPC9odG1sPg==",
                                    	"templateContext": {
                                    		"tableData": {
                                    			"border": "1",
                                    			"header": {
                                    				"style": "font-family:verdana;text-align:center;",
                                    				"columns": [
                                    					"First Name",
                                    					"Last Name",
                                    					"Eyecolor",
                                    					"City"
                                    				]
                                    			},
                                    			"body": {
                                    				"style": "font-family:verdana; color:green;",
                                    				"rows": [
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						{
                                    						"text":"Monument",
                                    						"style":"color:red"
                                    						}
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						{
                                    						"text":"Monument",
                                    						"style":"color:orange"
                                    						}
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					],
                                    					[
                                    						"Anthony",
                                    						"Conley",
                                    						"brown",
                                    						"Monument"
                                    					]
                                    				]
                                    			}
                                    		}
                                    	},
                                    	"templateType": "handlebars"
                                    }
                                  

    Response Pdf:
    resources/tables-sample5-response
    pdf-thumbnail response-5.pdf


  2. Styling Headers

    Sample 1 - Styling header with an image using json.
    Below is the example to render pdf using header with image. It uses custom property tag “div id=pageHeader” option in the template.

    JSON request:
                                    {
                                      "template":"PCFET0NUWVBFIGh0bWw+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHlsZT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGggew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgYmxhY2s7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCBibGFjazsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4Ow0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N0eWxlPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aHRtbD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQgPSAicGFnZUhlYWRlciIgc3R5bGU9ImhlaWdodDozMHB4OyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIHN0eWxlPSJ0ZXh0LWFsaWduOmNlbnRlciI+DQoJCQkJCQkJCSAgVGl0bGUvSGVhZGVyIG9mIHRoZSBEb2N1bWVudA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUl3QUFBQW1DQVlBQUFBV1IzTzJBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNNQUFBN0RBY2R2cUdRQUFBMkZTVVJCVkhoZTdWcUpjNVJGRnQrL3dxcmQybDBWbFNNSkJITGZkNEJnUXJMaE1FRWtpcUFnS2lvZ2dsd1NDUVNDQ2lpSEVjSWxFVkdqZ29Vb0dDU0JJQkFRdWZFQ1ZwQmNCSE1ma0xmdjk3N3VtVzhtazJNc2FxbUszNitxYTJhNlg3L3U3L1d2MzN2ZDMveU5MRmh3QXhaaExMZ0ZpekFXM0lKRkdBdHV3U0tNQmJkd3h3aVQrc2dURkJRNWpNSmlrc2d2YkFpdFdKMnJXaXowSk53Und1UnQrb0E4Qm9ZTFdjSmpoOHVucDA4RVpTNWVyaVFzOUJSMGl6Q256NXluNmJNVzBvM3FtNnJHRVhWMTllUVRIRStCRWNPRU1KbzBYa3lhMTE3UFVWSi9EdVVWbFhUdzBCRXEvUFlnWGZ6cEYxWDc1M0h1L0VYYVcxaEU1eTVjVkRXT2FHMXRwV0kxWG0xdHJhcnRIcUI3WDJFeC9mekxKVlhUZlZ5NCtCTlZWdDVRdnh4eHJQUjcycmUvbUU2ZU9xTnFPc2ZsSzcvUjRlK08wYStYTDZ1YWpuSGx2MWZwdXlPbDlLTUwyOTc4bzRZcXEyN1FyVnUzNUhkemMzUFhoRGx5OURnOTVCVk1Bd05qeVRzZ2hzckxLMVNMSStvYkc4Z3ZkQWdGaGp1U0JwNW0zc0pzSmRWOWJOeXlYZlE5MUQrWUJ2aEZTZW5IWHF6ZndEREtXclpDU1JFTlNVcW4rL3I2MFFNZWdkVExJMGpxdnRxN24rNzV0NmZNK3grOXZDbC94NmQwOXR4RkdzanpSLzhCL2xIc0VjTmtia1hGaDZVUFNKODI5bW02bjNYMTk0MlU4WHA1Qk5DalQweVJkbzJFRkRXZVp4RGQyOGRQNmo3ZjlaWG85UmdVTHJyeDNjc25rdksyZkNqdEdydDJmMDMzL012RE5xOU5XM2ZRdGQrdlUrVGdGQjdMbjJLR2psQ1NSTmV2bDFGNnhtUVp5d3Z6WWIzWWdKamZoTWt2VVdOVGs1SzBZMG5PS3RFTk82RVA1bk5mWDM4YWtUNmVkdkxZWnF4ZW0wZDl2RU9wbnpmUDFTYnJSNG1wWTJuN0p6dEZwdVR3TVhycTJlbTBNT3RObnNza2VvZjdkRXFZRW1acFgxWVlHcDBvQkFoaUQrSWJPbGlZNWdvd2VtQjRnaFFIVDhNVG1ydHdxWkxxR2cvL1o2d3Naa2pVd3pZOXVvUkdKOG5DaDBRbGltejh3Nk5GRHVQNEJNVlNkWFVOYmQ3Mk1RMWlna01lWG0vSzFGblUzeS9TcGcreStNUnZHR3BId1U3ZUROSGtIemJVTm82VzhRbUtvNFRrTVRJV0VEVTQxVFplTUgrK09uK0poR050STEzdzI4TW5uREltVGxVOWlkNWR2NFVHc1Q2MHc1YVRwNzRpNCtKN01PZC9DVWxwSXJlUFBlQURub0VVRUc3TUIyT1piWUdOMUx0L0NQMTY2WXJJQXlQU24rUm5qQkpaRk9qVXo0Qk5qQTIxZk9VNmtjM2Q4RDcxR1JBaWM5U3k1alh1elp2MDFRVkxSSFlqa3g2bG91SUc5MyszWThJY09uelVnU3dvV0NRdzh2cjFjaVhWSGcwTkRXSjRaOUpnMThLNFhTRnB4RGdKYjdxZmIwaTh6QU1HZ29jRFlXRGMvbjdSMU5yU1NrUFp5TUdSaWpEQmNWUlRVMGRiUHlpd0VTYWM2MkV3UHlZNnZJWkJOanR4VUxDSWVEYU1DNk9ESktqWE10alozeGFWeVB4aWhvNjBFUWJGbnhjVitrRU9lQ1FQRTlIUmp1ZGVrdk8yOUYyZnQ0M0hNdWFGTnNkRlRXQmlwbE05MjY5WFAzK2JmdCtRd2J5NG9SUVpueUxlQTJPaEhqWVk0Qjh0ZXIvWlg4UTJDclhwOWViNmtXTW15UE5pUTJBOUhtU1BpUEFEOUdWOW9Vby9OalBJQmh0Z2JmMzV3QUxaMHVNblJkWVpMZ2xUeERGY014Q1RRTUYzdUxxOWhRZVVsSUhhekJlb2Vrd2N0VFUxcWhvajFzRUFBUzVJOC9Lcm1VcXFQZkk0REhteTRiVTh2RXpXMHBVU1I1dllCUmQ4dWxzTWd6QjE1WXJ4OFBIRFJqa1FwdGFKTUVaOVBJLzdPaDNtV0YzdytXNVpVR2ZTZVB2SDBLbzFHK2hvNlFsYXZ6R2ZpUlV0OVpCQi8wWFpiOGw0TVFrR1lYUmZlTnhVZHZtWDFHNUhMb0oya0FFeUlMakhvREJweTl1ODNVWVk4OWdJTndNRFkzamNiVFI2N0VUeGlxakhNOHlhdDBqNmFxU21qUmZQWS9TTGxwUmhidVpTMlJDb3d4cVpjZnJzZVhyc3llZG8rWXExOHZ0Z3lWR3hLMlR4YWNaUG5IdE5uREtOWnMvTFVqWHQwWTR3UlFjUHk2SzBJd3V6Yno4bmdtYlVaVTJucWlGZVZEM2NuNnBIaEZMYnJWYlZRdFRZMkNpN3dKazBZUFRNT1k1RzBJaEp3T0lyWXpIajMrTWQ2WXlxcXBzYzk4dlVyNjRKZ3gyWlBtNlNramFBcEJRZVFjOEpIaVUzYjZ0cU5aRC9vVjBIcmdtbVRwOHI5V2JDZ0JRSktZOUt2VE1RTm1BMzZQZG1QVHNLdmpCME9oRUc4L2lJMjRCcjE2NUxPTkM2azBkblNMMHo0RUhnSWVBTlpzOWZUUE15bDhrY0RSdkU4NmsxWDBtMng1NnY5NHZuZ1N5OFY4NWJhMVJMOStCQW1BUEZKZUw2WFhtVy9RY09LU2tEOEN4Q2x0SGhWRDJLUzBvZ1ZhZUdzS2RwVUJKRUxjMHRzbUR0U01QTTNzYkdNNk84c2xKY09tU3dJQkdjQ0hZSFhSRUdCblJsRk94aXZhQWdESkpQTTJycjZpUVVRQWRjK3JNdnpwSjZUUmowRzhSZW9aaER0eXVzeWQwc2V0RWZpNG1jQU1UUWhFRi9oTmlDejNhckhrVHJKTWVKNWJiaEVvcHhYZEhRMEVnVmZIcEN3U21xcGJXRm5wNHlYZXlLZVF4SmZJVEp1RXU4amRZTGIrWGxHMFV6K0dSNzVOZ0pwZDBBVGo1aVo1WXpiQll2WVd2cVMzUG9nQXE3bmNGR21JMWJQNlFJanBQWTRSaFlEdzVqbFo3NFFVa1pxTS9Ob2FwNEQ0TXN1b0EweVFIeTZZeGhuTVNhOVdLaDRNWE1jZklvUHhoY0pOcmhjaWM5TzBPMWRJNnVDQU5QdFRwM281SzJJend1eGJid09BSENrR2JnZUkyY0FUcGdnK2RlbkMzMVpzS2dYMDJOWXo4TmhEL2tRK2lQOEl5VERjaWhDUU1kOEJKbXpIa3RXM1k5Q0NQUHc2U0JCM0l1T21TaGVMTEhCakFHRmwvWHc4YndjcERIV0lmNHhLTXg3WlhYeE5OcldSU1FHaHNaZmZid0tiTWpPQkFtUERiWkpXRytjUXBGOWV1eXFTck9pVEFvSUV4YWxKSXkwTloyVzVJNUxLcldpNGZCN3YzaDlGa2xaUnpmN1lSSm9JblBURk10bmFNcndneGt3cXpKM2FTazdRaVBTM1pZK09ycVAxU0xnWmFXRmlaTWlPam9tREF4N2ZwcEhPSVRwcGt3VDdGWE1CTUdPbCtZWVlRNWpibUtNR2dIYVJCeUVENDZLamo1L2ZQQlFhbzMwZVRuWDViVEVKNGROc1FjVWJDbXFQOXM1eDRsU2ZUU3pQbGNGeUNIQUxNc25nMUpML0l0VjNBSVNVZEx2M2VadjhCbDRhN0JqSnFzYVZRMTJOTk9Gb1FrNURHTjlVb0N5VzhMQmZOdWNBNUpJRWIrZHNlUVZGWmU0UkNTd3VPR3E1Yk9jWGNKRXlzWGRhNndhczE2MmZIb2oxMDcvL1ZsSEpKMjJRZ0RZaXpLdHQ4bkFRaGordGdOc2l4Y3ZKeEt2anN1RzlhNUZIS0tzUGViSXJsZk1nTnB3QVpPMnBIb0loOUM2SUkrcktOelFneHN6ZitFeGs5NlFUYXcrUmdQMHJoQ3U2UzM5TVJKdVZmQU1ST2Q5V0FnemFjN3YxUlNCdXF5WnhxaENVbnZ5REJxYTdIZnp6VFVjOUxMaG0yWHY3QXJmR1d1Nnl3Y0YxYzY2VVg4ZjJmZEJ0VmlSMnZyTGZyaGxOMHozUzNDb0I3dnp1SjRmR2RnbzhEN3dHNWFQMnlIVGFJSmczQ3pPR2VWNm1IZ3pOa0xra05xM1VtcFkxVkwxNmpnSE5BVjBoK2ZiQXRoV01QYTJqcTZmZXUyYW5VRXZMcjJOdGpVRjM3OFdiWFkwWTR3d1BIdlQ0bHliUmdVVFJwemtnYlVMcHRGMVJrSmRMdlpmcXh1NUNPMnkyU1h5VEtya3lNYmRvYjVXQTJYam1RUkYxUTFOYlgweFpkN1pXZmlVa3VmTE80bVlkQVhuaUJoZUxya0xQWDE5VlI4OElnOHR3N3Q1cDJkdC9rREI4SmtPUkVHR0pxWVpsdGdIMzdXSjNuM056WFpOK0p2VjY5UnhvVG41V1lZNndRYzRxUHkzKy92VDRranhza3AxNHc1YkQ5OWdvSVhBWEFMSGNzbjBqMzd2cFhmR2l0WHMxZmtlVUVXZDE5bFplM3YyMXdTQmpoeDhuUTcwb1FvMHVCZFJVZW9yYXNYZ3lGdTYzNllBTzVnNW5manRqZDVWSWJObGFNZjdqbEFISkFOSk1COHNBZ1BNbW5PbnYrUmhxV011YXVFZ1J2SEVSaEhYY3dSSng5ek8zYnFTZzVQZ1BuaXJpUENYTHA4UlVLejlrNjRHRVRpQ3IxSWNERUc2akRHdlgxOHFhbXhXZWFQM3lBYTVnR0M0cFVKMGdIWUQzb3d4NVJSajdOWFd5bTJrVGtIUURaTWJzc3hucjZ3aEM1c1RGZm9rREFBWG5hWlNRT3ZnWGdNWTdvQzNGMWdoSXRYQTh6b2VabmRmeldRTkRMRGx0MXJIU2o0ampvc1FtcjZlSkdONVFYRWJzWURHMGxvRFcxNi95Tko1dEFIZHlCdnIyMGYyb0pZRDNTaEg0NmtWVlhWcXNWQVUzT1RKSXJRZ1IyS2hCSXc1ekFJMnpObUw1UTdLajFYWFRBbjVJTTRybXFzZTg4NE5xTWR4K2JNSmNabG9ETktqaHlUaTFQanhJVG50cDltUkRlUEJmdU1mblNpeUtkblBDUDVDb2lrNVNDRFo0TThTSTFudVhUNU45ckdZUkhmdGRkQjBYYUFMTllZTjgwSEQ3bStMdWlVTU1EcE0rZUVoVmdBN0lxeWN0ZXZCZUJaTUpneldiQzRDeGE1LzhaNmEvN0gzRDlSSGc0NlVIcXJxM0hjVDJpa1BUWko0ajZJN2NlZUFNQjlRcTkrZnRJSHJudjd4OGJMTkRQU3gwMjI5VU9pNlFyU3pndUQwOFNicTR6M01NNUpML0tWUFY4WHltSWhVWVErekRraVBwa0tQbmZNK2ZZVkhwQ1hqL2YyOGFONy91MUZXL2daTzBKOWZRTWZmeGNJY1VBOGVCWThqeWJ4Kyt4RnpjQzFCRjRVOW1iNVB1cTU0R251WXkrVTl0alREdStkOEdybm1ha3paVjIxRFF4WlAvSHdwM2pOTzBLWGhBR1EvT0R2RFdYbHJoTXJQQnc4anl1eWRMU0x1b3ZxUDJya0hnZ3ZRcTllL1YzVjNqMDRFd1p2bFRVcUtpcmwxSEt6Zzd1WlB3dUVLYnpiZ3gwNnV2Y3hBN25IZVE3WDNmbWJCUzRFSVl1L043UzF0YW5hanRFdHduU0ZqVnQyeUM1d0pvdnpzYkVud0prd3Y1c0k4MWZBSFNFTWdPUlRaOWdnaS9PUnNhY2dhb2o5N3czZUFiRjA3ZHJkOTNyL1Q5d3h3Z0FqMHlmSWtmZk5sY2FiMFo0SS9EZkcwemRDVGkzNG13Q08wbjhsM0ZIQzRBNWd3YUxsSE10ZC95dXZKd0J2bkxQZmVJZHlWcXlscFcrc1ZyVi9IZHhSd2xqbytiQUlZOEV0V0lTeDRCWXN3bGh3Q3haaExMZ0ZpekFXM0lKRkdBdHV3U0tNQmJkZ0VjYUNXN0FJWThFdFdJU3g0QWFJL2dmcEdIbWhQVVhmRndBQUFBQkpSVTVFcmtKZ2dnPT0iPg0KCQkJCQkJCQkgIDwvaDI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyN0YWJsZSB0YWJsZURhdGF9fXt7L3RhYmxlfX0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9ib2R5Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Zm9vdGVyPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+UG9zdGVkIGJ5OiBDaW1wcmVzczwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkNvbnRhY3QgaW5mb3JtYXRpb246IDxhIGhyZWY9Im1haWx0bzpzb21lb25lQGV4YW1wbGUuY29tIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb21lb25lQGV4YW1wbGUuY29tPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9mb290ZXI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaHRtbD4=",
                                      "templateContext":{
                                        "tableData":{
                                          "border":"1",
                                          "header":{
                                            "style":"font-family:verdana;text-align:center;",
                                            "columns":[
                                              "First Name",
                                              "Last Name",
                                              "Eyecolor",
                                              "City"
                                            ]
                                          },
                                          "body":{
                                            "style":"font-family:verdana;text-align:center;",
                                            "rows":[
                                              [
                                                "Anthony",
                                                "Conley",
                                                "brown",
                                                "Monument"
                                              ],
                                              [
                                                "Anthony",
                                                "Conley",
                                                "brown",
                                                "Monument"
                                              ],
                                              [
                                                {
                                                  "text":"Total",
                                                  "style":"color:black",
                                                  "colspan":2
                                                }
                                              ]
                                            ]
                                          }
                                        }
                                      },
                                      "templateType":"handlebars"
                                    }
                                  

    Decoded template:
                                    
                                    
                                    
                                    
                                    
                                    {{#table tableData}}{{/table}}
                                    
                                    
                                    
                                  

    Response Pdf:
    resources/headers-sample1-response
    pdf-thumbnail response-1.pdf


    Sample 2 - Styling header using pdf rendering options.
    JSON request:
                                    {
                                      "template":"PCFET0NUWVBFIGh0bWw+DQo8aHRtbD4NCjxoZWFkPg0KPHN0eWxlPg0KdGFibGUsIHRoLCB0ZCB7DQogICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7DQp9DQo8L3N0eWxlPg0KPC9oZWFkPg0KPGJvZHk+DQoNCjxoMz5BUEkgRG9jdW1lbnRhdGlvbjwvaDM+DQo8cD5QREYgUmVuZGVyaW5nIGRvY3VtZW50YXRpb24uPC9wPg0KPHRhYmxlIHN0eWxlPSJ3aWR0aDoxMDAlIj4NCiAgPHRyPg0KICAgIDx0aD5GaXJzdG5hbWU8L3RoPg0KICAgIDx0aD5MYXN0bmFtZTwvdGg+IA0KICAgIDx0aD5BZ2U8L3RoPg0KICA8L3RyPg0KICA8dHI+DQogICAgPHRkPkppbGw8L3RkPg0KICAgIDx0ZD5TbWl0aDwvdGQ+DQogICAgPHRkPjUwPC90ZD4NCiAgPC90cj4NCiAgPHRyPg0KICAgIDx0ZD5FdmU8L3RkPg0KICAgIDx0ZD5KYWNrc29uPC90ZD4NCiAgICA8dGQ+OTQ8L3RkPg0KICA8L3RyPg0KICA8dHI+DQogICAgPHRkPkpvaG48L3RkPg0KICAgIDx0ZD5Eb2U8L3RkPg0KICAgIDx0ZD44MDwvdGQ+DQogIDwvdHI+DQo8L3RhYmxlPg0KPC9ib2R5Pg0KIDxmb290ZXI+DQogIDxwPlBvc3RlZCBieTogQ2ltcHJlc3M8L3A+DQogIDxwPkNvbnRhY3QgaW5mb3JtYXRpb246IDxhIGhyZWY9Im1haWx0bzpzb21lb25lQGV4YW1wbGUuY29tIj4NCiAgc29tZW9uZUBleGFtcGxlLmNvbTwvYT4uPC9wPg0KPC9mb290ZXI+IA0KPC9odG1sPg==",
                                      "templateType":"handlebars",
                                      "pdfRenderingOptions":{
                                        "format":"A4",
                                        "header":{
                                          "height":"15mm",
                                          "contents":"
    Header Set in json{{page}}/{{pages}}
    " }, } }



    Response Pdf: resources/headers-sample1-response
    pdf-thumbnail response-2.pdf


  3. Styling Footer

    Sample 1 - Styling Footer in template
    JSON request:
                                    {
                                      "template": "PCFET0NUWVBFIGh0bWw+DQo8aHRtbD4NCjxoZWFkPg0KPHN0eWxlPg0KdGFibGUsIHRoLCB0ZCB7DQogICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7DQp9DQo8L3N0eWxlPg0KPC9oZWFkPg0KPGJvZHk+DQo8ZGl2IGlkID0gInBhZ2VIZWFkZXIiIHN0eWxlPSJoZWlnaHQ6MTBweDsiPg0KPGgyIHN0eWxlPSJ0ZXh0LWFsaWduOmNlbnRlciI+RGFpbHkgUmVwb3J0czwvaDI+DQo8L2Rpdj4NCjxoMz5BUEkgRG9jdW1lbnRhdGlvbjwvaDM+DQo8cD5QREYgUmVuZGVyaW5nIGRvY3VtZW50YXRpb24uPC9wPg0KPHRhYmxlIHN0eWxlPSJ3aWR0aDoxMDAlIj4NCiAgPHRyPg0KICAgIDx0aD5GaXJzdG5hbWU8L3RoPg0KICAgIDx0aD5MYXN0bmFtZTwvdGg+IA0KICAgIDx0aD5BZ2U8L3RoPg0KICA8L3RyPg0KICA8dHI+DQogICAgPHRkPkppbGw8L3RkPg0KICAgIDx0ZD5TbWl0aDwvdGQ+DQogICAgPHRkPjUwPC90ZD4NCiAgPC90cj4NCiAgPHRyPg0KICAgIDx0ZD5FdmU8L3RkPg0KICAgIDx0ZD5KYWNrc29uPC90ZD4NCiAgICA8dGQ+OTQ8L3RkPg0KICA8L3RyPg0KICA8dHI+DQogICAgPHRkPkpvaG48L3RkPg0KICAgIDx0ZD5Eb2U8L3RkPg0KICAgIDx0ZD44MDwvdGQ+DQogIDwvdHI+DQo8L3RhYmxlPg0KPC9ib2R5Pg0KIDxmb290ZXI+DQogIDxwPlBvc3RlZCBieTogQ2ltcHJlc3M8L3A+DQogIDxwPkNvbnRhY3QgaW5mb3JtYXRpb246IDxhIGhyZWY9Im1haWx0bzpzb21lb25lQGV4YW1wbGUuY29tIj4NCiAgc29tZW9uZUBleGFtcGxlLmNvbTwvYT4uPC9wPg0KPC9mb290ZXI+IA0KPC9odG1sPg==",
                                      "templateType": "handlebars"
                                    }
                                  


    Decoded template:
                                    
                                    
                                       
                                          
                                       
                                       
                                          
                                          

    API Documentation

    PDF Rendering documentation.

    Firstname Lastname Age
    Jill Smith 50
    Eve Jackson 94
    John Doe 80


    Response Pdf:
    resources/footer-sample1-response
    pdf-thumbnail response-1.pdf


    Sample 2 – Customizing footer using pdfrendering options.
    Below is the example to render pdf with footer with using pdfrendering options.

    JSON request:
                                    {
                                      "template":"PCFET0NUWVBFIGh0bWw+DQo8aHRtbD4NCjxoZWFkPg0KPHN0eWxlPg0KdGFibGUsIHRoLCB0ZCB7DQogICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7DQp9DQo8L3N0eWxlPg0KPC9oZWFkPg0KPGJvZHk+DQoNCjxoMz5BUEkgRG9jdW1lbnRhdGlvbjwvaDM+DQo8cD5QREYgUmVuZGVyaW5nIGRvY3VtZW50YXRpb24uPC9wPg0KPHRhYmxlIHN0eWxlPSJ3aWR0aDoxMDAlIj4NCiAgPHRyPg0KICAgIDx0aD5GaXJzdG5hbWU8L3RoPg0KICAgIDx0aD5MYXN0bmFtZTwvdGg+IA0KICAgIDx0aD5BZ2U8L3RoPg0KICA8L3RyPg0KICA8dHI+DQogICAgPHRkPkppbGw8L3RkPg0KICAgIDx0ZD5TbWl0aDwvdGQ+DQogICAgPHRkPjUwPC90ZD4NCiAgPC90cj4NCiAgPHRyPg0KICAgIDx0ZD5FdmU8L3RkPg0KICAgIDx0ZD5KYWNrc29uPC90ZD4NCiAgICA8dGQ+OTQ8L3RkPg0KICA8L3RyPg0KICA8dHI+DQogICAgPHRkPkpvaG48L3RkPg0KICAgIDx0ZD5Eb2U8L3RkPg0KICAgIDx0ZD44MDwvdGQ+DQogIDwvdHI+DQo8L3RhYmxlPg0KPC9ib2R5Pg0KIDxmb290ZXI+DQogIDxwPlBvc3RlZCBieTogQ2ltcHJlc3M8L3A+DQogIDxwPkNvbnRhY3QgaW5mb3JtYXRpb246IDxhIGhyZWY9Im1haWx0bzpzb21lb25lQGV4YW1wbGUuY29tIj4NCiAgc29tZW9uZUBleGFtcGxlLmNvbTwvYT4uPC9wPg0KPC9mb290ZXI+IA0KPC9odG1sPg==",
                                      "templateType":"handlebars",
                                      "pdfRenderingOptions":{
                                        "format":"A4",
                                        "header":{
                                          "height":"15mm",
                                          "contents":"
    Header Set in json{{page}}/{{pages}}
    " }, "footer":{ "height":"15mm", "contents":"
    Footer Set in json{{page}}/{{pages}}
    " }, "border":{ "bottom":"2mm", "up":"10mm", "left":"10mm", "right":"10mm" } } }

    Decoded template:
                                    
                                    
                                    
                                    
                                    
                                    
    
                                    

    API Documentation

    PDF Rendering documentation.

    Firstname Lastname Age
    Jill Smith 50
    Eve Jackson 94
    John Doe 80


    Response Pdf:
    resources/footer-sample2-response
    pdf-thumbnail response-2.pdf


  4. Barcode Rendering

    To render barcode with customized barcode type, orientation and proper margins.

    JSON request:
                                    {
                                  		"template": "PGh0bWw+DQogIDxib2R5Pg0KICAgIDxkaXY+DQogICAgICA8Y2VudGVyPjxoND5UaGlzIGlzIGEgZG9jdW1lbnQgd2l0aCBiYXJjb2RlczwvaDQ+PC9jZW50ZXI+DQogICAgPC9kaXY+DQogICAgPGRpdj4NClRoaXMgaXMgQ29kZTEyOCBiYXJjb2RlPC9icj4NCiAgICAgIHt7I2JhcmNvZGUgYmFyY29kZURhdGExfX17ey9iYXJjb2RlfX0NCiAgICA8L2Rpdj4NCiAgICA8ZGl2Pg0KVGhpcyBpcyBDb2RlMzkgYmFyY29kZTwvYnI+DQogICAgICB7eyNiYXJjb2RlIGJhcmNvZGVEYXRhMn19e3svYmFyY29kZX19DQogICAgPC9kaXY+DQogICAgPGRpdj4NClRoaXMgaXMgRGF0YSBNYXRyaXggQmFyY29kZTwvYnI+DQogICAgICB7eyNiYXJjb2RlIGJhcmNvZGVEYXRhM319e3svYmFyY29kZX19DQogICAgPC9kaXY+DQogICAgPGRpdj4NClRoaXMgaXMgUGRmNDE3IEJhcmNvZGU8L2JyPg0KICAgICAge3sjYmFyY29kZSBiYXJjb2RlRGF0YTR9fXt7L2JhcmNvZGV9fQ0KICAgIDwvZGl2Pg0KICA8L2JvZHk+DQo8L2h0bWw+",
                                  		"templateContext": {
                                  	      "barcodeData1": {
                                  	        "content": "CP129087654",
                                  	        "barcodeType": "Code128",
                                  		    "barcodeWidth": 2,
                                  		    "humanReadable": true,
                                  		    "humanReadableFontSizeInMm": 0.5,
                                  		    "widthMillimeter": 100,
                                  		    "heightMillimeter": 40,
                                  		    "leftMarginMillimeter": 10
                                  	      },
                                  	      "barcodeData2": {
                                  	        "content": "CP129087654",
                                  	        "barcodeType": "Code39",
                                  		    "barcodeWidth": 2,
                                  		    "humanReadable": true,
                                  		    "humanReadableFontSizeInMm": 0.5,
                                  		    "widthMillimeter": 100,
                                  		    "heightMillimeter": 40,
                                  		    "leftMarginMillimeter": 10
                                  	      },
                                  	      	"barcodeData3": {
                                  	        "content": "CP129087654",
                                  	        "barcodeType": "DataMatrix",
    
                                  		    "widthMillimeter": 100,
                                  		    "heightMillimeter": 50,
                                  		    "leftMarginMillimeter": 10
                                  	      },
                                  	      	"barcodeData4": {
                                  	        "content": "CP129087654",
                                  	        "barcodeType": "Pdf417",
                                  		    "widthMillimeter": 100,
                                  		    "heightMillimeter": 50,
                                  		    "leftMarginMillimeter": 10
                                  	      }
                                  		},
                                  		"templateType": "handlebars"
                                  	}
                                  

    Decoded template:
                                    
                                      
                                        

    This is a document with barcodes

    This is Code128 barcode
    {{#barcode barcodeData1}}{{/barcode}}
    This is Code39 barcode
    {{#barcode barcodeData2}}{{/barcode}}
    This is Data Matrix Barcode
    {{#barcode barcodeData3}}{{/barcode}}
    This is Pdf417 Barcode
    {{#barcode barcodeData4}}{{/barcode}}

    Response Pdf:
    resources/barcoderendering-response
    pdf-thumbnail response-1.pdf


  5. Other PDF Rendering options – page format, page border, page orientation

    To render pdf with customized papersize, orientation and customized page border.

    JSON request:
                                    {
                                      "template":"PCFET0NUWVBFIGh0bWw+DQo8aHRtbD4NCjxoZWFkPg0KPHN0eWxlPg0KdGFibGUsIHRoLCB0ZCB7DQogICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7DQp9DQo8L3N0eWxlPg0KPC9oZWFkPg0KPGJvZHk+DQoNCjxoMz5BUEkgRG9jdW1lbnRhdGlvbjwvaDM+DQo8cD5QREYgUmVuZGVyaW5nIGRvY3VtZW50YXRpb24uPC9wPg0KPHRhYmxlIHN0eWxlPSJ3aWR0aDoxMDAlIj4NCiAgPHRyPg0KICAgIDx0aD5GaXJzdG5hbWU8L3RoPg0KICAgIDx0aD5MYXN0bmFtZTwvdGg+IA0KICAgIDx0aD5BZ2U8L3RoPg0KICA8L3RyPg0KICA8dHI+DQogICAgPHRkPkppbGw8L3RkPg0KICAgIDx0ZD5TbWl0aDwvdGQ+DQogICAgPHRkPjUwPC90ZD4NCiAgPC90cj4NCiAgPHRyPg0KICAgIDx0ZD5FdmU8L3RkPg0KICAgIDx0ZD5KYWNrc29uPC90ZD4NCiAgICA8dGQ+OTQ8L3RkPg0KICA8L3RyPg0KICA8dHI+DQogICAgPHRkPkpvaG48L3RkPg0KICAgIDx0ZD5Eb2U8L3RkPg0KICAgIDx0ZD44MDwvdGQ+DQogIDwvdHI+DQo8L3RhYmxlPg0KPC9ib2R5Pg0KIDxmb290ZXI+DQogIDxwPlBvc3RlZCBieTogQ2ltcHJlc3M8L3A+DQogIDxwPkNvbnRhY3QgaW5mb3JtYXRpb246IDxhIGhyZWY9Im1haWx0bzpzb21lb25lQGV4YW1wbGUuY29tIj4NCiAgc29tZW9uZUBleGFtcGxlLmNvbTwvYT4uPC9wPg0KPC9mb290ZXI+IA0KPC9odG1sPg==",
                                      "templateType":"handlebars",
                                      "pdfRenderingOptions":{
                                        "format":"A4",
                                        "header":{
                                          "height":"15mm",
                                          "contents":"
    Header Set in json{{page}}/{{pages}}
    " }, "footer":{ "height":"15mm", "contents":"
    Footer Set in json{{page}}/{{pages}}
    " }, "border":{ "bottom":"2mm", "up":"10mm", "left":"10mm", "right":"10mm" } } }

    Decoded template:
                                    
                                    
                                    
                                    
                                    
                                    
    
                                    

    API Documentation

    PDF Rendering documentation.

    Firstname Lastname Age
    Jill Smith 50
    Eve Jackson 94
    John Doe 80

    Response Pdf:
    resources/pdfrendering-response
    pdf-thumbnail response-1.pdf


  6. Other HTML Capabilities

    PDF rendering example with all the capabilities of html which includes support for languages and other tags.

    JSON request:
                                    {
                                  		"template": "PGh0bWw+DQo8Ym9keT4NCiAgICA8ZGl2Pg0KICAgICAgPGNlbnRlcj48aDE+e3toZWFkZXJUaXRsZX19PC9oMT48L2NlbnRlcj4NCiAgICAgIDxjZW50ZXI+PGgzPnt7aGVhZGVyU3VidGl0bGV9fTwvaDM+PC9jZW50ZXI+DQogICAgPC9kaXY+DQogICAgPGRpdj4NCiAgICAgIDxjZW50ZXI+PGg0PlRoaXMgaXMgYW4gQWxsIEluIE9uZSBUZXN0PC9oND48L2NlbnRlcj4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2Pg0KICAgICAge3sjdGFibGUgdGFibGVEYXRhfX17ey90YWJsZX19DQogICAgPC9kaXY+DQogICAgPGRpdj4NCiAgICAgIDxwIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0Ij57e2phcGFuZXNlVGV4dH19PC9wPg0KICAgICAgPHAgc3R5bGU9InRleHQtYWxpZ246Y2VudGVyIj57e2hpbmRpVGV4dH19PC9wPg0KICAgIDwvZGl2Pg0KICA8L2JvZHk+DQo8L2h0bWw+",
                                  		"templateContext": {
                                  			"headerTitle": "Title / Header for the Document",
                                  			"japaneseText": "て餯 とずぴょ 䦦䰯ビェ榩䣊 軣ミェ䧺お",
                                  			"hindiText": "ہیلو آپ کیسے ہیں",
                                  			"tableData": {
                                  				"body": {
                                  					"rows": [
                                  						[
                                  							"This is an italic text",
                                  							"Normal Image"
                                  						],
                                  						[
                                  							"This is a bold text",
                                  							"",
                                  							"Standard Barcode"
                                  						],
                                  						[
                                  							"

    This is red colored text

    ", "", "QR Code" ], [ "

    This is text in Comic Sans MS Font

    ", "", "PDF-417 Barcode" ] ] } } }, "templateType": "handlebars", "pdfRenderingOptions": { "footer": { "contents": "
    Footer Set in json{{page}}/{{pages}}
    " } } }

    Decoded template:
                                    
                                      
                                          

    {{headerTitle}}

    {{headerSubtitle}}

    This is an All In One Test

    {{#table tableData}}{{/table}}

    {{japaneseText}}

    {{hindiText}}


    Response Pdf:
    resources/html-response
    pdf-thumbnail response-1.pdf