pdf-parser.js 5.2.14 → 5.2.15
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.
- package/dist/cff-bounds.cjs +3 -7
- package/dist/cff-bounds.js +3 -7
- package/package.json +1 -1
package/dist/cff-bounds.cjs
CHANGED
|
@@ -12,7 +12,6 @@ const CS_OPERAND_SMALL_LAST = 246;
|
|
|
12
12
|
const CS_OPERAND_MEDIUM_FIRST = 247;
|
|
13
13
|
const CS_OPERAND_MEDIUM_LAST = 250;
|
|
14
14
|
const CS_OPERAND_NEGATIVE_MEDIUM_FIRST = 251;
|
|
15
|
-
const CS_OPERAND_NEGATIVE_MEDIUM_LAST = 254;
|
|
16
15
|
const CS_OPERAND_SMALL_BIAS = 139;
|
|
17
16
|
const CS_OPERAND_MEDIUM_BIAS = 108;
|
|
18
17
|
const CS_OPERAND_MEDIUM_FIRST_BYTE_BIAS = 247;
|
|
@@ -43,7 +42,6 @@ const OP_HHCURVETO = 27;
|
|
|
43
42
|
const OP_CALLGSUBR = 29;
|
|
44
43
|
const OP_VHCURVETO = 30;
|
|
45
44
|
const OP_HVCURVETO = 31;
|
|
46
|
-
const CHARSTRING_OPERATOR_LIMIT = 31;
|
|
47
45
|
const ESC_HFLEX = 34;
|
|
48
46
|
const ESC_FLEX = 35;
|
|
49
47
|
const ESC_HFLEX1 = 36;
|
|
@@ -160,7 +158,7 @@ function readOperand(code, offset) {
|
|
|
160
158
|
endOffset: offset + 2
|
|
161
159
|
};
|
|
162
160
|
}
|
|
163
|
-
if (b0 >= CS_OPERAND_NEGATIVE_MEDIUM_FIRST
|
|
161
|
+
if (b0 >= CS_OPERAND_NEGATIVE_MEDIUM_FIRST) {
|
|
164
162
|
if (!require_sfnt.hasBytes(code, offset + 1, 1)) return;
|
|
165
163
|
return {
|
|
166
164
|
value: -(b0 - CS_OPERAND_NEGATIVE_MEDIUM_FIRST_BYTE_BIAS) * BYTE_RADIX - require_sfnt.u8(code, offset + 1) - CS_OPERAND_MEDIUM_BIAS,
|
|
@@ -183,7 +181,6 @@ function execute(code, state, context, depth) {
|
|
|
183
181
|
i = operand.endOffset;
|
|
184
182
|
continue;
|
|
185
183
|
}
|
|
186
|
-
if (b0 > CHARSTRING_OPERATOR_LIMIT) return false;
|
|
187
184
|
i += 1;
|
|
188
185
|
switch (b0) {
|
|
189
186
|
case OP_HSTEM:
|
|
@@ -300,7 +297,6 @@ function execute(code, state, context, depth) {
|
|
|
300
297
|
}
|
|
301
298
|
return stack.length < ENDCHAR_SEAC_ARG_COUNT;
|
|
302
299
|
case OP_ESCAPE: {
|
|
303
|
-
if (i >= code.length) return false;
|
|
304
300
|
const b1 = code[i];
|
|
305
301
|
i += 1;
|
|
306
302
|
if (!executeEscaped(b1, state)) return false;
|
|
@@ -356,10 +352,10 @@ function executeEscaped(operator, state) {
|
|
|
356
352
|
return false;
|
|
357
353
|
}
|
|
358
354
|
function readPrivateSubrs(bytes, privateOperands) {
|
|
359
|
-
if (privateOperands === void 0
|
|
355
|
+
if (privateOperands === void 0) return;
|
|
360
356
|
const size = privateOperands[0];
|
|
361
357
|
const offset = privateOperands[1];
|
|
362
|
-
if (!
|
|
358
|
+
if (!require_sfnt.hasBytes(bytes, offset, size)) return;
|
|
363
359
|
const subrsOffset = require_cff.parseCffDict(bytes.subarray(offset, offset + size))?.get(19)?.[0];
|
|
364
360
|
if (subrsOffset === void 0 || !Number.isInteger(subrsOffset)) return;
|
|
365
361
|
return require_cff.readCffIndex(bytes, offset + subrsOffset);
|
package/dist/cff-bounds.js
CHANGED
|
@@ -11,7 +11,6 @@ const CS_OPERAND_SMALL_LAST = 246;
|
|
|
11
11
|
const CS_OPERAND_MEDIUM_FIRST = 247;
|
|
12
12
|
const CS_OPERAND_MEDIUM_LAST = 250;
|
|
13
13
|
const CS_OPERAND_NEGATIVE_MEDIUM_FIRST = 251;
|
|
14
|
-
const CS_OPERAND_NEGATIVE_MEDIUM_LAST = 254;
|
|
15
14
|
const CS_OPERAND_SMALL_BIAS = 139;
|
|
16
15
|
const CS_OPERAND_MEDIUM_BIAS = 108;
|
|
17
16
|
const CS_OPERAND_MEDIUM_FIRST_BYTE_BIAS = 247;
|
|
@@ -42,7 +41,6 @@ const OP_HHCURVETO = 27;
|
|
|
42
41
|
const OP_CALLGSUBR = 29;
|
|
43
42
|
const OP_VHCURVETO = 30;
|
|
44
43
|
const OP_HVCURVETO = 31;
|
|
45
|
-
const CHARSTRING_OPERATOR_LIMIT = 31;
|
|
46
44
|
const ESC_HFLEX = 34;
|
|
47
45
|
const ESC_FLEX = 35;
|
|
48
46
|
const ESC_HFLEX1 = 36;
|
|
@@ -159,7 +157,7 @@ function readOperand(code, offset) {
|
|
|
159
157
|
endOffset: offset + 2
|
|
160
158
|
};
|
|
161
159
|
}
|
|
162
|
-
if (b0 >= CS_OPERAND_NEGATIVE_MEDIUM_FIRST
|
|
160
|
+
if (b0 >= CS_OPERAND_NEGATIVE_MEDIUM_FIRST) {
|
|
163
161
|
if (!hasBytes(code, offset + 1, 1)) return;
|
|
164
162
|
return {
|
|
165
163
|
value: -(b0 - CS_OPERAND_NEGATIVE_MEDIUM_FIRST_BYTE_BIAS) * BYTE_RADIX - u8(code, offset + 1) - CS_OPERAND_MEDIUM_BIAS,
|
|
@@ -182,7 +180,6 @@ function execute(code, state, context, depth) {
|
|
|
182
180
|
i = operand.endOffset;
|
|
183
181
|
continue;
|
|
184
182
|
}
|
|
185
|
-
if (b0 > CHARSTRING_OPERATOR_LIMIT) return false;
|
|
186
183
|
i += 1;
|
|
187
184
|
switch (b0) {
|
|
188
185
|
case OP_HSTEM:
|
|
@@ -299,7 +296,6 @@ function execute(code, state, context, depth) {
|
|
|
299
296
|
}
|
|
300
297
|
return stack.length < ENDCHAR_SEAC_ARG_COUNT;
|
|
301
298
|
case OP_ESCAPE: {
|
|
302
|
-
if (i >= code.length) return false;
|
|
303
299
|
const b1 = code[i];
|
|
304
300
|
i += 1;
|
|
305
301
|
if (!executeEscaped(b1, state)) return false;
|
|
@@ -355,10 +351,10 @@ function executeEscaped(operator, state) {
|
|
|
355
351
|
return false;
|
|
356
352
|
}
|
|
357
353
|
function readPrivateSubrs(bytes, privateOperands) {
|
|
358
|
-
if (privateOperands === void 0
|
|
354
|
+
if (privateOperands === void 0) return;
|
|
359
355
|
const size = privateOperands[0];
|
|
360
356
|
const offset = privateOperands[1];
|
|
361
|
-
if (!
|
|
357
|
+
if (!hasBytes(bytes, offset, size)) return;
|
|
362
358
|
const subrsOffset = parseCffDict(bytes.subarray(offset, offset + size))?.get(19)?.[0];
|
|
363
359
|
if (subrsOffset === void 0 || !Number.isInteger(subrsOffset)) return;
|
|
364
360
|
return readCffIndex(bytes, offset + subrsOffset);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pdf-parser.js",
|
|
3
|
-
"version": "5.2.
|
|
3
|
+
"version": "5.2.15",
|
|
4
4
|
"description": "Hand-written, dependency-minimal PDF codec: parses arbitrary real-world PDFs and generates new ones, built on its own codec-owned LayoutDocument item model and Zod 4 codecs.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|