82label

문서 › 서식 만들기

필드 ({{ }})

바뀌는 값을 {{이름}} 으로 적고, 데이터 한 줄이 라벨 한 장이 됩니다.

글자, 바코드 값, QR 값, 이미지 주소 어디에나 {{이름}} 을 넣을 수 있습니다. 인쇄할 때 넘긴 데이터의 같은 이름 값으로 바뀝니다. 고정 글자와 섞어 써도 됩니다: '주문 {{orderNo}} · {{qty}}개'.

실제 라이브러리로 그린 예제

이 예제의 코드

const template = {
  v: 1,
  name: '가격표',
  paper: { kind: 'roll' },
  label: { width: 40, height: 30 },
  elements: [
    { type: 'text', x: 2, y: 2, w: 36, h: 8, text: '{{name}}', size: 9, bold: true, fit: 'wrap' },
    { type: 'text', x: 2, y: 10, w: 36, h: 7, text: '{{price}}원', size: 14, bold: true, align: 'right' },
    { type: 'barcode', x: 2, y: 18, w: 36, h: 10, format: 'ean13', value: '{{ean}}' },
  ],
};

const rows = [
  { name: '유기농 우유 900ml', price: '3,480', ean: '880123456789' },
  { name: '통밀 식빵', price: '4,200', ean: '880123456790' },
];

Label82.print(template, rows);

데이터

  • print(template, rows) 의 rows 는 객체 하나 또는 배열입니다. 배열의 한 항목이 라벨 한 장입니다.
  • 값은 문자열이나 숫자. null·undefined·없는 이름은 빈 칸이 됩니다.
  • 값은 글자로만 들어갑니다(HTML·SVG 로 해석하지 않음). 고객이 입력한 주소를 그대로 넣어도 안전합니다.
  • 같은 라벨을 여러 장: { copies: 3 }. 행마다 3장씩 나옵니다. 행마다 다르게 찍으려면 { qtyField: '수량' }(그 열의 숫자만큼).

필드 목록과 예시값

디자이너는 서식 안의 {{ }} 를 모아 필드 표를 만들고, 예시값을 fields 에 저장합니다. 데이터 없이 미리보기할 때 이 예시값이 쓰입니다.

import { extractFields, exampleRow, fill } from '@82label/core';

extractFields(template); // ['name', 'price', 'ean']
exampleRow(template);    // { name: '…', price: '…', ean: '…' } (fields[].example, 없으면 이름)
fill('{{name}} {{price}}원', { name: '우유', price: '3,480' }); // '우유 3,480원'

찍히는 모양을 바꾸는 {{가격|won}}, {{날짜|date:YYYY.MM.DD}}, 일련번호 {{seq:0001}}, 오늘 날짜 {{today+365}} 는 값 서식·일련번호·날짜에 있습니다. 엑셀 파일로 코드 없이 찍으려면 대량 출력.