@pdfme/common 2.1.0 → 2.2.1

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 (54) hide show
  1. package/dist/cjs/__tests__/barcode.test.js +107 -0
  2. package/dist/cjs/__tests__/barcode.test.js.map +1 -0
  3. package/dist/cjs/__tests__/font.test.js +77 -32
  4. package/dist/cjs/__tests__/font.test.js.map +1 -1
  5. package/dist/cjs/__tests__/helper.test.js +12 -0
  6. package/dist/cjs/__tests__/helper.test.js.map +1 -1
  7. package/dist/cjs/src/barcode.js +53 -0
  8. package/dist/cjs/src/barcode.js.map +1 -0
  9. package/dist/cjs/src/constants.js +8 -2
  10. package/dist/cjs/src/constants.js.map +1 -1
  11. package/dist/cjs/src/font.js +48 -19
  12. package/dist/cjs/src/font.js.map +1 -1
  13. package/dist/cjs/src/helper.js +6 -1
  14. package/dist/cjs/src/helper.js.map +1 -1
  15. package/dist/cjs/src/index.js +12 -2
  16. package/dist/cjs/src/index.js.map +1 -1
  17. package/dist/cjs/src/schema.js +16 -3
  18. package/dist/cjs/src/schema.js.map +1 -1
  19. package/dist/cjs/src/type.js.map +1 -1
  20. package/dist/esm/__tests__/barcode.test.js +102 -0
  21. package/dist/esm/__tests__/barcode.test.js.map +1 -0
  22. package/dist/esm/__tests__/font.test.js +78 -33
  23. package/dist/esm/__tests__/font.test.js.map +1 -1
  24. package/dist/esm/__tests__/helper.test.js +13 -1
  25. package/dist/esm/__tests__/helper.test.js.map +1 -1
  26. package/dist/esm/src/barcode.js +44 -0
  27. package/dist/esm/src/barcode.js.map +1 -0
  28. package/dist/esm/src/constants.js +7 -1
  29. package/dist/esm/src/constants.js.map +1 -1
  30. package/dist/esm/src/font.js +47 -19
  31. package/dist/esm/src/font.js.map +1 -1
  32. package/dist/esm/src/helper.js +5 -1
  33. package/dist/esm/src/helper.js.map +1 -1
  34. package/dist/esm/src/index.js +5 -4
  35. package/dist/esm/src/index.js.map +1 -1
  36. package/dist/esm/src/schema.js +15 -2
  37. package/dist/esm/src/schema.js.map +1 -1
  38. package/dist/esm/src/type.js.map +1 -1
  39. package/dist/types/__tests__/barcode.test.d.ts +1 -0
  40. package/dist/types/src/barcode.d.ts +19 -0
  41. package/dist/types/src/constants.d.ts +7 -1
  42. package/dist/types/src/font.d.ts +8 -10
  43. package/dist/types/src/helper.d.ts +1 -0
  44. package/dist/types/src/index.d.ts +6 -5
  45. package/dist/types/src/schema.d.ts +310 -29
  46. package/dist/types/src/type.d.ts +35 -24
  47. package/package.json +9 -4
  48. package/src/barcode.ts +51 -0
  49. package/src/constants.ts +7 -1
  50. package/src/font.ts +56 -30
  51. package/src/helper.ts +6 -1
  52. package/src/index.ts +21 -3
  53. package/src/schema.ts +17 -2
  54. package/src/type.ts +9 -0
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  };
10
10
  import { readFileSync } from 'fs';
11
11
  import * as path from 'path';
12
- import { calculateDynamicFontSize, checkFont, getDefaultFont, getFontKitFont, getSplittedLines, } from '../src/font';
12
+ import { calculateDynamicFontSize, checkFont, getBrowserVerticalFontAdjustments, getDefaultFont, getFontDescentInPt, getFontKitFont, getSplittedLines, } from '../src/font';
13
13
  import { BLANK_PDF } from '../src';
14
14
  const sansData = readFileSync(path.join(__dirname, `/assets/fonts/SauceHanSansJP.ttf`));
15
15
  const serifData = readFileSync(path.join(__dirname, `/assets/fonts/SauceHanSerifJP.ttf`));
