# Formtec sheets

> 52 Formtec A4 sheet labels: grid, size, margins and the start slot (startAt).

Source: https://82label.app/en/docs/sheets/

82label knows the slot layout of 52 Formtec A4 label sheets, checked against Formtec's official templates, each with its source. Sheets fill from the top left slot to the right, row by row, and continue on a new page when the slots run out.

```js
const template = {
  v: 1,
  name: 'Address label',
  paper: Label82.sheetPaper('formtec-3108'), // LS-3108, 2 across × 7 down
  label: { width: 99.1, height: 38.1 },
  elements: [
    { type: 'text', x: 6, y: 5, w: 86, h: 14, text: '{{address}}', size: 10, fit: 'wrap' },
    { type: 'text', x: 6, y: 22, w: 86, h: 10, text: '{{name}}', size: 14, bold: true },
  ],
};

const rows = [
  { address: '12F, 152 Teheran-ro, Gangnam-gu, Seoul', name: 'Haneul Kim' },
  { address: '3F, 79 Centum jungang-ro, Haeundae-gu, Busan', name: 'Doyun Lee' },
  { address: '201, Bldg 5, 99 Daehak-ro, Yuseong-gu, Daejeon', name: 'Seoyeon Park' },
];

Label82.print(template, rows, { startAt: 3 });
```

This example uses `startAt: 3`, so filling begins at the third slot: handy for a sheet that already has some labels used.

```js
Label82.print(template, rows, { startAt: 3 });
```

## A template from a sheet

```js
import { presetTemplate, sheetPaper } from '@82label/core';

const t = presetTemplate('formtec', 'LS-3114'); // 'formtec-3114' and '3114' work too
// or just the paper: paper: sheetPaper('formtec-3114')
```

## Your own sheet

For a sheet not on the list, give the grid and margins. `pitchX` and `pitchY` run from one slot's left (top) edge to the next one's (label size plus gap).

```js
paper: {
  kind: 'sheet', page: 'A4',
  cols: 3, rows: 8,
  marginTop: 12.5, marginLeft: 6.5,
  pitchX: 66.5, pitchY: 34,
}
```

## Included sheets (52)

