unpdf 1.8.1 → 1.9.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.
- package/README.md +60 -145
- package/dist/index.cjs +17 -30
- package/dist/index.d.cts +20 -32
- package/dist/index.d.mts +20 -32
- package/dist/index.mjs +17 -30
- package/dist/pdfjs.mjs +37 -37
- package/dist/types/external/qcms/qcms.d.ts +11 -7
- package/dist/types/external/qcms/qcms_utils.d.ts +1 -6
- package/dist/types/src/core/base_stream.d.ts +8 -1
- package/dist/types/src/core/catalog.d.ts +12 -12
- package/dist/types/src/core/colorspace.d.ts +6 -15
- package/dist/types/src/core/core_utils.d.ts +18 -14
- package/dist/types/src/core/crypto.d.ts +0 -1
- package/dist/types/src/core/file_spec.d.ts +4 -9
- package/dist/types/src/core/icc_colorspace.d.ts +0 -1
- package/dist/types/src/core/image_resizer.d.ts +24 -0
- package/dist/types/src/core/image_utils.d.ts +4 -4
- package/dist/types/src/core/jpeg_stream.d.ts +1 -1
- package/dist/types/src/core/jpg.d.ts +9 -13
- package/dist/types/src/core/parser.d.ts +0 -2
- package/dist/types/src/core/pattern.d.ts +0 -2
- package/dist/types/src/core/primitives.d.ts +30 -16
- package/dist/types/src/core/sasl_prep.d.ts +1 -0
- package/dist/types/src/core/sound.d.ts +39 -0
- package/dist/types/src/core/string_utils.d.ts +1 -1
- package/dist/types/src/core/struct_tree.d.ts +3 -3
- package/dist/types/src/core/xml_parser.d.ts +1 -2
- package/dist/types/src/core/xref.d.ts +2 -15
- package/dist/types/src/display/annotation_layer.d.ts +9 -20
- package/dist/types/src/display/annotation_storage.d.ts +7 -7
- package/dist/types/src/display/api.d.ts +155 -108
- package/dist/types/src/display/canvas.d.ts +2 -1
- package/dist/types/src/display/canvas_dependency_tracker.d.ts +8 -3
- package/dist/types/src/display/content_disposition.d.ts +0 -1
- package/dist/types/src/display/display_utils.d.ts +2 -2
- package/dist/types/src/display/draw_layer.d.ts +2 -6
- package/dist/types/src/display/editor/annotation_editor_layer.d.ts +18 -19
- package/dist/types/src/display/editor/color_picker.d.ts +1 -1
- package/dist/types/src/display/editor/comment.d.ts +1 -1
- package/dist/types/src/display/editor/draw.d.ts +78 -27
- package/dist/types/src/display/editor/drawers/freedraw.d.ts +11 -9
- package/dist/types/src/display/editor/drawers/highlight.d.ts +99 -15
- package/dist/types/src/display/editor/drawers/inkdraw.d.ts +7 -2
- package/dist/types/src/display/editor/drawers/outline.d.ts +65 -2
- package/dist/types/src/display/editor/editor.d.ts +24 -22
- package/dist/types/src/display/editor/freetext.d.ts +1 -1
- package/dist/types/src/display/editor/highlight.d.ts +44 -35
- package/dist/types/src/display/editor/ink.d.ts +7 -2
- package/dist/types/src/display/editor/stamp.d.ts +1 -1
- package/dist/types/src/display/editor/tools.d.ts +21 -19
- package/dist/types/src/display/filter_factory.d.ts +1 -3
- package/dist/types/src/display/font_loader.d.ts +1 -15
- package/dist/types/src/display/network_utils.d.ts +1 -0
- package/dist/types/src/display/obj_bin_transform_display.d.ts +25 -38
- package/dist/types/src/display/page_viewport.d.ts +5 -5
- package/dist/types/src/display/pages_mapper.d.ts +10 -4
- package/dist/types/src/display/pattern_helper.d.ts +4 -3
- package/dist/types/src/display/pdf_objects.d.ts +1 -3
- package/dist/types/src/display/text_layer.d.ts +2 -0
- package/dist/types/src/display/touch_manager.d.ts +46 -9
- package/dist/types/src/display/worker_options.d.ts +2 -2
- package/dist/types/src/display/xfa_layer.d.ts +7 -12
- package/dist/types/src/display/xfa_text.d.ts +2 -5
- package/dist/types/src/pdf.d.ts +2 -1
- package/dist/types/src/shared/base_pdf_stream.d.ts +6 -7
- package/dist/types/src/shared/css_utils.d.ts +8 -0
- package/dist/types/src/shared/message_handler.d.ts +2 -11
- package/dist/types/src/shared/obj_bin_transform_utils.d.ts +4 -3
- package/dist/types/src/shared/util.d.ts +4 -6
- package/dist/types/web/annotation_editor_layer_builder.d.ts +5 -3
- package/dist/types/web/annotation_layer_builder.d.ts +8 -12
- package/dist/types/web/draw_layer_builder.d.ts +7 -9
- package/dist/types/web/event_utils.d.ts +12 -13
- package/dist/types/web/genericl10n.d.ts +2 -2
- package/dist/types/web/l10n.d.ts +1 -1
- package/dist/types/web/pdf_find_controller.d.ts +5 -6
- package/dist/types/web/pdf_find_utils.d.ts +8 -14
- package/dist/types/web/pdf_history.d.ts +1 -1
- package/dist/types/web/pdf_link_service.d.ts +5 -7
- package/dist/types/web/pdf_page_view.d.ts +3 -3
- package/dist/types/web/pdf_rendering_queue.d.ts +4 -5
- package/dist/types/web/pdf_scripting_manager.d.ts +4 -4
- package/dist/types/web/pdf_thumbnail_view.d.ts +2 -2
- package/dist/types/web/pdf_thumbnail_viewer.d.ts +14 -15
- package/dist/types/web/pdf_viewer.d.ts +36 -16
- package/dist/types/web/renderable_view.d.ts +1 -1
- package/dist/types/web/sidebar.d.ts +3 -3
- package/dist/types/web/struct_tree_layer_builder.d.ts +20 -6
- package/dist/types/web/text_accessibility.d.ts +4 -2
- package/dist/types/web/text_highlighter.d.ts +1 -2
- package/dist/types/web/text_layer_builder.d.ts +5 -5
- package/dist/types/web/ui_utils.d.ts +8 -13
- package/dist/types/web/xfa_layer_builder.d.ts +7 -7
- package/package.json +12 -11
package/dist/index.mjs
CHANGED
|
@@ -52,7 +52,7 @@ let resolvedModule;
|
|
|
52
52
|
const isNode = globalThis.process?.release?.name === "node";
|
|
53
53
|
const isBrowser = typeof window !== "undefined";
|
|
54
54
|
/**
|
|
55
|
-
*
|
|
55
|
+
* Creates a `PDFDocumentProxy` from binary PDF data.
|
|
56
56
|
*
|
|
57
57
|
* Applies the following defaults:
|
|
58
58
|
* - `useSystemFonts: true`
|
|
@@ -208,18 +208,6 @@ function injectCanvasConstructors() {
|
|
|
208
208
|
/**
|
|
209
209
|
* Extracts images from a specific page of a PDF document, including necessary metadata,
|
|
210
210
|
* such as width, height, and calculated color channels.
|
|
211
|
-
*
|
|
212
|
-
* @example
|
|
213
|
-
* const imagesData = await extractImages(pdf, pageNum)
|
|
214
|
-
*
|
|
215
|
-
* for (const imgData of imagesData) {
|
|
216
|
-
* const imageIndex = totalImagesProcessed + 1
|
|
217
|
-
* await sharp(imgData.data, {
|
|
218
|
-
* raw: { width: imgData.width, height: imgData.height, channels: imgData.channels }
|
|
219
|
-
* })
|
|
220
|
-
* .png()
|
|
221
|
-
* .toFile(`${imageIndex}.png`)
|
|
222
|
-
* }
|
|
223
211
|
*/
|
|
224
212
|
async function extractImages$1(data, pageNumber) {
|
|
225
213
|
return await withDocument(data, async (pdf) => {
|
|
@@ -326,23 +314,23 @@ const XMP_DATE_PROPERTIES = [
|
|
|
326
314
|
async function getMeta$1(data, options = {}) {
|
|
327
315
|
return await withDocument(data, async (pdf) => {
|
|
328
316
|
const meta = await pdf.getMetadata();
|
|
329
|
-
const info = meta
|
|
317
|
+
const info = { ...meta.info };
|
|
318
|
+
let metadata = meta.metadata;
|
|
330
319
|
if (options.parseDates) {
|
|
331
320
|
const { PDFDateString } = await getResolvedPDFJS();
|
|
332
|
-
if (info
|
|
333
|
-
if (info
|
|
334
|
-
if (
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
};
|
|
340
|
-
|
|
341
|
-
} });
|
|
321
|
+
if (info.CreationDate) info.CreationDate = PDFDateString.toDateObject(info.CreationDate);
|
|
322
|
+
if (info.ModDate) info.ModDate = PDFDateString.toDateObject(info.ModDate);
|
|
323
|
+
if (metadata) {
|
|
324
|
+
const Metadata = metadata.constructor;
|
|
325
|
+
metadata = new Metadata({
|
|
326
|
+
parsedData: new Map(Array.from(metadata, ([name, value]) => [name, XMP_DATE_PROPERTIES.includes(name) && value ? parseISODateString(value) : value])),
|
|
327
|
+
rawData: metadata.getRaw()
|
|
328
|
+
});
|
|
329
|
+
}
|
|
342
330
|
}
|
|
343
331
|
return {
|
|
344
332
|
info,
|
|
345
|
-
metadata:
|
|
333
|
+
metadata: metadata || {}
|
|
346
334
|
};
|
|
347
335
|
});
|
|
348
336
|
}
|
|
@@ -403,15 +391,14 @@ function normalizeMergedText(texts) {
|
|
|
403
391
|
//#endregion
|
|
404
392
|
//#region src/config.ts
|
|
405
393
|
/**
|
|
406
|
-
*
|
|
407
|
-
*
|
|
408
|
-
* provide a custom resolver function.
|
|
394
|
+
* Sets the PDF.js build every other method uses – call it before any of them.
|
|
395
|
+
* Without it, the serverless build is used.
|
|
409
396
|
*
|
|
410
397
|
* @example
|
|
411
|
-
* //
|
|
398
|
+
* // In Node.js, the legacy build of `pdfjs-dist` (install it first)
|
|
412
399
|
* import { definePDFJSModule } from 'unpdf'
|
|
413
400
|
*
|
|
414
|
-
* await definePDFJSModule(() => import('pdfjs-dist'))
|
|
401
|
+
* await definePDFJSModule(() => import('pdfjs-dist/legacy/build/pdf.mjs'))
|
|
415
402
|
*/
|
|
416
403
|
async function definePDFJSModule(pdfjs) {
|
|
417
404
|
await resolvePDFJSImport(pdfjs, { reload: true });
|