@thermal-label/brother-ql-core 0.2.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/README.md +1 -1
  2. package/data/devices.json +823 -0
  3. package/data/media.json +823 -0
  4. package/dist/__tests__/devices.test.js +112 -31
  5. package/dist/__tests__/devices.test.js.map +1 -1
  6. package/dist/__tests__/media.test.js +274 -4
  7. package/dist/__tests__/media.test.js.map +1 -1
  8. package/dist/__tests__/pack-bits.test.d.ts +2 -0
  9. package/dist/__tests__/pack-bits.test.d.ts.map +1 -0
  10. package/dist/__tests__/pack-bits.test.js +90 -0
  11. package/dist/__tests__/pack-bits.test.js.map +1 -0
  12. package/dist/__tests__/preview.test.js +1 -1
  13. package/dist/__tests__/preview.test.js.map +1 -1
  14. package/dist/__tests__/protocol.test.js +214 -2
  15. package/dist/__tests__/protocol.test.js.map +1 -1
  16. package/dist/__tests__/status.test.js +71 -0
  17. package/dist/__tests__/status.test.js.map +1 -1
  18. package/dist/devices.d.ts +14 -271
  19. package/dist/devices.d.ts.map +1 -1
  20. package/dist/devices.generated.d.ts +696 -0
  21. package/dist/devices.generated.d.ts.map +1 -0
  22. package/dist/devices.generated.js +831 -0
  23. package/dist/devices.generated.js.map +1 -0
  24. package/dist/devices.js +28 -273
  25. package/dist/devices.js.map +1 -1
  26. package/dist/index.d.ts +10 -9
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +6 -6
  29. package/dist/index.js.map +1 -1
  30. package/dist/media.d.ts +37 -10
  31. package/dist/media.d.ts.map +1 -1
  32. package/dist/media.generated.d.ts +4 -0
  33. package/dist/media.generated.d.ts.map +1 -0
  34. package/dist/media.generated.js +1640 -0
  35. package/dist/media.generated.js.map +1 -0
  36. package/dist/media.js +75 -264
  37. package/dist/media.js.map +1 -1
  38. package/dist/orientation.d.ts +11 -0
  39. package/dist/orientation.d.ts.map +1 -0
  40. package/dist/orientation.js +10 -0
  41. package/dist/orientation.js.map +1 -0
  42. package/dist/pack-bits.d.ts +20 -0
  43. package/dist/pack-bits.d.ts.map +1 -0
  44. package/dist/pack-bits.js +61 -0
  45. package/dist/pack-bits.js.map +1 -0
  46. package/dist/preview.d.ts +6 -6
  47. package/dist/preview.d.ts.map +1 -1
  48. package/dist/preview.js +11 -12
  49. package/dist/preview.js.map +1 -1
  50. package/dist/protocol.d.ts +54 -3
  51. package/dist/protocol.d.ts.map +1 -1
  52. package/dist/protocol.js +125 -20
  53. package/dist/protocol.js.map +1 -1
  54. package/dist/status.d.ts +5 -2
  55. package/dist/status.d.ts.map +1 -1
  56. package/dist/status.js +6 -3
  57. package/dist/status.js.map +1 -1
  58. package/dist/types.d.ts +106 -31
  59. package/dist/types.d.ts.map +1 -1
  60. package/dist/types.js +1 -2
  61. package/dist/types.js.map +1 -1
  62. package/package.json +13 -9
  63. package/src/__tests__/devices.test.ts +122 -32
  64. package/src/__tests__/media.test.ts +312 -4
  65. package/src/__tests__/pack-bits.test.ts +92 -0
  66. package/src/__tests__/preview.test.ts +1 -1
  67. package/src/__tests__/protocol.test.ts +256 -1
  68. package/src/__tests__/status.test.ts +87 -0
  69. package/src/devices.generated.ts +840 -0
  70. package/src/devices.ts +31 -273
  71. package/src/index.ts +36 -8
  72. package/src/media.generated.ts +1644 -0
  73. package/src/media.ts +87 -264
  74. package/src/orientation.ts +11 -0
  75. package/src/pack-bits.ts +64 -0
  76. package/src/preview.ts +13 -12
  77. package/src/protocol.ts +204 -19
  78. package/src/status.ts +11 -5
  79. package/src/types.ts +113 -32
  80. package/dist/__tests__/colour.test.d.ts +0 -2
  81. package/dist/__tests__/colour.test.d.ts.map +0 -1
  82. package/dist/__tests__/colour.test.js +0 -106
  83. package/dist/__tests__/colour.test.js.map +0 -1
  84. package/dist/colour.d.ts +0 -26
  85. package/dist/colour.d.ts.map +0 -1
  86. package/dist/colour.js +0 -84
  87. package/dist/colour.js.map +0 -1
  88. package/src/__tests__/colour.test.ts +0 -126
  89. package/src/colour.ts +0 -101
