template-shot
A simple library which can render the html template to a png image.
Installation
This module is installed via npm:
npm install --save template-shot
Notice
renderOptions (where needed) are the same as webshot's
Available methods
- constructor
TemplateShot(templateDir: string = './', useCache: boolean = false)
Constructor of the base class.templateDir: string
is the path to your templatesuseCache: boolean
if set to true, the loaded templates are being cached
- TemplateShot.renderFileRenders the template to a file.TemplateShot.renderFiletemplate: string,templateValues: ITemplateValues = ,fname: string,options: any = PictureGenerator.DEFAULT_OPTIONS: Promise<void>
template: string
path to your templatetemplateValues: ITemplateValues
object, wich properties will be pasted to the templatefname: string
path to save the rendered imageoptions: any
renderOptions (where needed) are the same as webshot's
- TemplateShot.renderStreamRenders the template to a stream.TemplateShot.renderStreamtemplate: string,templateValues: ITemplateValues = ,options: any = PictureGenerator.DEFAULT_OPTIONS: Stream
template: string
path to your templatetemplateValues: ITemplateValues
object, wich properties will be pasted to the templateoptions: any
renderOptions (where needed) are the same as webshot's
- TemplateShot.renderStringRenders the template to a string.TemplateShotrenderStringtemplate: string,templateValues: ITemplateValues = ,options: any = PictureGenerator.DEFAULT_OPTIONS: Promise<string>
template: string
path to your templatetemplateValues: ITemplateValues
object, wich properties will be pasted to the templateoptions: any
renderOptions (where needed) are the same as webshot's
Examples
This example renders the sample template index.html into example1.png. Notice, that {paragraph_text} is replaced with Test text
in the rendered image.
const TemplateShot = ; const templatePath = 'path/to/your/template/folder';console; const ts = templatePath;const templateName = 'index.html';const renderOptions = // these are webshot options screenSize: width: 540 height: 900 shotSize: width: 'all' height: 'all' ; console;ts;
Rendered image
See examples folder for more examples.
TODO: add template examples
Contributing
To set up your development environment:
- Clone the repo to your desktop,
- In the shell
cd
to the main folder, - Hit
npm install
To build the project (including the tests):
npm run build
To watch the files for changes and rebuild if necessary:
npm run watch
To run tests:
npm run test
To run linter:
npm run lint