zpl-js-helper
TypeScript icon, indicating that this package has built-in type declarations

0.0.123 • Public • Published

Label Generation Package

Overview

This package provides a flexible way to generate ZPL (Zebra Programming Language) label templates with dynamic sections. It allows defining text sections with specific sizes, origins, paddings, and orientations, then populating them with structured data.

Installation

Ensure you have Node.js installed, then install the package:

npm install zpl-js-helper

Usage

Import the required classes from the package:

const {
  Origin,
  Size,
  Template,
  TextSection,
  LabelBuilder,
  Padding,
} = require("zpl-js-helper"); 

Defining a Label Template

Create a new template and define the sections:

const template = new Template(50, 100);

const size = new Size(200, 400);
const padding = new Padding(20, 20, 20, 20);

const sections = [];

//create the sections.
sections.push(new TextSection('0', size, new Origin(0, 0), 'orderNumber', 'all', 2, padding));
sections.push(new TextSection('C', size, new Origin(400, 0), 'address', 'all', 2));
sections.push(new TextSection('0', size, new Origin(0, 200), 'name', 'all', 2, padding, 'landscape', "C", 20));
sections.push(new TextSection('C', size, new Origin(200, 400), 'orderDate', 'all', 2, padding, 'landscape', "C"));

//Add the sections to your template.
sections.forEach((section) => {
  template.addZPLSection(section);
});

Populating the Label with Data

Define records that will populate the label template:

const sectionRecords = [
  {
    name: ["John Smtih"],
    orderDate: ["20 March 2025"],
    address: ["10 High St, New State, 2893"],
    orderNumber: ["#987234798"],
    
  }
];

Generating the ZPL Output

Pass the template and records to the LabelBuilder:

const labelBuilder = new LabelBuilder(template, sectionRecords);
const zplOutput = labelBuilder.generateZPL();
console.log(zplOutput);

Features

  • Define label templates with text sections, sizes, and padding.
  • Support for different text orientations (portrait/landscape).
  • Dynamically populate templates with structured data.
  • Generate ZPL output for label printers.
  • An attempt at auto-scaling and wrapping text to prevent overflow from predefined sections (Uses the '0' font style).

License

This package is licensed under MIT.

Readme

Keywords

Package Sidebar

Install

npm i zpl-js-helper

Weekly Downloads

8

Version

0.0.123

License

MIT

Unpacked Size

82.2 kB

Total Files

10

Last publish

Collaborators

  • mib99