@pdfme/common 1.2.6 → 2.0.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 (42) hide show
  1. package/dist/cjs/__tests__/font.test.js +254 -0
  2. package/dist/cjs/__tests__/font.test.js.map +1 -0
  3. package/dist/cjs/__tests__/helper.test.js +0 -189
  4. package/dist/cjs/__tests__/helper.test.js.map +1 -1
  5. package/dist/cjs/src/constants.js +2 -1
  6. package/dist/cjs/src/constants.js.map +1 -1
  7. package/dist/cjs/src/{calculateDynamicFontSize.js → font.js} +76 -7
  8. package/dist/cjs/src/font.js.map +1 -0
  9. package/dist/cjs/src/helper.js +11 -52
  10. package/dist/cjs/src/helper.js.map +1 -1
  11. package/dist/cjs/src/index.js +10 -6
  12. package/dist/cjs/src/index.js.map +1 -1
  13. package/dist/esm/__tests__/font.test.js +229 -0
  14. package/dist/esm/__tests__/font.test.js.map +1 -0
  15. package/dist/esm/__tests__/helper.test.js +1 -167
  16. package/dist/esm/__tests__/helper.test.js.map +1 -1
  17. package/dist/esm/src/constants.js +1 -0
  18. package/dist/esm/src/constants.js.map +1 -1
  19. package/dist/esm/src/{calculateDynamicFontSize.js → font.js} +70 -7
  20. package/dist/esm/src/font.js.map +1 -0
  21. package/dist/esm/src/helper.js +2 -40
  22. package/dist/esm/src/helper.js.map +1 -1
  23. package/dist/esm/src/index.js +4 -4
  24. package/dist/esm/src/index.js.map +1 -1
  25. package/dist/types/src/constants.d.ts +1 -0
  26. package/dist/types/src/font.d.ts +17 -0
  27. package/dist/types/src/helper.d.ts +1 -7
  28. package/dist/types/src/index.d.ts +4 -4
  29. package/package.json +2 -2
  30. package/src/constants.ts +1 -0
  31. package/src/font.ts +194 -0
  32. package/src/helper.ts +3 -58
  33. package/src/index.ts +13 -4
  34. package/dist/cjs/__tests__/calculateDynamicFontSize.test.js +0 -97
  35. package/dist/cjs/__tests__/calculateDynamicFontSize.test.js.map +0 -1
  36. package/dist/cjs/src/calculateDynamicFontSize.js.map +0 -1
  37. package/dist/esm/__tests__/calculateDynamicFontSize.test.js +0 -72
  38. package/dist/esm/__tests__/calculateDynamicFontSize.test.js.map +0 -1
  39. package/dist/esm/src/calculateDynamicFontSize.js.map +0 -1
  40. package/dist/types/src/calculateDynamicFontSize.d.ts +0 -6
  41. package/src/calculateDynamicFontSize.ts +0 -101
  42. /package/dist/types/__tests__/{calculateDynamicFontSize.test.d.ts → font.test.d.ts} +0 -0
@@ -32,11 +32,78 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
32
32
  });
33
33
  };
34
34
  Object.defineProperty(exports, "__esModule", { value: true });
35
- exports.calculateDynamicFontSize = void 0;
35
+ exports.calculateDynamicFontSize = exports.getFontKitFont = exports.heightOfFontAtSize = exports.getFontAlignmentValue = exports.checkFont = exports.getDefaultFont = exports.getFallbackFontName = void 0;
36
36
  const fontkit = __importStar(require("fontkit"));
37
+ const type_1 = require("./type");
37
38
  const buffer_1 = require("buffer");
38
39
  const constants_1 = require("./constants");
39
40
  const _1 = require(".");
