Stencil is a templating engine to produce Office Open XML (mostly Microsoft
Office's Word .docx
files) from Java programs. It has a simple syntax and no
programming is needed to write or modify document templates.
The aim of this project is to provide an easy-to-use and freely available tool for generating office documents.
You can use either Microsoft Word or LibreOffice to edit the document templates. The template expressions are just simple texts, and you can even colour-code them to make the template more readable.
- Works with
docx
andpptx
files - Simple value substitution
- Substituting HTML text for dynamic text formatting
- Conditional blocks in the template
- Repeating blocks in the template
- Dynamically show/hide rows and columns in tables
- See the Example templates
- Read the Documentation
- Read about the Java API and the Clojure API or see the Technical Documentation
The project has a simple service implementation, which is available on the GitHub Package Repository as a Docker image.
Latest stable version is 0.3.19
Latest snapshot version is 0.3.20-SNAPSHOT
If you are using Maven, add the followings to your pom.xml
:
The dependency:
<dependency>
<groupId>io.github.erdos</groupId>
<artifactId>stencil-core</artifactId>
<version>0.3.19</version>
</dependency>
And the Clojars repository:
<repository>
<id>clojars.org</id>
<url>https://repo.clojars.org</url>
</repository>
Alternatively, if you are using Leiningen, add the following to
the :dependencies
section of your project.clj
file: [io.github.erdos/stencil-core "0.3.19"]
Previous versions are available on the Stencil Clojars page.
Copyright (c) Janos Erdos. All rights reserved. The use and distribution terms
for this software are covered by the Eclipse Public License 2.0
(https://www.eclipse.org/legal/epl-2.0/) which can be found in the file
LICENSE.txt
at the root of this distribution. By using this software in any
fashion, you are agreeing to be bound by the terms of this license. You must not
remove this notice, or any other, from this software.