SAP-archive / utils-pptx-templater

The pptx templater modifies powerpoint template with provided data before docxtemplater generates the final version of the document.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

pptxTemplater

REUSE status

The pptxtemplater modifies PowerPoint template and provided data before docxtemplater generates the final version of the document.

This module can be used only in combination with docxtemplater.

Installation

Use npm install to get the module

npm install docxtemplater --save
npm install pptxtemplater --save

In your code use the pptxtemplater as a module:

let pptxTemplaterModule = require('pptxtemplater');
let doc = new this.Docxtemplater(content);
doc.attachModule(pptxTemplaterModule);

Requirements

Usage

There are two new features added to the standard functionality of docxtemplater:

Split PowerPoint table slides

You can now split one long table into multiple slides with the smaller number of table rows. To do so, you have to provide maximal number of rows in your template that should be shown on one slide.

{#array;max_rows:10}{your_data}{/array}

Duplicate PowerPoint slides

If you have a slide which should be duplicated dynamically depending on provided data you can use "multiplier" tag: $. Each slide, containing this tag will be as many times duplicated as many entries are stored in the array with the same name.

If there are no data for this tag, this slide will be deleted.

{$data_to_show_on_multiple_slides}

Here is an example:

Template Template sample

Output Output sample

For data

{
    "DATA_TO_SHOW_ON_MULTIPLE_SLIDES": [{
        "COUNTRY": "Germany",
        "REVENUE_PER_REGION": [{
                "Region": "Berlin",
                "ZIP": "55014",
                "Revenue": "€93896.94"
            }, {
                "Region": "Saxony-Anhalt",
                "ZIP": "30652",
                "Revenue": "€51759.11"
            }, {
                "Region": "HH",
                "ZIP": "05652",
                "Revenue": "€51355.41"
            }]
        },{
        "COUNTRY": "Austria",
        "REVENUE_PER_REGION": [{
                "Region": "Bgl",
                "ZIP": "8571",
                "Revenue": "€77899.04"
            },
            {
                "Region": "Vienna",
                "ZIP": "4403",
                "Revenue": "€77276.25"
            },
            {
                "Region": "Vienna",
                "ZIP": "9122",
                "Revenue": "€48795.89"
            }]
        }
    ]
}

Contributions

Contributions are greatly appreciated. See CONTRIBUTING for details

How to obtain support

Feel free to open new issues for feature requests, bugs or general feedback on the GitHub issues page of this project.

License

Copyright 2016-2021 SAP SE or an SAP affiliate company and utils-pptx-templater contributors. Please see our LICENSE for copyright and license information. Detailed information including third-party components and their licensing/copyright information is available via the REUSE tool.

About

The pptx templater modifies powerpoint template with provided data before docxtemplater generates the final version of the document.

License:Apache License 2.0


Languages

Language:JavaScript 100.0%