@@ -271,54 +271,55 @@ describe('calculateDynamicFontSize with Default font', () => {
271
271
  const font = getDefaultFont();
272
272
  it('should return default font size when dynamicFontSizeSetting is not provided', () => __awaiter(void 0, void 0, void 0, function* () {
273
273
  const textSchema = getTextSchema();
274
- const result = yield calculateDynamicFontSize({ textSchema, font, input: 'test' });
274
+ const result = yield calculateDynamicFontSize({ textSchema, font, value: 'test' });
275
275
  expect(result).toBe(14);
276
276
  }));
277
277
  it('should return default font size when dynamicFontSizeSetting max is less than min', () => __awaiter(void 0, void 0, void 0, function* () {
278
278
  const textSchema = getTextSchema();
279
279
  textSchema.dynamicFontSize = { min: 11, max: 10 };
280
- const result = yield calculateDynamicFontSize({ textSchema, font, input: 'test' });
280
+ const result = yield calculateDynamicFontSize({ textSchema, font, value: 'test' });
281
281
  expect(result).toBe(14);
282
282
  }));
283
283
  it('should calculate a dynamic font size of vertical fit between min and max', () => __awaiter(void 0, void 0, void 0, function* () {
284
284
  const textSchema = getTextSchema();
285
285
  textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'vertical' };
286
- const input = 'test with a length string\n and a new line';
287
- const result = yield calculateDynamicFontSize({ textSchema, font, input });
286
+ const value = 'test with a length string\n and a new line';
287
+ const result = yield calculateDynamicFontSize({ textSchema, font, value });
288
288
  expect(result).toBe(19.25);
289
289
  }));
290
290
  it('should calculate a dynamic font size of horizontal fit between min and max', () => __awaiter(void 0, void 0, void 0, function* () {
291
291
  const textSchema = getTextSchema();
292
292
  textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'horizontal' };
293
- const input = 'test with a length string\n and a new line';
294
- const result = yield calculateDynamicFontSize({ textSchema, font, input });
293
+ const value = 'test with a length string\n and a new line';
294
+ const result = yield calculateDynamicFontSize({ textSchema, font, value });
295
295
  expect(result).toBe(11.25);
296
296
  }));
297
297
  it('should calculate a dynamic font size between min and max regardless of current font size', () => __awaiter(void 0, void 0, void 0, function* () {
298
298
  const textSchema = getTextSchema();
299
299
  textSchema.fontSize = 2;
300
300
  textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'vertical' };
301
- const input = 'test with a length string\n and a new line';
302
- let result = yield calculateDynamicFontSize({ textSchema, font, input });
301
+ const value = 'test with a length string\n and a new line';
302
+ let result = yield calculateDynamicFontSize({ textSchema, font, value });
303
303
  expect(result).toBe(19.25);
304
304
  textSchema.fontSize = 40;
305
- result = yield calculateDynamicFontSize({ textSchema, font, input });
305
+ result = yield calculateDynamicFontSize({ textSchema, font, value });
306
306
  expect(result).toBe(19.25);
307
307
  }));
308
308
  it('should return min font size when content is too big to fit given constraints', () => __awaiter(void 0, void 0, void 0, function* () {
309
309
  const textSchema = getTextSchema();
310
310
  textSchema.width = 10;
311
311
  textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'vertical' };
312
- const input = 'test with a length string\n and a new line';
313
- const result = yield calculateDynamicFontSize({ textSchema, font, input });
312
+ const value = 'test with a length string\n and a new line';
313
+ const result = yield calculateDynamicFontSize({ textSchema, font, value });
314
314
  expect(result).toBe(10);
315
315
  }));
316
316
  it('should return max font size when content is too small to fit given constraints', () => __awaiter(void 0, void 0, void 0, function* () {
317
317
  const textSchema = getTextSchema();
318
318
  textSchema.width = 1000;
319
+ textSchema.height = 200;
319
320
  textSchema.dynamicFontSize = { min: 10, max: 30 };
320
- const input = 'test with a length string\n and a new line';
321
- const result = yield calculateDynamicFontSize({ textSchema, font, input });
321
+ const value = 'test with a length string\n and a new line';
322
+ const result = yield calculateDynamicFontSize({ textSchema, font, value });
322
323
  expect(result).toBe(30);
323
324
  }));