@@ -0,0 +1 @@
1
+ {"version":3,"file":"media.generated.js","sourceRoot":"","sources":["../src/media.generated.ts"],"names":[],"mappings":"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"}
package/dist/media.js CHANGED
@@ -1,266 +1,38 @@
1
- import {} from './types.js';
1
+ import { MEDIA } from './media.generated.js';
2
+ export { MEDIA };
2
3
  /**
3
- * Registry of supported Brother QL consumables.
4
+ * Resolve per-head-family geometry for a media entry against the
5
+ * engine that's about to print it.
4
6
  *
5
- * Entries are keyed by the firmware media id the same number the
6
- * printer reports in the 32-byte status response. `heightMm` is
7
- * omitted for continuous media (variable length) and set for die-cut
8
- * labels (fixed length). Only DK-22251 has `colorCapable: true` — the
9
- * driver uses that to run two-colour plane separation before sending
10
- * the raster.
7
+ * DK entries fall back to the flat `printAreaDots` / `leftMarginPins` /
8
+ * `rightMarginPins` fields on the entry the same values every QL
9
+ * code path read before the head-family split landed. TZe and HSe
10
+ * entries dispatch on `engine.headDots`: 128 picks `geometry.narrow`,
11
+ * anything else picks `geometry.wide`. Throws when the requested head
12
+ * family has no entry (e.g. 36 mm TZe on a 128-dot head, or any HSe
13
+ * on PT-P910BT — those engines simply shouldn't reach this call site
14
+ * because `findMediaByDimensions` gates them upstream).
11
15
  */
