ThermalLabel Web API can be used for designing from simple to complex labels layout supporting Texts, Barcodes, Graphics and Images, RFID Tags, and Shapes like circles, ellipses, rectangles, and lines. It provides an unified object model which will allow you to create one label design and export/convert it to either raw Zebra, EPSON & Honeywell-Intermec printer commands as well as to image or document formats like JPEG/JPG, PNG, PCX, SVG, HTML, and PDF!
Expressions/Formulas can include a combination of variables, constants, operators, functions, and references to label Items as well as to data fields in a data merging/binding scenario.
Expressions are set to any Item in the label to dynamically set the Item's content based on the expressions result.
ThermalLabel Web API ships with 100+ built-in well-known functions.
Text items supporting multi-line, content alignment, sizing, Unicode,
RTL (Hebrew, Arabic, etc.), Custom and installed TTF files, White Text
On Black, rotation, horizontal alignment, counters, and text masking.
Graphic, Image & Picture items supporting image formats like
JPG/JPEG, and PNG; monochrome conversion features like Threshold and
Floyd-Steinberg algorithms and reversing; sources image like files, base64 as
well as binary content.
Shape items supporting lines (horizontal, vertical, and diagonals),
rectangles with rounded corners, circles and ellipses.
RFID items supporting ASCII, HEX as well as EPC Data Structures. (NOTE: Only available for ZPL & Fingerprint printers)
Designed by following some of the REST principles, ThermalLabel Web API for Docker responds to simple HTTP GET & POST requests by specifying the right parameters through a JSON object in the request body, returning the output processing in the raw commands, image or document formats specified through the Accept header.
ThermalLabel Web API for Docker is available at Docker Hub registry.
To pull/download the Docker image, please type the following from a Terminal:
To run the Docker image, please type the following from a Terminal:
The desired output rendering format must be specified through the Accept header. The supported formats are the following:
Accept | Description |
---|---|
image/png |
Returns the first rendered label in PNG format. If the specified params generate more than one label, then you should specify image/png+json or image/png+zip values instead. |
image/jpeg |
Returns the first rendered label in JPEG/JPG format. If the specified params generate more than one label, then you should specify image/jpeg+json or image/jpeg+zip values instead. |
image/svg+xml |
Returns all the rendered labels in SVG format. |
application/pdf |
Returns all the rendered labels as a single PDF document. The PDF file will contain as many pages as rendered labels. |
image/vnd.zbrush.pcx |
Returns the first rendered label in PCX format. If the specified params generate more than one label, then you should specify image/vnd.zbrush.pcx+json or image/vnd.zbrush.pcx+zip values instead. |
text/html |
Returns all the rendered labels in HTML format. |
application/vnd.zpl |
Returns all the rendered labels in Zebra ZPL format. |
application/vnd.epl |
Returns all the rendered labels in Zebra EPL format. |
application/vnd.fingerprint |
Returns all the rendered labels in Honeywell-Intermec Fingerprint format. |
application/vnd.escpos |
Returns all the rendered labels in EPSON ESC/POS format. |
image/png+json |
Returns all the rendered labels as a JSON Array containing each label in Base64 PNG Data URI scheme. The returned JSON Object will have this structure: {labels:["data:image/png;base64,<BASE64-STRING>", "data:image/png;base64,<BASE64-STRING>", ... ]} |
image/jpeg+json |
Returns all the rendered labels as a JSON Array containing each label in Base64 JPEG Data URI scheme. The returned JSON Object will have this structure: {labels:["data:image/jpeg;base64,<BASE64-STRING>", "data:image/jpeg;base64,<BASE64-STRING>", ... ]} |
image/svg+xml+json |
Returns all the rendered labels as a JSON Array containing each label in Base64 SVG Data URI scheme. The returned JSON Object will have this structure: {labels:["data:image/svg+xml;base64,<BASE64-STRING>", "data:image/svg+xml;base64,<BASE64-STRING>", ... ]} |
application/pdf+json |
Returns all the rendered labels as a JSON Array containing a single PDF in Base64 Data URI scheme. The PDF file will contain as many pages as rendered labels. The returned JSON Object will have this structure: {labels:["data:application/pdf;base64,<BASE64-STRING>"]} |
image/vnd.zbrush.pcx+json |
Returns all the rendered labels as a JSON Array containing each label in Base64 PCX Data URI scheme. {labels:["data:image/vnd.zbrush.pcx;base64,<BASE64-STRING>", "data:image/vnd.zbrush.pcx;base64,<BASE64-STRING>", ... ]} |
text/html+json |
Returns all the rendered labels as a JSON Array containing each label in Base64 HTML Data URI scheme. The returned JSON Object will have this structure: {labels:["data:text/html;base64,<BASE64-STRING>", "data:text/html;base64,<BASE64-STRING>", ... ]} |
application/vnd.zpl+json |
Returns all the rendered labels as a JSON Array containing each label in Base64 ZPL Data URI scheme. {labels:["data:application/vnd.zpl;base64,<BASE64-STRING>", "data:application/vnd.zpl;base64,<BASE64-STRING>", ... ]} |
application/vnd.epl+json |
Returns all the rendered labels as a JSON Array containing each label in Base64 EPL Data URI scheme. {labels:["data:application/vnd.epl;base64,<BASE64-STRING>", "data:application/vnd.epl;base64,<BASE64-STRING>", ... ]} |
application/vnd.fingerprint+json |
Returns all the rendered labels as a JSON Array containing each label in Base64 Fingerprint Data URI scheme. {labels:["data:application/vnd.fingerprint;base64,<BASE64-STRING>", "data:application/vnd.fingerprint;base64,<BASE64-STRING>", ... ]} |
application/vnd.escpos+json |
Returns all the rendered labels as a JSON Array containing each label in Base64 ESC/POS Data URI scheme. {labels:["data:application/vnd.escpos;base64,<BASE64-STRING>", "data:application/vnd.escpos;base64,<BASE64-STRING>", ... ]} |
image/png+zip |
Returns all the rendered labels as a ZIP file containing each label in PNG format. Each file name is named to [DataTime-Ticks].png |
image/jpeg+zip |
Returns all the rendered labels as a ZIP file containing each label in JPEG/JPG format. Each file name is named to [DataTime-Ticks].jpg |
image/svg+xml+zip |
Returns all the rendered labels as a ZIP file containing a single SVG. The SVG file will contain as many pages as rendered labels. [DataTime-Ticks].svg |
application/pdf+zip |
Returns all the rendered labels as a ZIP file containing a single PDF. The PDF file will contain as many pages as rendered labels. [DataTime-Ticks].pdf |
image/vnd.zbrush.pcx+zip |
Returns all the rendered labels as a ZIP file containing each label in PCX format. Each file name is named to [DataTime-Ticks].pcx |
text/html+zip |
Returns all the rendered labels as a ZIP file containing a single HTML doc. The HTML file will contain as many pages as rendered labels. [DataTime-Ticks].html |
application/vnd.zpl+zip |
Returns all the rendered labels as a ZIP file containing a single ZPL file. The ZPL file will contain as many pages as rendered labels. [DataTime-Ticks].zpl |
application/vnd.epl+zip |
Returns all the rendered labels as a ZIP file containing a single EPL file. The EPL file will contain as many pages as rendered labels. [DataTime-Ticks].epl |
application/vnd.fingerprint+zip |
Returns all the rendered labels as a ZIP file containing a single Fingerprint file. The Fingerprint file will contain as many pages as rendered labels. [DataTime-Ticks].fingerprint |
application/vnd.escpos+zip |
Returns all the rendered labels as a ZIP file containing a single ESC/POS file. The ESC/POS file will contain as many pages as rendered labels. [DataTime-Ticks].escpos |
ThermalLabel Web API is licensed for Private On-Premise environments giving you full control on the infrastructure where our product will run on. Please refer to Licensing model and prices...
When you buy a commercial license of ThermalLabel Web API for Docker, you are provided with license information (LICENSE_OWNER & LICENSE_KEY
for the Web API - EDITOR_LICENSE_OWNER & EDITOR_LICENSE_KEY
for the Web Label Editor) to register the product. The license information must be specified to the Docker image as environment variables as folows:
The Trial Version of ThermalLabel Web API for Docker is fully functional and has no expiry date. However, while in TRIAL mode, the output rendering has the following limitations:
2020-12-30