324
325
  it('should not reduce font size below 0', () => __awaiter(void 0, void 0, void 0, function* () {
@@ -326,31 +327,31 @@ describe('calculateDynamicFontSize with Default font', () => {
326
327
  textSchema.dynamicFontSize = { min: -5, max: 10 };
327
328
  textSchema.width = 4;
328
329
  textSchema.height = 1;
329
- const input = 'a very \nlong \nmulti-line \nstring\nto';
330
- const result = yield calculateDynamicFontSize({ textSchema, font, input });
330
+ const value = 'a very \nlong \nmulti-line \nstring\nto';
331
+ const result = yield calculateDynamicFontSize({ textSchema, font, value });
331
332
  expect(result).toBeGreaterThan(0);
332
333
  }));
333
334
  it('should calculate a dynamic font size when a starting font size is passed that is lower than the eventual', () => __awaiter(void 0, void 0, void 0, function* () {
334
335
  const textSchema = getTextSchema();
335
336
  textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'vertical' };
336
- const input = 'test with a length string\n and a new line';
337
+ const value = 'test with a length string\n and a new line';
337
338
  const startingFontSize = 18;
338
- const result = yield calculateDynamicFontSize({ textSchema, font, input, startingFontSize });
339
+ const result = yield calculateDynamicFontSize({ textSchema, font, value, startingFontSize });
339
340
  expect(result).toBe(19.25);
340
341
  }));
341
342
  it('should calculate a dynamic font size when a starting font size is passed that is higher than the eventual', () => __awaiter(void 0, void 0, void 0, function* () {
342
343
  const textSchema = getTextSchema();
343
344
  textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'horizontal' };
344
- const input = 'test with a length string\n and a new line';
345
+ const value = 'test with a length string\n and a new line';
345
346
  const startingFontSize = 36;
346
- const result = yield calculateDynamicFontSize({ textSchema, font, input, startingFontSize });
347
+ const result = yield calculateDynamicFontSize({ textSchema, font, value, startingFontSize });
347
348
  expect(result).toBe(11.25);
348
349
  }));
349
350
  it('should calculate a dynamic font size using vertical fit as a default if no fit provided', () => __awaiter(void 0, void 0, void 0, function* () {
350
351
  const textSchema = getTextSchema();
351
352
  textSchema.dynamicFontSize = { min: 10, max: 30 };
352
- const input = 'test with a length string\n and a new line';
353
- const result = yield calculateDynamicFontSize({ textSchema, font, input });
353
+ const value = 'test with a length string\n and a new line';
354
+ const result = yield calculateDynamicFontSize({ textSchema, font, value });
354
355
  expect(result).toBe(19.25);
355
356
  }));
356
357
  });
@@ -359,37 +360,81 @@ describe('calculateDynamicFontSize with Custom font', () => {
359
360
  it('should return smaller font size when dynamicFontSizeSetting is provided with horizontal fit', () => __awaiter(void 0, void 0, void 0, function* () {
360
361
  const textSchema = getTextSchema();
361
362
  textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'horizontal' };
362
- const input = 'あいうあいうあい';
363
- const result = yield calculateDynamicFontSize({ textSchema, font, input });
363
+ const value = 'あいうあいうあい';
364
+ const result = yield calculateDynamicFontSize({ textSchema, font, value });
364
365
  expect(result).toBe(16.75);
365
366
  }));
366
367
  it('should return smaller font size when dynamicFontSizeSetting is provided with vertical fit', () => __awaiter(void 0, void 0, void 0, function* () {
367
368
  const textSchema = getTextSchema();
368
369
  textSchema.dynamicFontSize = { min: 10, max: 30, fit: 'vertical' };
369
- const input = 'あいうあいうあい';
370
- const result = yield calculateDynamicFontSize({ textSchema, font, input });
371
- expect(result).toBe(24.25);
370
+ const value = 'あいうあいうあい';
371
+ const result = yield calculateDynamicFontSize({ textSchema, font, value });
372
+ expect(result).toBe(26);
372
373
  }));
373
374
  it('should return min font size when content is too big to fit given constraints', () => __awaiter(void 0, void 0, void 0, function* () {
374
375
  const textSchema = getTextSchema();
375
376
  textSchema.dynamicFontSize = { min: 20, max: 30 };
376
- const input = 'あいうあいうあいうあいうあいうあいうあいうあいうあいう';
377
- const result = yield calculateDynamicFontSize({ textSchema, font, input });
377
+ const value = 'あいうあいうあいうあいうあいうあいうあいうあいうあいう';
378
+ const result = yield calculateDynamicFontSize({ textSchema, font, value });
378
379
  expect(result).toBe(20);
379
380
  }));
380
381
  it('should return max font size when content is too small to fit given constraints', () => __awaiter(void 0, void 0, void 0, function* () {
381
382
  const textSchema = getTextSchema();
382
383
  textSchema.dynamicFontSize = { min: 10, max: 30 };
383
- const input = 'あ';
384
- const result = yield calculateDynamicFontSize({ textSchema, font, input });
384
+ const value = 'あ';
385
+ const result = yield calculateDynamicFontSize({ textSchema, font, value });
385
386
  expect(result).toBe(30);
386
387
  }));
387
388
  it('should return min font size when content is multi-line with too many lines for the container', () => __awaiter(void 0, void 0, void 0, function* () {
388
389
  const textSchema = getTextSchema();
389
390
  textSchema.dynamicFontSize = { min: 5, max: 20 };
390
- const input = 'あ\nいう\nあ\nいう\nあ\nいう\nあ\nいう\nあ\nいう\nあ\nいう';
391
- const result = yield calculateDynamicFontSize({ textSchema, font, input });
391
+ const value = 'あ\nいう\nあ\nいう\nあ\nいう\nあ\nいう\nあ\nいう\nあ\nいう';
392
+ const result = yield calculateDynamicFontSize({ textSchema, font, value });
392
393
  expect(result).toBe(5);
393
394
  }));
394
395
  });