12
- export const MEDIA = {
13
- // Continuous length tape
14
- 257: {
15
- id: 257,
16
- name: '12mm continuous',
17
- type: 'continuous',
18
- widthMm: 12,
19
- colorCapable: false,
20
- printAreaDots: 106,
21
- leftMarginPins: 585,
22
- rightMarginPins: 29,
23
- },
24
- 258: {
25
- id: 258,
26
- name: '29mm continuous (DK-22210)',
27
- type: 'continuous',
28
- widthMm: 29,
29
- colorCapable: false,
30
- printAreaDots: 306,
31
- leftMarginPins: 408,
32
- rightMarginPins: 6,
33
- },
34
- 264: {
35
- id: 264,
36
- name: '38mm continuous (DK-22225)',
37
- type: 'continuous',
38
- widthMm: 38,
39
- colorCapable: false,
40
- printAreaDots: 413,
41
- leftMarginPins: 295,
42
- rightMarginPins: 12,
43
- },
44
- 262: {
45
- id: 262,
46
- name: '50mm continuous (DK-22246)',
47
- type: 'continuous',
48
- widthMm: 50,
49
- colorCapable: false,
50
- printAreaDots: 554,
51
- leftMarginPins: 154,
52
- rightMarginPins: 12,
53
- },
54
- 261: {
55
- id: 261,
56
- name: '54mm continuous (DK-22214)',
57
- type: 'continuous',
58
- widthMm: 54,
59
- colorCapable: false,
60
- printAreaDots: 590,
61
- leftMarginPins: 130,
62
- rightMarginPins: 0,
63
- },
64
- 259: {
65
- id: 259,
66
- name: '62mm continuous (DK-22205)',
67
- type: 'continuous',
68
- widthMm: 62,
69
- colorCapable: false,
70
- printAreaDots: 696,
71
- leftMarginPins: 12,
72
- rightMarginPins: 12,
73
- },
74
- 251: {
75
- id: 251,
76
- name: '62mm continuous two-color (DK-22251)',
77
- type: 'continuous',
78
- widthMm: 62,
79
- colorCapable: true,
80
- printAreaDots: 696,
81
- leftMarginPins: 12,
82
- rightMarginPins: 12,
83
- },
84
- 260: {
85
- id: 260,
86
- name: '102mm continuous (DK-22243)',
87
- type: 'continuous',
88
- widthMm: 102,
89
- colorCapable: false,
90
- printAreaDots: 1164,
91
- leftMarginPins: 76,
92
- rightMarginPins: 56,
93
- },
94
- // Die-cut labels
95
- 269: {
96
- id: 269,
97
- name: '17×54mm die-cut (DK-11204)',
98
- type: 'die-cut',
99
- widthMm: 17,
100
- heightMm: 54,
101
- colorCapable: false,
102
- printAreaDots: 165,
103
- leftMarginPins: 0,
104
- rightMarginPins: 0,
105
- dieCutMaskedAreaDots: 566,
106
- },
107
- 270: {
108
- id: 270,
109
- name: '17×87mm die-cut (DK-11203)',
110
- type: 'die-cut',
111
- widthMm: 17,
112
- heightMm: 87,
113
- colorCapable: false,
114
- printAreaDots: 165,
115
- leftMarginPins: 0,
116
- rightMarginPins: 0,
117
- dieCutMaskedAreaDots: 956,
118
- },
119
- 370: {
120
- id: 370,
121
- name: '23×23mm die-cut',
122
- type: 'die-cut',
123
- widthMm: 23,
124
- heightMm: 23,
125
- colorCapable: false,
126
- printAreaDots: 236,
127
- leftMarginPins: 0,
128
- rightMarginPins: 0,
129
- dieCutMaskedAreaDots: 202,
130
- },
131
- 271: {
132
- id: 271,
133
- name: '29×90mm die-cut (DK-11201)',
134
- type: 'die-cut',
135
- widthMm: 29,
136
- heightMm: 90,
137
- colorCapable: false,
138
- printAreaDots: 306,
139
- leftMarginPins: 0,
140
- rightMarginPins: 0,
141
- dieCutMaskedAreaDots: 991,
142
- },
143
- 272: {
144
- id: 272,
145
- name: '38×90mm die-cut (DK-11218)',
146
- type: 'die-cut',
147
- widthMm: 38,
148
- heightMm: 90,
149
- colorCapable: false,
150
- printAreaDots: 413,
151
- leftMarginPins: 0,
152
- rightMarginPins: 0,
153
- dieCutMaskedAreaDots: 991,
154
- },
155
- 367: {
156
- id: 367,
157
- name: '39×48mm die-cut (DK-11219)',
158
- type: 'die-cut',
159
- widthMm: 39,
160
- heightMm: 48,
161
- colorCapable: false,
162
- printAreaDots: 425,
163
- leftMarginPins: 0,
164
- rightMarginPins: 0,
165
- dieCutMaskedAreaDots: 495,
166
- },
167
- 374: {
168
- id: 374,
169
- name: '52×29mm die-cut',
170
- type: 'die-cut',
171
- widthMm: 52,
172
- heightMm: 29,
173
- colorCapable: false,
174
- printAreaDots: 578,
175
- leftMarginPins: 0,
176
- rightMarginPins: 0,
177
- dieCutMaskedAreaDots: 271,
178
- },
179
- 274: {
180
- id: 274,
181
- name: '62×29mm die-cut (DK-11209)',
182
- type: 'die-cut',
183
- widthMm: 62,
184
- heightMm: 29,
185
- colorCapable: false,
186
- printAreaDots: 696,
187
- leftMarginPins: 0,
188
- rightMarginPins: 0,
189
- dieCutMaskedAreaDots: 271,
190
- },
191
- 275: {
192
- id: 275,
193
- name: '62×100mm die-cut (DK-11202)',
194
- type: 'die-cut',
195
- widthMm: 62,
196
- heightMm: 100,
197
- colorCapable: false,
198
- printAreaDots: 696,
199
- leftMarginPins: 0,
200
- rightMarginPins: 0,
201
- dieCutMaskedAreaDots: 1109,
202
- },
203
- 365: {
204
- id: 365,
205
- name: '102×51mm die-cut (DK-11240)',
206
- type: 'die-cut',
207
- widthMm: 102,
208
- heightMm: 51,
209
- colorCapable: false,
210
- printAreaDots: 1164,
211
- leftMarginPins: 0,
212
- rightMarginPins: 0,
213
- dieCutMaskedAreaDots: 526,
214
- },
215
- 366: {
216
- id: 366,
217
- name: '102×152mm die-cut (DK-11241)',
218
- type: 'die-cut',
219
- widthMm: 102,
220
- heightMm: 152,
221
- colorCapable: false,
222
- printAreaDots: 1164,
223
- leftMarginPins: 0,
224
- rightMarginPins: 0,
225
- dieCutMaskedAreaDots: 1660,
226
- },
227
- 362: {
228
- id: 362,
229
- name: '12mm Ø die-cut',
230
- type: 'die-cut',
231
- widthMm: 12,
232
- heightMm: 12,
233
- colorCapable: false,
234
- printAreaDots: 94,
235
- leftMarginPins: 0,
236
- rightMarginPins: 0,
237
- dieCutMaskedAreaDots: 94,
238
- },
239
- 363: {
240
- id: 363,
241
- name: '24mm Ø die-cut (DK-11221)',
242
- type: 'die-cut',
243
- widthMm: 24,
244
- heightMm: 24,
245
- colorCapable: false,
246
- printAreaDots: 236,
247
- leftMarginPins: 0,
248
- rightMarginPins: 0,
249
- dieCutMaskedAreaDots: 236,
250
- },
251
- 273: {
252
- id: 273,
253
- name: '58mm Ø die-cut (DK-11207)',
254
- type: 'die-cut',
255
- widthMm: 58,
256
- heightMm: 58,
257
- colorCapable: false,
258
- printAreaDots: 618,
259
- leftMarginPins: 0,
260
- rightMarginPins: 0,
261
- dieCutMaskedAreaDots: 618,
262
- },
263
- };
16
+ export function resolveTapeGeometry(media, engine) {
17
+ if (media.tapeSystem === 'dk') {
18
+ if (typeof media.printAreaDots !== 'number' ||
19
+ typeof media.leftMarginPins !== 'number' ||
20
+ typeof media.rightMarginPins !== 'number') {
21
+ throw new Error(`DK media ${media.id.toString()} missing flat geometry fields`);
22
+ }
23
+ return {
24
+ printAreaDots: media.printAreaDots,
25
+ leftMarginPins: media.leftMarginPins,
26
+ rightMarginPins: media.rightMarginPins,
27
+ };
28
+ }
29
+ const family = engine.headDots === 128 ? 'narrow' : 'wide';
30
+ const geometry = media.geometry?.[family];
31
+ if (!geometry) {
32
+ throw new Error(`${media.name} not supported on a ${engine.headDots.toString()}-dot head (no \`geometry.${family}\` entry)`);
33
+ }
34
+ return geometry;
35
+ }
264
36
  /**
265
37
  * Default media when `createPreview()` is called without media and
266
38
  * without a detected roll. 62mm continuous (DK-22205) is the common
@@ -268,6 +40,20 @@ export const MEDIA = {
268
40
  */