"Unconfirmed" means at least one value could not be checked against an official template; test on plain paper first. To open one in the designer, use [Templates](https://82label.app/en/templates/).

| Code | Name | Grid | Label (mm) | Values |
| --- | --- | --- | --- | --- |
| `LS-3105` | 주소용 라벨 21칸 | 3×7 | 63.5×38.1 | checked |
| `LS-3106` | 주소용 라벨 24칸 | 3×8 | 64×34 | checked |
| `LS-3107` | 주소용 라벨 16칸 | 2×8 | 99.1×33.9 | checked |
| `LS-3108` | 주소용 라벨 14칸 | 2×7 | 99.1×38.1 | checked |
| `LS-3109` | 주소용 라벨 18칸 | 2×9 | 100×30 | checked |
| `LS-3212` | 주소용 라벨 12칸 | 2×6 | 100×45 | checked |
| `LS-3218` | 주소용 라벨 18칸 | 3×6 | 63.5×45 | checked |
| `LS-3219` | 주소용 라벨 22칸 | 2×11 | 100×24.5 | checked |
| `LS-3620` | 주소용 라벨 6칸 | 1×6 | 119.3×42.8 | checked |
| `LS-3667` | 주소용 라벨 12칸 | 2×6 | 76×44.4 | checked |
| `LS-3112` | 물류관리용 라벨 12칸 | 3×4 | 63.5×70 | checked |
| `LS-3114` | 물류관리용 라벨 8칸 | 2×4 | 99.1×67.7 | checked |
| `LS-3116` | 물류관리용 라벨 6칸 | 2×3 | 99.1×93.1 | checked |
| `LS-3118` | 물류관리용 라벨 4칸 | 2×2 | 99.1×140 | checked |
| `LS-3120` | 물류관리용 라벨 2칸 | 1×2 | 200×140 | checked |
| `LS-3203` | 물류관리용 라벨 3칸 | 1×3 | 200×93 | checked |
| `LS-3660` | 물류관리용 라벨 8칸 | 1×8 | 124×30 | checked |
| `LS-3100` | 바코드용 라벨 65칸 | 5×13 | 38.1×21.2 | checked |
| `LS-3101` | 바코드용 라벨 60칸 | 5×12 | 38.1×19.2 | checked |
| `LS-3102` | 바코드용 라벨 40칸 | 4×10 | 47×26.9 | checked |
| `LS-3104` | 바코드용 라벨 27칸 | 3×9 | 62.7×30.1 | checked |
| `LS-3110` | 분류표기용 라벨 54칸 | 6×9 | 26×29.5 | checked |
| `LS-3136` | 분류표기용 라벨 136칸 | 4×34 | 46×8 | checked |
| `LS-3142` | 분류표기용 라벨 42칸 | 2×21 | 72×13 | checked |
| `LS-3145` | 분류표기용 라벨 145칸 | 5×29 | 30×9 | checked |
| `LS-3154` | 분류표기용 라벨 54칸 | 3×18 | 62.7×15 | checked |
| `LS-3181` | 분류표기용 라벨 81칸 | 3×27 | 53×10 | checked |
| `LS-3189` | 분류표기용 라벨 189칸 | 7×27 | 25.4×10 | checked |
| `LS-3216` | 분류표기용 라벨 216칸 | 8×27 | 20×10 | checked |
| `LS-3622` | 분류표기용 라벨 96칸 | 6×16 | 30×14 | checked |
| `LS-3623` | 분류표기용 라벨 84칸 | 4×21 | 46×11 | checked |
| `LS-3676` | 분류표기용 라벨 76칸 | 4×19 | 40×14 | checked |
| `LS-3677` | 분류표기용 라벨 78칸 | 6×13 | 30×21 | checked |
| `LS-3510` | 분류표기용 라벨 10칸 | 2×5 | 88.9×52 | checked |
| `LS-3615` | 분류표기용 라벨 10칸 | 2×5 | 69.8×52 | checked |
| `LS-3610` | 분류표기·QR 라벨 8칸 | 2×4 | 69.8×69.8 | checked |
| `LS-3111` | 분류표기·QR 라벨 104칸 | 8×13 | 20×20 | checked |
| `LS-3990` | QR 전용 라벨 28칸 | 4×7 | 40×40 | checked |
| `LS-3639` | 원형 라벨 Ø38 20칸 | 4×5 | 38×38 | checked |
| `LS-3640` | 원형 라벨 Ø63 12칸 | 3×4 | 63×63 | checked |
| `LS-3641` | 원형 라벨 Ø20 108칸 | 9×12 | 20×20 | checked |
| `CL-3642P` | CD/DVD 라벨 2칸 | 1×2 | 117.8×117.8 | **unconfirmed** |
| `LS-3621` | 화일인덱스 라벨 36칸 | 2×18 | 95×14 | checked |
| `LS-3624` | 화일인덱스 라벨 9칸 | 1×9 | 150×28 | checked |
| `LS-3625` | 화일인덱스 라벨 7칸 | 1×7 | 160×38 | checked |
| `LS-3626` | 화일인덱스 라벨 4칸 | 1×4 | 160×60 | checked |
| `LS-3627` | 화일인덱스(등) 라벨 8칸 | 4×2 | 48×130 | checked |
| `LS-3628` | 화일인덱스(등) 라벨 30칸 | 15×2 | 12×130 | checked |
| `LS-3661` | 화일인덱스 라벨 48칸 | 1×48 | 114×5.5 | checked |
| `LS-3662` | 화일인덱스 라벨 13칸 | 1×13 | 146×17.8 | checked |
| `LS-2308B` | 이름표 라벨 8칸 | 2×4 | 90×60 | checked |
| `LS-3130` | 전지 라벨 1칸 (분류표기용) | 1×1 | 210×297 | checked |

> Turn off "fit to page" and print at actual size (100%). Home inkjets may shift the top or bottom by a few millimetres; if so, adjust `marginTop` and `marginLeft` in 0.5 mm steps rather than moving every element.