396
+ describe('getFontDescentInPt test', () => {
397
+ test('it gets a descent size relative to the font size', () => {
398
+ expect(getFontDescentInPt({ descent: -400, unitsPerEm: 1000 }, 12)).toBe(-4.800000000000001);
399
+ expect(getFontDescentInPt({ descent: 54, unitsPerEm: 1000 }, 20)).toBe(1.08);
400
+ expect(getFontDescentInPt({ descent: -512, unitsPerEm: 2048 }, 54)).toBe(-13.5);
401
+ });
402
+ });
403
+ describe('getBrowserVerticalFontAdjustments test', () => {
404
+ // Font with a base line-height of 1.349
405
+ const font = { ascent: 1037, descent: -312, unitsPerEm: 1000 };
406
+ test('it gets a top adjustment when vertically aligning top', () => {
407
+ expect(getBrowserVerticalFontAdjustments(font, 12, 1.0, 'top')).toEqual({
408
+ topAdj: 2.791301999999999,
409
+ bottomAdj: 0,
410
+ });
411
+ expect(getBrowserVerticalFontAdjustments(font, 36, 2.0, 'top')).toEqual({
412
+ topAdj: 8.373906,
413
+ bottomAdj: 0,
414
+ });
415
+ });
416
+ test('it gets a bottom adjustment when vertically aligning middle or bottom', () => {
417
+ expect(getBrowserVerticalFontAdjustments(font, 12, 1.0, 'bottom')).toEqual({
418
+ topAdj: 0,
419
+ bottomAdj: 2.791302,
420
+ });
421
+ expect(getBrowserVerticalFontAdjustments(font, 12, 1.15, 'middle')).toEqual({
422
+ topAdj: 0,
423
+ bottomAdj: 1.5916020000000004,
424
+ });
425
+ });
426
+ test('it does not get a bottom adjustment if the line height exceeds that of the font', () => {
427
+ expect(getBrowserVerticalFontAdjustments(font, 12, 1.35, 'bottom')).toEqual({
428
+ topAdj: 0,
429
+ bottomAdj: 0,
430
+ });
431
+ });
432
+ test('it does not get a bottom adjustment if the font base line-height is 1.0 or less', () => {
433
+ const thisFont = { ascent: 900, descent: -50, unitsPerEm: 1000 };
434
+ expect(getBrowserVerticalFontAdjustments(thisFont, 20, 1.0, 'bottom')).toEqual({
435
+ topAdj: 0,
436
+ bottomAdj: 0,
437
+ });
438
+ });
439
+ });
395
440
  //# sourceMappingURL=font.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"font.test.js","sourceRoot":"","sources":["../../../__tests__/font.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"font.test.js","sourceRoot":"","sources":["../../../__tests__/font.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { validateBarcodeInput, mm2pt, pt2mm } from '../src/helper';