269
41
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- DK-22205 is a hard-coded registry key
270
42
  export const DEFAULT_MEDIA = MEDIA[259];
43
+ /**
44
+ * Default media keyed by engine protocol. QL falls back to 62 mm DK
45
+ * continuous (DK-22205, the common starter roll); PT falls back to
46
+ * 12 mm TZe (id 404, the most common PT starter tape).
47
+ */
48
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- 12 mm TZe is a hard-coded registry key
49
+ export const DEFAULT_PT_MEDIA = MEDIA[404];
50
+ /**
51
+ * Pick a default media entry for an engine. Used by `createPreview()`
52
+ * when neither user-supplied media nor a detected roll is available.
53
+ */
54
+ export function defaultMediaForEngine(engine) {
55
+ return engine.protocol === 'pt-raster' ? DEFAULT_PT_MEDIA : DEFAULT_MEDIA;
56
+ }
271
57
  export function findMedia(id) {
272
58
  return MEDIA[id];
273
59
  }
@@ -283,15 +69,40 @@ export function findMediaByWidth(widthMm, type) {
283
69
  * printer is configured for two-colour media. When
284
70
  * both DK-22205 (259) and DK-22251 (251) match the
285
71
  * dimensions, the flag picks the right one.
72
+ * @param engine optional engine descriptor used to gate the
73
+ * lookup by tape-system and head-family. When
74
+ * omitted, the search is restricted to DK media —
75
+ * legacy QL behaviour. PT-* callers pass the
76
+ * primary engine so the search returns TZe / HSe
77
+ * entries with the right `narrow` / `wide`
78
+ * geometry, and so a 128-dot head never resolves
79
+ * a 36 mm TZe / 31 mm HSe-3:1 width and
80
+ * PT-P910BT (TZe-only) never resolves an HSe
81
+ * entry.
286
82
  */
287
- export function findMediaByDimensions(widthMm, heightMm, twoColorMode = false) {
83
+ export function findMediaByDimensions(widthMm, heightMm, twoColorMode = false, engine) {
84
+ // When no engine is supplied we preserve the original DK-only
85
+ // behaviour so legacy callers don't suddenly resolve TZe or HSe
86
+ // entries on width-only ambiguity (e.g. 12 mm DK-22214 vs 12 mm TZe).
87
+ const tapeSystems = engine?.mediaCompatibility ?? (engine ? undefined : ['dk']);
88
+ const allowed = (m) => {
89
+ if (tapeSystems && !tapeSystems.includes(m.tapeSystem))
90
+ return false;
91
+ if (engine && m.tapeSystem !== 'dk') {
92
+ // TZe / HSe — require the head-family geometry to exist.
93
+ const family = engine.headDots === 128 ? 'narrow' : 'wide';
94
+ if (!m.geometry?.[family])
95
+ return false;
96
+ }
97
+ return true;
98
+ };
288
99
  if (heightMm === 0) {
289
- const continuousMatches = Object.values(MEDIA).filter(m => m.type === 'continuous' && m.widthMm === widthMm);
100
+ const continuousMatches = Object.values(MEDIA).filter(m => m.type === 'continuous' && m.widthMm === widthMm && allowed(m));
290
101
  if (continuousMatches.length === 0)
291
102
  return undefined;
292
- const preferred = continuousMatches.find(m => m.colorCapable === twoColorMode);
103
+ const preferred = continuousMatches.find(m => (m.palette !== undefined) === twoColorMode);
293
104
  return preferred ?? continuousMatches[0];
294
105
  }
295
- return Object.values(MEDIA).find(m => m.type === 'die-cut' && m.widthMm === widthMm && m.heightMm === heightMm);
106
+ return Object.values(MEDIA).find(m => m.type === 'die-cut' && m.widthMm === widthMm && m.heightMm === heightMm && allowed(m));
296
107
  }
297
108
  //# sourceMappingURL=media.js.map
package/dist/media.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","sourceRoot":"","sources":["../src/media.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"media.js","sourceRoot":"","sources":["../src/media.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { RotateDirection } from '@thermal-label/contracts';
2
+ /**
3
+ * Direction the Brother QL print head rotates landscape input.
4
+ *
5
+ * `90` = clockwise. Verified once on hardware with a die-cut "F"
6
+ * landscape print (see plan §6 step 1). Identical across every QL
7
+ * model — this is a print-head/leading-edge mechanical fact, not a
8
+ * per-media setting.
9
+ */
10
+ export declare const ROTATE_DIRECTION: RotateDirection;
11
+ //# sourceMappingURL=orientation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orientation.d.ts","sourceRoot":"","sources":["../src/orientation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,EAAE,eAAoB,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Direction the Brother QL print head rotates landscape input.
3
+ *
4
+ * `90` = clockwise. Verified once on hardware with a die-cut "F"
5
+ * landscape print (see plan §6 step 1). Identical across every QL
6
+ * model — this is a print-head/leading-edge mechanical fact, not a
7
+ * per-media setting.
8
+ */
9
+ export const ROTATE_DIRECTION = 90;
10
+ //# sourceMappingURL=orientation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orientation.js","sourceRoot":"","sources":["../src/orientation.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAoB,EAAE,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * TIFF-style PackBits row encoder used by Brother QL when compression
3
+ * mode (`M 02`, emitted by `buildCompression(true)`) is enabled for a job.
4
+ *
5
+ * Header byte `n` (interpreted as a signed int8):
6
+ * n in [0, 127]: literal run — the next `n + 1` bytes follow verbatim.
7
+ * n in [-127, -1]: repeat run — the next byte is repeated `1 - n` times.
8
+ * n = -128: no-op. Unused by this encoder.
9
+ *
10
+ * The encoder switches to repeat mode for runs of two or more identical
11
+ * bytes (a 2-byte repeat costs 2 wire bytes; the equivalent 2-byte literal
12
+ * would cost 3). Both run kinds are capped at 128 bytes to fit the header.
13
+ *
14
+ * For a typical Brother QL raster row (90 bytes, mostly zeros in margins
15
+ * and long runs of `0x00` / `0xff` in print area), this compresses to 5–15
16
+ * bytes — a 6–18× reduction. Worst-case for highly random input is one
17
+ * extra byte per 128 (the literal-mode header), i.e. < 1 % expansion.
18
+ */
19
+ export declare function packBits(input: Uint8Array): Uint8Array;
20
+ //# sourceMappingURL=pack-bits.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pack-bits.d.ts","sourceRoot":"","sources":["../src/pack-bits.ts"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,CAsCtD"}
@@ -0,0 +1,61 @@
1
+ /* eslint-disable @typescript-eslint/no-non-null-assertion --
2
+ * `noUncheckedIndexedAccess` types Uint8Array reads as `number | undefined`
3
+ * but every index in this file is bounded by `i < input.length` or
4
+ * `runEnd < input.length` checks. The `!` assertions collapse the
5
+ * unreachable `undefined` branches so branch coverage doesn't count them.
6
+ */
7
+ /**
8
+ * TIFF-style PackBits row encoder used by Brother QL when compression
9
+ * mode (`M 02`, emitted by `buildCompression(true)`) is enabled for a job.
10
+ *
11
+ * Header byte `n` (interpreted as a signed int8):
12
+ * n in [0, 127]: literal run — the next `n + 1` bytes follow verbatim.
13
+ * n in [-127, -1]: repeat run — the next byte is repeated `1 - n` times.
14
+ * n = -128: no-op. Unused by this encoder.
15
+ *
16
+ * The encoder switches to repeat mode for runs of two or more identical
17
+ * bytes (a 2-byte repeat costs 2 wire bytes; the equivalent 2-byte literal
18
+ * would cost 3). Both run kinds are capped at 128 bytes to fit the header.
19
+ *
20
+ * For a typical Brother QL raster row (90 bytes, mostly zeros in margins
21
+ * and long runs of `0x00` / `0xff` in print area), this compresses to 5–15
22
+ * bytes — a 6–18× reduction. Worst-case for highly random input is one
23
+ * extra byte per 128 (the literal-mode header), i.e. < 1 % expansion.
24
+ */
25
+ export function packBits(input) {
26
+ if (input.length === 0)
27
+ return new Uint8Array(0);
28
+ const out = [];
29
+ let i = 0;
30
+ while (i < input.length) {
31
+ // How many identical bytes start at position i (cap at 128).
32
+ let runEnd = i + 1;
33
+ while (runEnd < input.length && runEnd - i < 128 && input[runEnd] === input[i]) {
34
+ runEnd++;
35
+ }
36
+ const runLen = runEnd - i;
37
+ if (runLen >= 2) {
38
+ // Repeat run: header is signed -(runLen - 1).
39
+ out.push((1 - runLen) & 0xff);
40
+ out.push(input[i]);
41
+ i = runEnd;
42
+ continue;
43
+ }
44
+ // Otherwise emit a literal run. Stop at 128 bytes, or right before a
45
+ // 2+ repeat run starts (cheaper to encode that separately).
46
+ let litEnd = i + 1;
47
+ while (litEnd < input.length && litEnd - i < 128) {
48
+ if (litEnd + 1 < input.length && input[litEnd] === input[litEnd + 1]) {
49
+ break;
50
+ }
51
+ litEnd++;
52
+ }
53
+ const litLen = litEnd - i;
54
+ out.push(litLen - 1);
55
+ for (let x = i; x < litEnd; x++)
56
+ out.push(input[x]);
57
+ i = litEnd;
58
+ }
59
+ return new Uint8Array(out);
60
+ }
61
+ //# sourceMappingURL=pack-bits.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pack-bits.js","sourceRoot":"","sources":["../src/pack-bits.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAiB;IACxC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IAEjD,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,IAAI,CAAC,GAAG,CAAC,CAAC;IAEV,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QACxB,6DAA6D;QAC7D,IAAI,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;QACnB,OAAO,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,MAAM,GAAG,CAAC,GAAG,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/E,MAAM,EAAE,CAAC;QACX,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC;QAE1B,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;YAChB,8CAA8C;YAC9C,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;YAC9B,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;YACpB,CAAC,GAAG,MAAM,CAAC;YACX,SAAS;QACX,CAAC;QAED,qEAAqE;QACrE,4DAA4D;QAC5D,IAAI,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;QACnB,OAAO,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,MAAM,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC;YACjD,IAAI,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;gBACrE,MAAM;YACR,CAAC;YACD,MAAM,EAAE,CAAC;QACX,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC;QAC1B,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE;YAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;QACrD,CAAC,GAAG,MAAM,CAAC;IACb,CAAC;IAED,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC"}
package/dist/preview.d.ts CHANGED
@@ -1,13 +1,13 @@
1
- import { type RawImageData } from '@mbtech-nl/bitmap';
1
+ import type { RawImageData } from '@mbtech-nl/bitmap';
2
2
  import type { PreviewResult } from '@thermal-label/contracts';
3
- import { type BrotherQLMedia } from './types.js';
3
+ import type { BrotherQLMedia } from './types.js';
4
4
  /**
5
5
  * Offline preview without a live printer connection.
6
6
  *
7
- * Two-colour aware: when `media.colorCapable` is true (DK-22251), the
8
- * image is split into a black and a red plane via `splitTwoColor()` —
9
- * exactly what `print()` does for that media. Single-colour media
10
- * returns one black plane.
7
+ * Multi-ink aware: when `media.palette` is defined (DK-22251 today),
8
+ * the image is split per-plane via `renderMultiPlaneImage()` — the
9
+ * same code path `print()` takes for that media. Single-ink media
10
+ * returns one black plane via dithered `renderImage`.
11
11
  */
12
12
  export declare function createPreviewOffline(image: RawImageData, media: BrotherQLMedia): PreviewResult;
13
13
  //# sourceMappingURL=preview.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../src/preview.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,GAAG,aAAa,CAmB9F"}
1
+ {"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../src/preview.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,GAAG,aAAa,CAqB9F"}
package/dist/preview.js CHANGED
@@ -1,22 +1,21 @@
1
- /* eslint-disable import-x/consistent-type-specifier-style */
2
- import { renderImage } from '@mbtech-nl/bitmap';
3
- import { splitTwoColor } from './colour.js';
4
- import {} from './types.js';
1
+ import { renderImage, renderMultiPlaneImage } from '@mbtech-nl/bitmap';
5
2
  /**
6
3
  * Offline preview without a live printer connection.
7
4
  *
8
- * Two-colour aware: when `media.colorCapable` is true (DK-22251), the
9
- * image is split into a black and a red plane via `splitTwoColor()` —
10
- * exactly what `print()` does for that media. Single-colour media
11
- * returns one black plane.
5
+ * Multi-ink aware: when `media.palette` is defined (DK-22251 today),
6
+ * the image is split per-plane via `renderMultiPlaneImage()` — the
7
+ * same code path `print()` takes for that media. Single-ink media
8
+ * returns one black plane via dithered `renderImage`.
12
9
  */
13
10
  export function createPreviewOffline(image, media) {
14
- if (media.colorCapable) {
15
- const { black, red } = splitTwoColor(image);
11
+ if (media.palette) {
12
+ const planes = renderMultiPlaneImage(image, {
13
+ palette: media.palette,
14
+ });
16
15
  return {
17
16
  planes: [
18
- { name: 'black', bitmap: black, displayColor: '#000000' },
19
- { name: 'red', bitmap: red, displayColor: '#ff0000' },
17
+ { name: 'black', bitmap: planes.black, displayColor: '#000000' },
18
+ { name: 'red', bitmap: planes.red, displayColor: '#ff0000' },
20
19
  ],
21
20
  media,
22
21
  assumed: false,