41
+ const getFallbackFontName = (font) => {
42
+ const initial = '';
43
+ const fallbackFontName = Object.entries(font).reduce((acc, cur) => {
44
+ const [fontName, fontValue] = cur;
45
+ return !acc && fontValue.fallback ? fontName : acc;
46
+ }, initial);
47
+ if (fallbackFontName === initial) {
48
+ throw Error(`fallback flag is not found in font. true fallback flag must be only one.`);
49
+ }
50
+ return fallbackFontName;
51
+ };
52
+ exports.getFallbackFontName = getFallbackFontName;
53
+ const getFallbackFont = (font) => {
54
+ const fallbackFontName = (0, exports.getFallbackFontName)(font);
55
+ return font[fallbackFontName];
56
+ };
57
+ const getDefaultFont = () => ({
58
+ [constants_1.DEFAULT_FONT_NAME]: { data: (0, _1.b64toUint8Array)(constants_1.DEFAULT_FONT_VALUE), fallback: true },
59
+ });
60
+ exports.getDefaultFont = getDefaultFont;
61
+ const uniq = (array) => Array.from(new Set(array));
62
+ const getFontNamesInSchemas = (schemas) => uniq(schemas
63
+ .map((s) => Object.values(s).map((v) => ((0, type_1.isTextSchema)(v) ? v.fontName : '')))
64
+ .reduce((acc, cur) => acc.concat(cur), [])
65
+ .filter(Boolean));
66
+ const checkFont = (arg) => {
67
+ const { font, template: { schemas }, } = arg;
68
+ const fontValues = Object.values(font);
69
+ const fallbackFontNum = fontValues.reduce((acc, cur) => (cur.fallback ? acc + 1 : acc), 0);
70
+ if (fallbackFontNum === 0) {
71
+ throw Error(`fallback flag is not found in font. true fallback flag must be only one.`);
72
+ }
73
+ if (fallbackFontNum > 1) {
74
+ throw Error(`${fallbackFontNum} fallback flags found in font. true fallback flag must be only one.`);
75
+ }
76
+ const fontNamesInSchemas = getFontNamesInSchemas(schemas);
77
+ const fontNames = Object.keys(font);
78
+ if (fontNamesInSchemas.some((f) => !fontNames.includes(f))) {
79
+ throw Error(`${fontNamesInSchemas
80
+ .filter((f) => !fontNames.includes(f))
81
+ .join()} of template.schemas is not found in font.`);
82
+ }
83
+ };
84
+ exports.checkFont = checkFont;
85
+ const getFontAlignmentValue = (fontKitFont, fontSize) => {
86
+ const { ascent, descent, unitsPerEm } = fontKitFont;
87
+ const fontSizeInPx = fontSize * constants_1.DEFAULT_PT_TO_PX_RATIO;
88
+ // Convert ascent and descent to px values
89
+ const ascentInPixels = (ascent / unitsPerEm) * fontSizeInPx;
90
+ const descentInPixels = (descent / unitsPerEm) * fontSizeInPx;
91
+ // Calculate the single line height in px
92
+ const singleLineHeight = ((ascentInPixels + Math.abs(descentInPixels)) / fontSizeInPx);
93
+ // Calculate the top margin/padding in px
94
+ return ((singleLineHeight * fontSizeInPx) - fontSizeInPx) / 2;
95
+ };
96
+ exports.getFontAlignmentValue = getFontAlignmentValue;
97
+ const heightOfFontAtSize = (fontKitFont, fontSize) => {
98
+ const { ascent, descent, bbox, unitsPerEm } = fontKitFont;
99
+ const scale = 1000 / unitsPerEm;
100
+ const yTop = (ascent || bbox.maxY) * scale;
101
+ const yBottom = (descent || bbox.minY) * scale;
102
+ let height = yTop - yBottom;
103
+ height -= Math.abs(descent * scale) || 0;
104
+ return (height / 1000) * fontSize;
105
+ };
106
+ exports.heightOfFontAtSize = heightOfFontAtSize;
40
107
  const widthOfTextAtSize = (input, fontKitFont, fontSize) => {
41
108
  const { glyphs } = fontKitFont.layout(input);
42
109
  const scale = 1000 / fontKitFont.unitsPerEm;
@@ -61,12 +128,13 @@ const getLongestLine = (textContentRows, fontKitFont, fontSize, characterSpacing
61
128
  return longestLine;
62
129
  };
63
130
  const fontKitFontCache = {};
64
- const createFontKitFont = (font, fontName = constants_1.DEFAULT_FONT_NAME) => __awaiter(void 0, void 0, void 0, function* () {
65
- var _a;
131
+ const getFontKitFont = (textSchema, font) => __awaiter(void 0, void 0, void 0, function* () {
132
+ const fontName = textSchema.fontName || (0, exports.getFallbackFontName)(font);
66
133
  if (fontKitFontCache[fontName]) {
67
134
  return fontKitFontCache[fontName];
68
135
  }
69
- let fontData = ((_a = font[fontName]) === null || _a === void 0 ? void 0 : _a.data) || constants_1.DEFAULT_FONT_VALUE;
136
+ const currentFont = font[fontName] || getFallbackFont(font) || (0, exports.getDefaultFont)()[constants_1.DEFAULT_FONT_NAME];
137
+ let fontData = currentFont.data;
70
138
  if (typeof fontData === 'string') {
71
139
  fontData = fontData.startsWith('http') ? yield fetch(fontData).then((res) => res.arrayBuffer()) : (0, _1.b64toUint8Array)(fontData);
72
140
  }
@@ -74,17 +142,18 @@ const createFontKitFont = (font, fontName = constants_1.DEFAULT_FONT_NAME) => __
74
142
  fontKitFontCache[fontName] = fontKitFont;
75
143
  return fontKitFont;
76
144
  });
145
+ exports.getFontKitFont = getFontKitFont;
77
146
  const getTextContent = (input, fontKitFont, fontSize, characterSpacingCount) => {
78
147
  const textContentRows = input.split('\n');
79
148
  return textContentRows.length > 1 ? getLongestLine(textContentRows, fontKitFont, fontSize, characterSpacingCount) : input;
80
149
  };
81
150
  const calculateDynamicFontSize = ({ textSchema, font, input }) => __awaiter(void 0, void 0, void 0, function* () {
82
- const { fontName, fontSize: _fontSize, dynamicFontSize: dynamicFontSizeSetting, characterSpacing, width } = textSchema;
151
+ const { fontSize: _fontSize, dynamicFontSize: dynamicFontSizeSetting, characterSpacing, width } = textSchema;
83
152
  const fontSize = _fontSize || constants_1.DEFAULT_FONT_SIZE;
84
153
  if (!dynamicFontSizeSetting)
85
154
  return fontSize;
86
155
  const characterSpacingCount = characterSpacing !== null && characterSpacing !== void 0 ? characterSpacing : constants_1.DEFAULT_CHARACTER_SPACING;
87
- const fontKitFont = yield createFontKitFont(font, fontName);
156
+ const fontKitFont = yield (0, exports.getFontKitFont)(textSchema, font);
88
157
  const textContent = getTextContent(input, fontKitFont, fontSize, characterSpacingCount);
89
158
  const textWidth = widthOfTextAtSize(textContent, fontKitFont, fontSize);
90
159
  let dynamicFontSize = fontSize;
@@ -100,4 +169,4 @@ const calculateDynamicFontSize = ({ textSchema, font, input }) => __awaiter(void
100
169
  return dynamicFontSize;
101
170
  });
102
171
  exports.calculateDynamicFontSize = calculateDynamicFontSize;
103
- //# sourceMappingURL=calculateDynamicFontSize.js.map
172
+ //# sourceMappingURL=font.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"font.js","sourceRoot":"","sources":["../../../src/font.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateBarcodeInput = exports.checkGenerateProps = exports.checkDesignerProps = exports.checkPreviewProps = exports.checkUIProps = exports.checkTemplate = exports.checkUIOptions = exports.checkInputs = exports.checkFont = exports.getDefaultFont = exports.getFallbackFontName = exports.b64toUint8Array = exports.getB64BasePdf = void 0;
3
+ exports.validateBarcodeInput = exports.checkGenerateProps = exports.checkDesignerProps = exports.checkPreviewProps = exports.checkUIProps = exports.checkTemplate = exports.checkUIOptions = exports.checkInputs = exports.b64toUint8Array = exports.getB64BasePdf = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const buffer_1 = require("buffer");
6
- const constants_js_1 = require("./constants.js");
7
- const type_js_1 = require("./type.js");
8
- const schema_js_1 = require("./schema.js");
6
+ const schema_1 = require("./schema");
7
+ const font_1 = require("./font");
9
8
  const blob2Base64Pdf = (blob) => {
10
9
  return new Promise((resolve, reject) => {
11
10
  const reader = new FileReader();
@@ -44,46 +43,6 @@ const b64toUint8Array = (base64) => {
44
43
  return unit8arr;
45
44
  };
46
45
  exports.b64toUint8Array = b64toUint8Array;
47
- const getFallbackFontName = (font) => {
48
- const initial = '';
49
- const fallbackFontName = Object.entries(font).reduce((acc, cur) => {
50
- const [fontName, fontValue] = cur;
51
- return !acc && fontValue.fallback ? fontName : acc;
52
- }, initial);
53
- if (fallbackFontName === initial) {
54
- throw Error(`fallback flag is not found in font. true fallback flag must be only one.`);
55
- }
56
- return fallbackFontName;
57
- };
58
- exports.getFallbackFontName = getFallbackFontName;
59
- const getDefaultFont = () => ({
60
- [constants_js_1.DEFAULT_FONT_NAME]: { data: (0, exports.b64toUint8Array)(constants_js_1.DEFAULT_FONT_VALUE), fallback: true },
61
- });
62
- exports.getDefaultFont = getDefaultFont;
63
- const uniq = (array) => Array.from(new Set(array));
64
- const getFontNamesInSchemas = (schemas) => uniq(schemas
65
- .map((s) => Object.values(s).map((v) => ((0, type_js_1.isTextSchema)(v) ? v.fontName : '')))
66
- .reduce((acc, cur) => acc.concat(cur), [])
67
- .filter(Boolean));
68
- const checkFont = (arg) => {
69
- const { font, template: { schemas }, } = arg;
70
- const fontValues = Object.values(font);
71
- const fallbackFontNum = fontValues.reduce((acc, cur) => (cur.fallback ? acc + 1 : acc), 0);
72
- if (fallbackFontNum === 0) {
73
- throw Error(`fallback flag is not found in font. true fallback flag must be only one.`);
74
- }
75
- if (fallbackFontNum > 1) {
76
- throw Error(`${fallbackFontNum} fallback flags found in font. true fallback flag must be only one.`);
77
- }
78
- const fontNamesInSchemas = getFontNamesInSchemas(schemas);
79
- const fontNames = Object.keys(font);
80
- if (fontNamesInSchemas.some((f) => !fontNames.includes(f))) {
81
- throw Error(`${fontNamesInSchemas
82
- .filter((f) => !fontNames.includes(f))
83
- .join()} of template.schemas is not found in font.`);
84
- }
85
- };
86
- exports.checkFont = checkFont;
87
46
  const checkProps = (data, zodSchema) => {
88
47
  try {
89
48
  zodSchema.parse(data);
@@ -103,22 +62,22 @@ ${message}`);
103
62
  const { template, options } = commonProps;
104
63
  const font = options === null || options === void 0 ? void 0 : options.font;
105
64
  if (font) {
106
- (0, exports.checkFont)({ font, template });
65
+ (0, font_1.checkFont)({ font, template });
107
66
  }
108
67
  };
109
- const checkInputs = (data) => checkProps(data, schema_js_1.Inputs);
68
+ const checkInputs = (data) => checkProps(data, schema_1.Inputs);
110
69
  exports.checkInputs = checkInputs;
111
- const checkUIOptions = (data) => checkProps(data, schema_js_1.UIOptions);
70
+ const checkUIOptions = (data) => checkProps(data, schema_1.UIOptions);
112
71
  exports.checkUIOptions = checkUIOptions;
113
- const checkTemplate = (data) => checkProps(data, schema_js_1.Template);
72
+ const checkTemplate = (data) => checkProps(data, schema_1.Template);
114
73
  exports.checkTemplate = checkTemplate;
115
- const checkUIProps = (data) => checkProps(data, schema_js_1.UIProps);
74
+ const checkUIProps = (data) => checkProps(data, schema_1.UIProps);
116
75
  exports.checkUIProps = checkUIProps;
117
- const checkPreviewProps = (data) => checkProps(data, schema_js_1.PreviewProps);
76
+ const checkPreviewProps = (data) => checkProps(data, schema_1.PreviewProps);
118
77
  exports.checkPreviewProps = checkPreviewProps;
119
- const checkDesignerProps = (data) => checkProps(data, schema_js_1.DesignerProps);
78
+ const checkDesignerProps = (data) => checkProps(data, schema_1.DesignerProps);
120
79
  exports.checkDesignerProps = checkDesignerProps;
121
- const checkGenerateProps = (data) => checkProps(data, schema_js_1.GenerateProps);
80
+ const checkGenerateProps = (data) => checkProps(data, schema_1.GenerateProps);
122
81
  exports.checkGenerateProps = checkGenerateProps;
123
82
  // GTIN-13, GTIN-8, GTIN-12, GTIN-14
124
83
  const validateCheckDigit = (input, checkDigitPos) => {
@@ -1 +1 @@
1
- {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../src/helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../src/helper.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.calculateDynamicFontSize = exports.validateBarcodeInput = exports.checkGenerateProps = exports.checkDesignerProps = exports.checkPreviewProps = exports.checkUIProps = exports.checkTemplate = exports.checkUIOptions = exports.checkInputs = exports.checkFont = exports.getDefaultFont = exports.getFallbackFontName = exports.b64toUint8Array = exports.getB64BasePdf = exports.isBarcodeSchema = exports.isImageSchema = exports.isTextSchema = exports.schemaTypes = exports.DEFAULT_FONT_VALUE = exports.BLANK_PDF = exports.DEFAULT_PT_TO_MM_RATIO = exports.DEFAULT_FONT_SIZE_ADJUSTMENT = exports.DEFAULT_TOLERANCE = exports.DEFAULT_FONT_COLOR = exports.DEFAULT_CHARACTER_SPACING = exports.DEFAULT_LINE_HEIGHT = exports.DEFAULT_ALIGNMENT = exports.DEFAULT_FONT_SIZE = exports.DEFAULT_FONT_NAME = void 0;
3
+ exports.calculateDynamicFontSize = exports.validateBarcodeInput = exports.checkGenerateProps = exports.checkDesignerProps = exports.checkPreviewProps = exports.checkUIProps = exports.checkTemplate = exports.checkUIOptions = exports.checkInputs = exports.getFontAlignmentValue = exports.getFontKitFont = exports.checkFont = exports.heightOfFontAtSize = exports.getDefaultFont = exports.getFallbackFontName = exports.b64toUint8Array = exports.getB64BasePdf = exports.isBarcodeSchema = exports.isImageSchema = exports.isTextSchema = exports.schemaTypes = exports.DEFAULT_FONT_VALUE = exports.BLANK_PDF = exports.DEFAULT_PT_TO_PX_RATIO = exports.DEFAULT_PT_TO_MM_RATIO = exports.DEFAULT_FONT_SIZE_ADJUSTMENT = exports.DEFAULT_TOLERANCE = exports.DEFAULT_FONT_COLOR = exports.DEFAULT_CHARACTER_SPACING = exports.DEFAULT_LINE_HEIGHT = exports.DEFAULT_ALIGNMENT = exports.DEFAULT_FONT_SIZE = exports.DEFAULT_FONT_NAME = void 0;
4
4
  const constants_js_1 = require("./constants.js");
5
5
  Object.defineProperty(exports, "DEFAULT_FONT_NAME", { enumerable: true, get: function () { return constants_js_1.DEFAULT_FONT_NAME; } });
6
6
  Object.defineProperty(exports, "DEFAULT_FONT_SIZE", { enumerable: true, get: function () { return constants_js_1.DEFAULT_FONT_SIZE; } });
@@ -11,6 +11,7 @@ Object.defineProperty(exports, "DEFAULT_FONT_COLOR", { enumerable: true, get: fu
11
11
  Object.defineProperty(exports, "DEFAULT_TOLERANCE", { enumerable: true, get: function () { return constants_js_1.DEFAULT_TOLERANCE; } });
12
12
  Object.defineProperty(exports, "DEFAULT_FONT_SIZE_ADJUSTMENT", { enumerable: true, get: function () { return constants_js_1.DEFAULT_FONT_SIZE_ADJUSTMENT; } });
13
13
  Object.defineProperty(exports, "DEFAULT_PT_TO_MM_RATIO", { enumerable: true, get: function () { return constants_js_1.DEFAULT_PT_TO_MM_RATIO; } });
14
+ Object.defineProperty(exports, "DEFAULT_PT_TO_PX_RATIO", { enumerable: true, get: function () { return constants_js_1.DEFAULT_PT_TO_PX_RATIO; } });
14
15
  Object.defineProperty(exports, "BLANK_PDF", { enumerable: true, get: function () { return constants_js_1.BLANK_PDF; } });
15
16
  Object.defineProperty(exports, "DEFAULT_FONT_VALUE", { enumerable: true, get: function () { return constants_js_1.DEFAULT_FONT_VALUE; } });
16
17
  const type_js_1 = require("./type.js");
@@ -21,9 +22,6 @@ Object.defineProperty(exports, "isTextSchema", { enumerable: true, get: function
21
22
  const helper_js_1 = require("./helper.js");
22
23
  Object.defineProperty(exports, "getB64BasePdf", { enumerable: true, get: function () { return helper_js_1.getB64BasePdf; } });
23
24
  Object.defineProperty(exports, "b64toUint8Array", { enumerable: true, get: function () { return helper_js_1.b64toUint8Array; } });
24
- Object.defineProperty(exports, "getFallbackFontName", { enumerable: true, get: function () { return helper_js_1.getFallbackFontName; } });
25
- Object.defineProperty(exports, "getDefaultFont", { enumerable: true, get: function () { return helper_js_1.getDefaultFont; } });
26
- Object.defineProperty(exports, "checkFont", { enumerable: true, get: function () { return helper_js_1.checkFont; } });
27
25
  Object.defineProperty(exports, "checkInputs", { enumerable: true, get: function () { return helper_js_1.checkInputs; } });
28
26
  Object.defineProperty(exports, "checkUIOptions", { enumerable: true, get: function () { return helper_js_1.checkUIOptions; } });
29
27
  Object.defineProperty(exports, "checkTemplate", { enumerable: true, get: function () { return helper_js_1.checkTemplate; } });
@@ -32,6 +30,12 @@ Object.defineProperty(exports, "checkPreviewProps", { enumerable: true, get: fun
32
30
  Object.defineProperty(exports, "checkDesignerProps", { enumerable: true, get: function () { return helper_js_1.checkDesignerProps; } });
33
31
  Object.defineProperty(exports, "checkGenerateProps", { enumerable: true, get: function () { return helper_js_1.checkGenerateProps; } });
34
32
  Object.defineProperty(exports, "validateBarcodeInput", { enumerable: true, get: function () { return helper_js_1.validateBarcodeInput; } });
35
- const calculateDynamicFontSize_js_1 = require("./calculateDynamicFontSize.js");
36
- Object.defineProperty(exports, "calculateDynamicFontSize", { enumerable: true, get: function () { return calculateDynamicFontSize_js_1.calculateDynamicFontSize; } });
33
+ const font_js_1 = require("./font.js");
34
+ Object.defineProperty(exports, "calculateDynamicFontSize", { enumerable: true, get: function () { return font_js_1.calculateDynamicFontSize; } });
35
+ Object.defineProperty(exports, "getFallbackFontName", { enumerable: true, get: function () { return font_js_1.getFallbackFontName; } });
36
+ Object.defineProperty(exports, "getDefaultFont", { enumerable: true, get: function () { return font_js_1.getDefaultFont; } });
37
+ Object.defineProperty(exports, "heightOfFontAtSize", { enumerable: true, get: function () { return font_js_1.heightOfFontAtSize; } });
38
+ Object.defineProperty(exports, "checkFont", { enumerable: true, get: function () { return font_js_1.checkFont; } });
39
+ Object.defineProperty(exports, "getFontKitFont", { enumerable: true, get: function () { return font_js_1.getFontKitFont; } });
40
+ Object.defineProperty(exports, "getFontAlignmentValue", { enumerable: true, get: function () { return font_js_1.getFontAlignmentValue; } });
37
41
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":";;;AAAA,iDAYwB;AA6CtB,kGAxDA,gCAAiB,OAwDA;AACjB,kGAxDA,gCAAiB,OAwDA;AACjB,kGAxDA,gCAAiB,OAwDA;AACjB,oGAxDA,kCAAmB,OAwDA;AACnB,0GAxDA,wCAAyB,OAwDA;AACzB,mGAxDA,iCAAkB,OAwDA;AAClB,kGAxDA,gCAAiB,OAwDA;AACjB,6GAxDA,2CAA4B,OAwDA;AAC5B,uGAxDA,qCAAsB,OAwDA;AACtB,0FAxDA,wBAAS,OAwDA;AACT,mGAxDA,iCAAkB,OAwDA;AAtDpB,uCAAsF;AAuDpF,4FAvDO,qBAAW,OAuDP;AAEX,8FAzDoB,uBAAa,OAyDpB;AACb,gGA1DmC,yBAAe,OA0DnC;AAFf,6FAxDoD,sBAAY,OAwDpD;AA9Bd,2CAcqB;AAmBnB,8FAhCA,yBAAa,OAgCA;AACb,gGAhCA,2BAAe,OAgCA;AACf,oGAhCA,+BAAmB,OAgCA;AACnB,+FAhCA,0BAAc,OAgCA;AACd,0FAhCA,qBAAS,OAgCA;AACT,4FAhCA,uBAAW,OAgCA;AACX,+FAhCA,0BAAc,OAgCA;AACd,8FAhCA,yBAAa,OAgCA;AACb,6FAhCA,wBAAY,OAgCA;AACZ,kGAhCA,6BAAiB,OAgCA;AACjB,mGAhCA,8BAAkB,OAgCA;AAClB,mGAhCA,8BAAkB,OAgCA;AAClB,qGAhCA,gCAAoB,OAgCA;AA9BtB,+EAAyE;AA+BvE,yGA/BO,sDAAwB,OA+BP"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":";;;AAAA,iDAawB;AAiDtB,kGA7DA,gCAAiB,OA6DA;AACjB,kGA7DA,gCAAiB,OA6DA;AACjB,kGA7DA,gCAAiB,OA6DA;AACjB,oGA7DA,kCAAmB,OA6DA;AACnB,0GA7DA,wCAAyB,OA6DA;AACzB,mGA7DA,iCAAkB,OA6DA;AAClB,kGA7DA,gCAAiB,OA6DA;AACjB,6GA7DA,2CAA4B,OA6DA;AAC5B,uGA7DA,qCAAsB,OA6DA;AACtB,uGA7DA,qCAAsB,OA6DA;AACtB,0FA7DA,wBAAS,OA6DA;AACT,mGA7DA,iCAAkB,OA6DA;AA3DpB,uCAAsF;AA4DpF,4FA5DO,qBAAW,OA4DP;AAEX,8FA9DoB,uBAAa,OA8DpB;AACb,gGA/DmC,yBAAe,OA+DnC;AAFf,6FA7DoD,sBAAY,OA6DpD;AAnCd,2CAWqB;AA2BnB,8FArCA,yBAAa,OAqCA;AACb,gGArCA,2BAAe,OAqCA;AAOf,4FA3CA,uBAAW,OA2CA;AACX,+FA3CA,0BAAc,OA2CA;AACd,8FA3CA,yBAAa,OA2CA;AACb,6FA3CA,wBAAY,OA2CA;AACZ,kGA3CA,6BAAiB,OA2CA;AACjB,mGA3CA,8BAAkB,OA2CA;AAClB,mGA3CA,8BAAkB,OA2CA;AAClB,qGA3CA,gCAAoB,OA2CA;AAzCtB,uCAOmB;AAmCjB,yGAzCA,kCAAwB,OAyCA;AAdxB,oGA3B0B,6BAAmB,OA2B1B;AACnB,+FA3BA,wBAAc,OA2BA;AACd,mGA3BA,4BAAkB,OA2BA;AAClB,0FA3BA,mBAAS,OA2BA;AACT,+FA3BA,wBAAc,OA2BA;AACd,sGA3BA,+BAAqB,OA2BA"}
@@ -0,0 +1,229 @@
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 { readFileSync } from 'fs';
11
+ import * as path from 'path';
12
+ import { calculateDynamicFontSize, checkFont, getDefaultFont } from "../src/font";
13
+ import { BLANK_PDF } from '../src';
14
+ const sansData = readFileSync(path.join(__dirname, `/assets/fonts/SauceHanSansJP.ttf`));
15
+ const serifData = readFileSync(path.join(__dirname, `/assets/fonts/SauceHanSerifJP.ttf`));
16
+ const getSampleFont = () => ({
17
+ SauceHanSansJP: { fallback: true, data: sansData },
18
+ SauceHanSerifJP: { data: serifData },
19
+ });
20
+ const getTemplate = () => ({
21
+ basePdf: BLANK_PDF,
22
+ schemas: [
23
+ {
24
+ a: {
25
+ type: 'text',
26
+ fontName: 'SauceHanSansJP',
27
+ position: { x: 0, y: 0 },
28
+ width: 100,
29
+ height: 100,
30
+ },
31
+ b: {
32
+ type: 'text',
33
+ position: { x: 0, y: 0 },
34
+ width: 100,
35
+ height: 100,
36
+ },
37
+ },
38
+ ],
39
+ });
40
+ const getTextSchema = () => {
41
+ const textSchema = {
42
+ position: { x: 0, y: 0 }, type: 'text', fontSize: 14, characterSpacing: 1, width: 50, height: 50
43
+ };
44
+ return textSchema;
45
+ };
46
+ describe('checkFont test', () => {
47
+ test('success test: no fontName in Schemas', () => {
48
+ const _getTemplate = () => ({
49
+ basePdf: BLANK_PDF,
50
+ schemas: [
51
+ {
52
+ a: {
53
+ type: 'text',
54
+ position: { x: 0, y: 0 },
55
+ width: 100,
56
+ height: 100,
57
+ },
58
+ b: {
59
+ type: 'text',
60
+ position: { x: 0, y: 0 },
61
+ width: 100,
62
+ height: 100,
63
+ },
64
+ },
65
+ ],
66
+ });
67
+ try {
68
+ checkFont({ template: _getTemplate(), font: getSampleFont() });
69
+ expect.anything();
70
+ }
71
+ catch (e) {
72
+ fail();
73
+ }
74
+ });
75
+ test('success test: fontName in Schemas(fallback font)', () => {
76
+ try {
77
+ checkFont({ template: getTemplate(), font: getSampleFont() });
78
+ expect.anything();
79
+ }
80
+ catch (e) {
81
+ fail();
82
+ }
83
+ });
84
+ test('success test: fontName in Schemas(not fallback font)', () => {
85
+ const getFont = () => ({
86
+ SauceHanSansJP: { data: sansData },
87
+ SauceHanSerifJP: { fallback: true, data: serifData },
88
+ });
89
+ try {
90
+ checkFont({ template: getTemplate(), font: getFont() });
91
+ expect.anything();
92
+ }
93
+ catch (e) {
94
+ fail();
95
+ }
96
+ });
97
+ test('fail test: no fallback font', () => {
98
+ const getFont = () => ({
99
+ SauceHanSansJP: { data: sansData },
100
+ SauceHanSerifJP: { data: serifData },
101
+ });
102
+ try {
103
+ checkFont({ template: getTemplate(), font: getFont() });
104
+ fail();
105
+ }
106
+ catch (e) {
107
+ expect(e.message).toEqual('fallback flag is not found in font. true fallback flag must be only one.');
108
+ }
109
+ });
110
+ test('fail test: too many fallback font', () => {
111
+ const getFont = () => ({
112
+ SauceHanSansJP: { data: sansData, fallback: true },
113
+ SauceHanSerifJP: { data: serifData, fallback: true },
114
+ });
115
+ try {
116
+ checkFont({ template: getTemplate(), font: getFont() });
117
+ fail();
118
+ }
119
+ catch (e) {
120
+ expect(e.message).toEqual('2 fallback flags found in font. true fallback flag must be only one.');
121
+ }
122
+ });
123
+ test('fail test: fontName in Schemas not found in font(single)', () => {
124
+ const _getTemplate = () => ({
125
+ basePdf: BLANK_PDF,
126
+ schemas: [
127
+ {
128
+ a: {
129
+ type: 'text',
130
+ fontName: 'SauceHanSansJP2',
131
+ position: { x: 0, y: 0 },
132
+ width: 100,
133
+ height: 100,
134
+ },
135
+ b: {
136
+ type: 'text',
137
+ position: { x: 0, y: 0 },
138
+ width: 100,
139
+ height: 100,
140
+ },
141
+ },
142
+ ],
143
+ });
144
+ try {
145
+ checkFont({ template: _getTemplate(), font: getSampleFont() });
146
+ fail();
147
+ }
148
+ catch (e) {
149
+ expect(e.message).toEqual('SauceHanSansJP2 of template.schemas is not found in font.');
150
+ }
151
+ });
152
+ test('fail test: fontName in Schemas not found in font(single)', () => {
153
+ const _getTemplate = () => ({
154
+ basePdf: BLANK_PDF,
155
+ schemas: [
156
+ {
157
+ a: {
158
+ type: 'text',
159
+ fontName: 'SauceHanSansJP2',
160
+ position: { x: 0, y: 0 },
161
+ width: 100,
162
+ height: 100,
163
+ },
164
+ b: {
165
+ type: 'text',
166
+ fontName: 'SauceHanSerifJP2',
167
+ position: { x: 0, y: 0 },
168
+ width: 100,
169
+ height: 100,
170
+ },
171
+ },
172
+ ],
173
+ });
174
+ try {
175
+ checkFont({ template: _getTemplate(), font: getSampleFont() });
176
+ fail();
177
+ }
178
+ catch (e) {
179
+ expect(e.message).toEqual('SauceHanSansJP2,SauceHanSerifJP2 of template.schemas is not found in font.');
180
+ }
181
+ });
182
+ });
183
+ describe('calculateDynamicFontSize with Default font', () => {
184
+ const font = getDefaultFont();
185
+ it('should return default font size when dynamicFontSizeSetting is not provided', () => __awaiter(void 0, void 0, void 0, function* () {
186
+ const textSchema = getTextSchema();
187
+ const result = yield calculateDynamicFontSize({ textSchema, font, input: 'test' });
188
+ expect(result).toBe(14);
189
+ }));
190
+ it('should return smaller font size when dynamicFontSizeSetting is provided', () => __awaiter(void 0, void 0, void 0, function* () {
191
+ const textSchema = Object.assign(getTextSchema(), { dynamicFontSize: { max: 20, min: 10 } });
192
+ const result = yield calculateDynamicFontSize({ textSchema, font, input: 'testtesttesttesttest' });
193
+ expect(result).toBe(14.25);
194
+ }));
195
+ it('should return min font size when dynamicFontSizeSetting and long text are provided', () => __awaiter(void 0, void 0, void 0, function* () {
196
+ const textSchema = Object.assign(getTextSchema(), { dynamicFontSize: { max: 20, min: 10 } });
197
+ const result = yield calculateDynamicFontSize({ textSchema, font, input: 'testtesttesttesttesttesttesttesttesttesttest' });
198
+ expect(result).toBe(10);
199
+ }));
200
+ it('should return max font size when dynamicFontSizeSetting and short text are provided', () => __awaiter(void 0, void 0, void 0, function* () {
201
+ const textSchema = Object.assign(getTextSchema(), { dynamicFontSize: { max: 20, min: 10 } });
202
+ const result = yield calculateDynamicFontSize({ textSchema, font, input: 'a' });
203
+ expect(result).toBe(20);
204
+ }));
205
+ });
206
+ describe('calculateDynamicFontSize with Custom font', () => {
207
+ const font = getSampleFont();
208
+ it('should return default font size when dynamicFontSizeSetting is not provided', () => __awaiter(void 0, void 0, void 0, function* () {
209
+ const textSchema = getTextSchema();
210
+ const result = yield calculateDynamicFontSize({ textSchema, font, input: 'あいう' });
211
+ expect(result).toBe(14);
212
+ }));
213
+ it('should return smaller font size when dynamicFontSizeSetting is provided', () => __awaiter(void 0, void 0, void 0, function* () {
214
+ const textSchema = Object.assign(getTextSchema(), { dynamicFontSize: { max: 20, min: 10 } });
215
+ const result = yield calculateDynamicFontSize({ textSchema, font, input: 'あいうあいうあい' });
216
+ expect(result).toBe(16.5);
217
+ }));
218
+ it('should return min font size when dynamicFontSizeSetting and long text are provided', () => __awaiter(void 0, void 0, void 0, function* () {
219
+ const textSchema = Object.assign(getTextSchema(), { dynamicFontSize: { max: 20, min: 10 } });
220
+ const result = yield calculateDynamicFontSize({ textSchema, font, input: 'あいうあいうあいうあいうあいうあいうあいうあいうあいう' });
221
+ expect(result).toBe(10);
222
+ }));
223
+ it('should return max font size when dynamicFontSizeSetting and short text are provided', () => __awaiter(void 0, void 0, void 0, function* () {
224
+ const textSchema = Object.assign(getTextSchema(), { dynamicFontSize: { max: 20, min: 10 } });
225
+ const result = yield calculateDynamicFontSize({ textSchema, font, input: 'あ' });
226
+ expect(result).toBe(20);
227
+ }));
228
+ });
229
+ //# sourceMappingURL=font.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"font.test.js","sourceRoot":"","sources":["../../../__tests__/font.test.ts"],"names":[],"mappings":"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"}