1
+ import { validateBarcodeInput, mm2pt, pt2mm, pt2px } from '../src/helper';
2
+ import { PT_TO_PX_RATIO } from "../src";
2
3
  describe('validateBarcodeInput test', () => {
3
4
  test('qrcode', () => {
4
5
  // 500文字以下
@@ -224,11 +225,13 @@ describe('validateBarcodeInput test', () => {
224
225
  let valid = "(01)12244668801011(17)250712(10)22322SSD3";
225
226
  let valid_12 = "(01)1224466880108(17)250712(10)22322SSD3";
226
227
  let invalid_bad_checkdigit = "(01)12244668801014(17)250712(10)22322SSD3";
228
+ let invalid_input_length = "(01)12244668801011(17)250712(10)22322SSD3(10)22322SSD3";
227
229
  const blank = '';
228
230
  expect(validateBarcodeInput(type, valid)).toEqual(true);
229
231
  expect(validateBarcodeInput(type, valid_12)).toEqual(true);
230
232
  expect(validateBarcodeInput(type, invalid_bad_checkdigit)).toEqual(false);
231
233
  expect(validateBarcodeInput(type, blank)).toEqual(false);
234
+ expect(validateBarcodeInput(type, invalid_input_length)).toEqual(false);
232
235
  });
233
236
  });
234
237
  describe('mm2pt test', () => {
@@ -246,4 +249,13 @@ describe('pt2mm test', () => {
246
249
  expect(pt2mm(5322.98)).toEqual(1877.947344);
247
250
  });
248
251
  });
252
+ describe('pt2px test', () => {
253
+ it('converts points to pixels', () => {
254
+ expect(pt2px(1)).toEqual(PT_TO_PX_RATIO);
255
+ expect(pt2px(1)).toEqual(1.333);
256
+ expect(pt2px(2.8346)).toEqual(3.7785218);
257
+ expect(pt2px(10)).toEqual(13.33);
258
+ expect(pt2px(5322.98)).toEqual(7095.532339999999);
259
+ });
260
+ });
249
261
  //# sourceMappingURL=helper.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helper.test.js","sourceRoot":"","sources":["../../../__tests__/helper.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helper.test.js","sourceRoot":"","sources":["../../../__tests__/helper.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { b64toUint8Array, } from './helper';
11
+ import bwipjs from 'bwip-js';
12
+ /**
13
+ * The bwip.js lib has a different name for nw7 type barcodes
14
+ */
15
+ export const barCodeType2Bcid = (type) => type === 'nw7' ? 'rationalizedCodabar' : type;
16
+ /**
17
+ * Strip hash from the beginning of HTML hex color codes for the bwip.js lib
18
+ */
19
+ export const mapHexColorForBwipJsLib = (color, fallback) => color ? color.replace('#', '') : fallback ? fallback.replace('#', '') : '000000';
20
+ export const createBarCode = (arg) => __awaiter(void 0, void 0, void 0, function* () {
21
+ const { type, input, width, height, backgroundcolor, barcolor, textcolor } = arg;
22
+ const bcid = barCodeType2Bcid(type);
23
+ const includetext = true;
24
+ const scale = 5;
25
+ const bwipjsArg = { bcid, text: input, width, height, scale, includetext };
26
+ if (backgroundcolor)
27
+ bwipjsArg.backgroundcolor = mapHexColorForBwipJsLib(backgroundcolor);
28
+ if (barcolor)
29
+ bwipjsArg.barcolor = mapHexColorForBwipJsLib(barcolor);
30
+ if (textcolor)
31
+ bwipjsArg.textcolor = mapHexColorForBwipJsLib(textcolor);
32
+ let res;
33
+ if (typeof window !== 'undefined') {
34
+ const canvas = document.createElement('canvas');
35
+ bwipjs.toCanvas(canvas, bwipjsArg);
36
+ const dataUrl = canvas.toDataURL('image/png');
37
+ res = b64toUint8Array(dataUrl).buffer;
38
+ }
39
+ else {
40
+ res = yield bwipjs.toBuffer(bwipjsArg);
41
+ }
42
+ return res;
43
+ });
44
+ //# sourceMappingURL=barcode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"barcode.js","sourceRoot":"","sources":["../../../src/barcode.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,eAAe,GAAG,MAAM,UAAU,CAAC;AAE5C,OAAO,MAA2B,MAAM,SAAS,CAAC;AAGlD;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAiB,EAAE,EAAE,CACpD,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC;AAEhD;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,KAAyB,EAAE,QAAiB,EAAE,EAAE,CACtF,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AAEnF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAO,GAQnC,EAAmB,EAAE;IACpB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC;IACjF,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,WAAW,GAAG,IAAI,CAAC;IACzB,MAAM,KAAK,GAAG,CAAC,CAAC;IAChB,MAAM,SAAS,GAAoB,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IAE5F,IAAI,eAAe;QAAE,SAAS,CAAC,eAAe,GAAG,uBAAuB,CAAC,eAAe,CAAC,CAAC;IAC1F,IAAI,QAAQ;QAAE,SAAS,CAAC,QAAQ,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IACrE,IAAI,SAAS;QAAE,SAAS,CAAC,SAAS,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAExE,IAAI,GAAW,CAAC;IAEhB,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAC9C,GAAG,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC,MAAgB,CAAC;KACjD;SAAM;QACL,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;KACxC;IAED,OAAO,GAAG,CAAC;AACb,CAAC,CAAA,CAAC"}
@@ -1,9 +1,15 @@
1
1
  export const DEFAULT_FONT_NAME = 'Roboto';
2
2
  export const DEFAULT_FONT_SIZE = 13;
3
3
  export const DEFAULT_ALIGNMENT = 'left';
4
+ export const VERTICAL_ALIGN_TOP = 'top';
5
+ export const VERTICAL_ALIGN_MIDDLE = 'middle';
6
+ export const VERTICAL_ALIGN_BOTTOM = 'bottom';
7
+ export const DEFAULT_VERTICAL_ALIGNMENT = VERTICAL_ALIGN_TOP;
4
8
  export const DEFAULT_LINE_HEIGHT = 1;
5
9
  export const DEFAULT_CHARACTER_SPACING = 0;
6
- export const DEFAULT_FONT_COLOR = '#000';
10
+ export const DEFAULT_FONT_COLOR = '#000000';
11
+ export const DEFAULT_BARCODE_BG_COLOR = '#ffffff';
12
+ export const DEFAULT_BARCODE_COLOR = '#000000';
7
13
  export const DYNAMIC_FIT_VERTICAL = 'vertical';
8
14
  export const DYNAMIC_FIT_HORIZONTAL = 'horizontal';
9
15
  export const DEFAULT_DYNAMIC_FIT = DYNAMIC_FIT_VERTICAL;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AAC1C,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AACpC,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC;AACxC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AACrC,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AAC3C,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AACzC,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC;AAC/C,MAAM,CAAC,MAAM,sBAAsB,GAAG,YAAY,CAAC;AACnD,MAAM,CAAC,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;AACxD,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AACzC,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,CAAC;AACpC,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC;AACrC,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,CAAC,2DAA2D;AAEjG,MAAM,CAAC,MAAM,SAAS,GACpB,8kCAA8kC,CAAC;AAEjlC,MAAM,CAAC,MAAM,kBAAkB,GAC7B,mwxKAAmwxK,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AAC1C,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AACpC,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC;AACxC,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAC;AACxC,MAAM,CAAC,MAAM,qBAAqB,GAAG,QAAQ,CAAC;AAC9C,MAAM,CAAC,MAAM,qBAAqB,GAAG,QAAQ,CAAC;AAC9C,MAAM,CAAC,MAAM,0BAA0B,GAAG,kBAAkB,CAAC;AAC7D,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AACrC,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AAC3C,MAAM,CAAC,MAAM,kBAAkB,GAAG,SAAS,CAAC;AAC5C,MAAM,CAAC,MAAM,wBAAwB,GAAG,SAAS,CAAC;AAClD,MAAM,CAAC,MAAM,qBAAqB,GAAG,SAAS,CAAC;AAC/C,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC;AAC/C,MAAM,CAAC,MAAM,sBAAsB,GAAG,YAAY,CAAC;AACnD,MAAM,CAAC,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;AACxD,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AACzC,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,CAAC;AACpC,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC;AACrC,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,CAAC,2DAA2D;AAEjG,MAAM,CAAC,MAAM,SAAS,GACpB,8kCAA8kC,CAAC;AAEjlC,MAAM,CAAC,MAAM,kBAAkB,GAC7B,mwxKAAmwxK,CAAC"}
@@ -10,8 +10,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  import * as fontkit from 'fontkit';
11
11
  import { isTextSchema } from './type';
12
12
  import { Buffer } from 'buffer';
13
- import { DEFAULT_FONT_VALUE, DEFAULT_FONT_NAME, DEFAULT_FONT_SIZE, DEFAULT_CHARACTER_SPACING, DEFAULT_LINE_HEIGHT, FONT_SIZE_ADJUSTMENT, PT_TO_PX_RATIO, DEFAULT_DYNAMIC_FIT, DYNAMIC_FIT_HORIZONTAL, DYNAMIC_FIT_VERTICAL, } from './constants';
14
- import { mm2pt, pt2mm } from './helper';
13
+ import { DEFAULT_FONT_VALUE, DEFAULT_FONT_NAME, DEFAULT_FONT_SIZE, DEFAULT_CHARACTER_SPACING, DEFAULT_LINE_HEIGHT, FONT_SIZE_ADJUSTMENT, DEFAULT_DYNAMIC_FIT, DYNAMIC_FIT_HORIZONTAL, DYNAMIC_FIT_VERTICAL, VERTICAL_ALIGN_TOP, } from './constants';
14
+ import { mm2pt, pt2mm, pt2px } from './helper';
15
15
  import { b64toUint8Array } from ".";
16
16
  export const getFallbackFontName = (font) => {
17
17
  const initial = '';
@@ -37,7 +37,7 @@ const getFontNamesInSchemas = (schemas) => uniq(schemas
37
37
  .reduce((acc, cur) => acc.concat(cur), [])
38
38
  .filter(Boolean));
39
39
  export const checkFont = (arg) => {
40
- const { font, template: { schemas }, } = arg;
40
+ const { font, template: { schemas } } = arg;
41
41
  const fontValues = Object.values(font);
42
42
  const fallbackFontNum = fontValues.reduce((acc, cur) => (cur.fallback ? acc + 1 : acc), 0);
43
43
  if (fallbackFontNum === 0) {
@@ -54,16 +54,38 @@ export const checkFont = (arg) => {
54
54
  .join()} of template.schemas is not found in font.`);
55
55
  }
56
56
  };
57
- export const getFontAlignmentValue = (fontKitFont, fontSize) => {
57
+ export const getBrowserVerticalFontAdjustments = (fontKitFont, fontSize, lineHeight, verticalAlignment) => {
58
58
  const { ascent, descent, unitsPerEm } = fontKitFont;
59
- const fontSizeInPx = fontSize * PT_TO_PX_RATIO;
60
- // Convert ascent and descent to px values
61
- const ascentInPixels = (ascent / unitsPerEm) * fontSizeInPx;
62
- const descentInPixels = (descent / unitsPerEm) * fontSizeInPx;
63
- // Calculate the single line height in px
64
- const singleLineHeight = ((ascentInPixels + Math.abs(descentInPixels)) / fontSizeInPx);
65
- // Calculate the top margin/padding in px
66
- return ((singleLineHeight * fontSizeInPx) - fontSizeInPx) / 2;
59
+ // Fonts have a designed line height that the browser renders when using `line-height: normal`
60
+ const fontBaseLineHeight = (ascent - descent) / unitsPerEm;
61
+ // For vertical alignment top
62
+ // To achieve consistent positioning between browser and PDF, we apply the difference between
63
+ // the font's actual height and the font size in pixels.
64
+ // Browsers middle the font within this height, so we only need half of it to apply to the top.
65
+ // This means the font renders a bit lower in the browser, but achieves PDF alignment
66
+ const topAdjustment = (fontBaseLineHeight * fontSize - fontSize) / 2;
67
+ if (verticalAlignment === VERTICAL_ALIGN_TOP) {
68
+ return { topAdj: pt2px(topAdjustment), bottomAdj: 0 };
69
+ }
70
+ // For vertical alignment bottom and middle
71
+ // When browsers render text in a non-form element (such as a <div>), some of the text may be
72
+ // lowered below and outside the containing element if the line height used is less than
73
+ // the base line-height of the font.
74
+ // This behaviour does not happen in a <textarea> though, so we need to adjust the positioning
75
+ // for consistency between editing and viewing to stop text jumping up and down.
76
+ // This portion of text is half of the difference between the base line height and the used
77
+ // line height. If using the same or higher line-height than the base font, then line-height
78
+ // takes over in the browser and this adjustment is not needed.
79
+ // Unlike the top adjustment - this is only driven by browser behaviour, not PDF alignment.
80
+ let bottomAdjustment = 0;
81
+ if (lineHeight < fontBaseLineHeight) {
82
+ bottomAdjustment = ((fontBaseLineHeight - lineHeight) * fontSize) / 2;
83
+ }
84
+ return { topAdj: 0, bottomAdj: pt2px(bottomAdjustment) };
85
+ };
86
+ export const getFontDescentInPt = (fontKitFont, fontSize) => {
87
+ const { descent, unitsPerEm } = fontKitFont;
88
+ return (descent / unitsPerEm) * fontSize;
67
89
  };
68
90
  export const heightOfFontAtSize = (fontKitFont, fontSize) => {
69
91
  const { ascent, descent, bbox, unitsPerEm } = fontKitFont;
@@ -157,7 +179,7 @@ export const getSplittedLines = (textLine, calcValues) => {
157
179
  * Calculating space usage involves splitting lines where they exceed
158
180
  * the box width based on the proposed size.
159
181
  */
160
- export const calculateDynamicFontSize = ({ textSchema, font, input, startingFontSize, }) => __awaiter(void 0, void 0, void 0, function* () {
182
+ export const calculateDynamicFontSize = ({ textSchema, font, value, startingFontSize, }) => __awaiter(void 0, void 0, void 0, function* () {
161
183
  var _a;
162
184
  const { fontSize: schemaFontSize, dynamicFontSize: dynamicFontSizeSetting, characterSpacing: schemaCharacterSpacing, width: boxWidth, height: boxHeight, lineHeight = DEFAULT_LINE_HEIGHT, } = textSchema;
163
185
  const fontSize = startingFontSize || schemaFontSize || DEFAULT_FONT_SIZE;
@@ -167,7 +189,7 @@ export const calculateDynamicFontSize = ({ textSchema, font, input, startingFont
167
189
  return fontSize;
168
190
  const characterSpacing = schemaCharacterSpacing !== null && schemaCharacterSpacing !== void 0 ? schemaCharacterSpacing : DEFAULT_CHARACTER_SPACING;
169
191
  const fontKitFont = yield getFontKitFont(textSchema, font);
170
- const textContentRows = input.split('\n');
192
+ const paragraphs = value.split('\n');
171
193
  let dynamicFontSize = fontSize;
172
194
  if (dynamicFontSize < dynamicFontSizeSetting.min) {
173
195
  dynamicFontSize = dynamicFontSizeSetting.min;
@@ -180,23 +202,29 @@ export const calculateDynamicFontSize = ({ textSchema, font, input, startingFont
180
202
  let totalWidthInMm = 0;
181
203
  let totalHeightInMm = 0;
182
204
  const boxWidthInPt = mm2pt(boxWidth);
183
- const textHeight = heightOfFontAtSize(fontKitFont, size);
184
- const textHeightInMm = pt2mm(textHeight * lineHeight);
185
- textContentRows.forEach((paragraph) => {
205
+ const firstLineTextHeight = heightOfFontAtSize(fontKitFont, size);
206
+ const firstLineHeightInMm = pt2mm(firstLineTextHeight * lineHeight);
207
+ const otherRowHeightInMm = pt2mm(size * lineHeight);
208
+ paragraphs.forEach((paragraph, paraIndex) => {
186
209
  const lines = getSplittedLines(paragraph, {
187
210
  font: fontKitFont,
188
211
  fontSize: size,
189
212
  characterSpacing,
190
213
  boxWidthInPt,
191
214
  });
192
- lines.forEach((line) => {
215
+ lines.forEach((line, lineIndex) => {
193
216
  if (dynamicFontFit === DYNAMIC_FIT_VERTICAL) {
194
217
  // For vertical fit we want to consider the width of text lines where we detect a split
195
218
  const textWidth = widthOfTextAtSize(line, fontKitFont, size, characterSpacing);
196
219
  const textWidthInMm = pt2mm(textWidth);
197
220
  totalWidthInMm = Math.max(totalWidthInMm, textWidthInMm);
198
221
  }
199
- totalHeightInMm += textHeightInMm;
222
+ if (paraIndex + lineIndex === 0) {
223
+ totalHeightInMm += firstLineHeightInMm;
224
+ }
225
+ else {
226
+ totalHeightInMm += otherRowHeightInMm;
227
+ }
200
228
  });
201
229
  if (dynamicFontFit === DYNAMIC_FIT_HORIZONTAL) {
202
230
  // For horizontal fit we want to consider the line's width 'unsplit'