@docmentis/udoc-viewer 0.5.3 → 0.5.6
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/package.json +57 -0
- package/dist/src/UDocClient.d.ts +383 -0
- package/dist/src/UDocClient.d.ts.map +1 -0
- package/dist/src/UDocClient.js +441 -0
- package/dist/src/UDocClient.js.map +1 -0
- package/dist/src/UDocViewer.d.ts +275 -0
- package/dist/src/UDocViewer.d.ts.map +1 -0
- package/dist/src/UDocViewer.js +796 -0
- package/dist/src/UDocViewer.js.map +1 -0
- package/dist/src/fonts.d.ts +29 -0
- package/dist/src/fonts.d.ts.map +1 -0
- package/dist/src/fonts.js +30 -0
- package/dist/src/fonts.js.map +1 -0
- package/dist/src/index.d.ts +9 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +8 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/performance/PerformanceCounter.d.ts +132 -0
- package/dist/src/performance/PerformanceCounter.d.ts.map +1 -0
- package/dist/src/performance/PerformanceCounter.js +129 -0
- package/dist/src/performance/PerformanceCounter.js.map +1 -0
- package/dist/src/performance/index.d.ts +2 -0
- package/dist/src/performance/index.d.ts.map +1 -0
- package/dist/src/performance/index.js +2 -0
- package/dist/src/performance/index.js.map +1 -0
- package/dist/src/ui/framework/component.d.ts +68 -0
- package/dist/src/ui/framework/component.d.ts.map +1 -0
- package/dist/src/ui/framework/component.js +97 -0
- package/dist/src/ui/framework/component.js.map +1 -0
- package/dist/src/ui/framework/dom.d.ts +19 -0
- package/dist/src/ui/framework/dom.d.ts.map +1 -0
- package/dist/src/ui/framework/dom.js +29 -0
- package/dist/src/ui/framework/dom.js.map +1 -0
- package/dist/src/ui/framework/events.d.ts +18 -0
- package/dist/src/ui/framework/events.d.ts.map +1 -0
- package/dist/src/ui/framework/events.js +23 -0
- package/dist/src/ui/framework/events.js.map +1 -0
- package/dist/src/ui/framework/index.d.ts +15 -0
- package/dist/src/ui/framework/index.d.ts.map +1 -0
- package/dist/src/ui/framework/index.js +15 -0
- package/dist/src/ui/framework/index.js.map +1 -0
- package/dist/src/ui/framework/selectors.d.ts +51 -0
- package/dist/src/ui/framework/selectors.d.ts.map +1 -0
- package/dist/src/ui/framework/selectors.js +30 -0
- package/dist/src/ui/framework/selectors.js.map +1 -0
- package/dist/src/ui/framework/store.d.ts +37 -0
- package/dist/src/ui/framework/store.d.ts.map +1 -0
- package/dist/src/ui/framework/store.js +66 -0
- package/dist/src/ui/framework/store.js.map +1 -0
- package/dist/src/ui/viewer/actions.d.ts +132 -0
- package/dist/src/ui/viewer/actions.d.ts.map +1 -0
- package/dist/src/ui/viewer/actions.js +2 -0
- package/dist/src/ui/viewer/actions.js.map +1 -0
- package/dist/src/ui/viewer/annotation/LinkRenderer.d.ts +9 -0
- package/dist/src/ui/viewer/annotation/LinkRenderer.d.ts.map +1 -0
- package/dist/src/ui/viewer/annotation/LinkRenderer.js +17 -0
- package/dist/src/ui/viewer/annotation/LinkRenderer.js.map +1 -0
- package/dist/src/ui/viewer/annotation/MarkupRenderer.d.ts +21 -0
- package/dist/src/ui/viewer/annotation/MarkupRenderer.d.ts.map +1 -0
- package/dist/src/ui/viewer/annotation/MarkupRenderer.js +138 -0
- package/dist/src/ui/viewer/annotation/MarkupRenderer.js.map +1 -0
- package/dist/src/ui/viewer/annotation/ShapeRenderer.d.ts +33 -0
- package/dist/src/ui/viewer/annotation/ShapeRenderer.d.ts.map +1 -0
- package/dist/src/ui/viewer/annotation/ShapeRenderer.js +378 -0
- package/dist/src/ui/viewer/annotation/ShapeRenderer.js.map +1 -0
- package/dist/src/ui/viewer/annotation/TextRenderer.d.ts +23 -0
- package/dist/src/ui/viewer/annotation/TextRenderer.d.ts.map +1 -0
- package/dist/src/ui/viewer/annotation/TextRenderer.js +196 -0
- package/dist/src/ui/viewer/annotation/TextRenderer.js.map +1 -0
- package/dist/src/ui/viewer/annotation/index.d.ts +8 -0
- package/dist/src/ui/viewer/annotation/index.d.ts.map +1 -0
- package/dist/src/ui/viewer/annotation/index.js +8 -0
- package/dist/src/ui/viewer/annotation/index.js.map +1 -0
- package/dist/src/ui/viewer/annotation/render.d.ts +24 -0
- package/dist/src/ui/viewer/annotation/render.d.ts.map +1 -0
- package/dist/src/ui/viewer/annotation/render.js +184 -0
- package/dist/src/ui/viewer/annotation/render.js.map +1 -0
- package/dist/src/ui/viewer/annotation/types.d.ts +239 -0
- package/dist/src/ui/viewer/annotation/types.d.ts.map +1 -0
- package/dist/src/ui/viewer/annotation/types.js +7 -0
- package/dist/src/ui/viewer/annotation/types.js.map +1 -0
- package/dist/src/ui/viewer/annotation/utils.d.ts +37 -0
- package/dist/src/ui/viewer/annotation/utils.d.ts.map +1 -0
- package/dist/src/ui/viewer/annotation/utils.js +82 -0
- package/dist/src/ui/viewer/annotation/utils.js.map +1 -0
- package/dist/src/ui/viewer/components/AnnotationPanel.d.ts +19 -0
- package/dist/src/ui/viewer/components/AnnotationPanel.d.ts.map +1 -0
- package/dist/src/ui/viewer/components/AnnotationPanel.js +284 -0
- package/dist/src/ui/viewer/components/AnnotationPanel.js.map +1 -0
- package/dist/src/ui/viewer/components/FloatingToolbar.d.ts +9 -0
- package/dist/src/ui/viewer/components/FloatingToolbar.d.ts.map +1 -0
- package/dist/src/ui/viewer/components/FloatingToolbar.js +305 -0
- package/dist/src/ui/viewer/components/FloatingToolbar.js.map +1 -0
- package/dist/src/ui/viewer/components/LeftPanel.d.ts +10 -0
- package/dist/src/ui/viewer/components/LeftPanel.d.ts.map +1 -0
- package/dist/src/ui/viewer/components/LeftPanel.js +165 -0
- package/dist/src/ui/viewer/components/LeftPanel.js.map +1 -0
- package/dist/src/ui/viewer/components/LoadingOverlay.d.ts +12 -0
- package/dist/src/ui/viewer/components/LoadingOverlay.d.ts.map +1 -0
- package/dist/src/ui/viewer/components/LoadingOverlay.js +88 -0
- package/dist/src/ui/viewer/components/LoadingOverlay.js.map +1 -0
- package/dist/src/ui/viewer/components/OutlinePanel.d.ts +10 -0
- package/dist/src/ui/viewer/components/OutlinePanel.d.ts.map +1 -0
- package/dist/src/ui/viewer/components/OutlinePanel.js +169 -0
- package/dist/src/ui/viewer/components/OutlinePanel.js.map +1 -0
- package/dist/src/ui/viewer/components/PasswordDialog.d.ts +15 -0
- package/dist/src/ui/viewer/components/PasswordDialog.d.ts.map +1 -0
- package/dist/src/ui/viewer/components/PasswordDialog.js +143 -0
- package/dist/src/ui/viewer/components/PasswordDialog.js.map +1 -0
- package/dist/src/ui/viewer/components/RightPanel.d.ts +9 -0
- package/dist/src/ui/viewer/components/RightPanel.d.ts.map +1 -0
- package/dist/src/ui/viewer/components/RightPanel.js +102 -0
- package/dist/src/ui/viewer/components/RightPanel.js.map +1 -0
- package/dist/src/ui/viewer/components/Spread.d.ts +43 -0
- package/dist/src/ui/viewer/components/Spread.d.ts.map +1 -0
- package/dist/src/ui/viewer/components/Spread.js +345 -0
- package/dist/src/ui/viewer/components/Spread.js.map +1 -0
- package/dist/src/ui/viewer/components/ThumbnailPanel.d.ts +11 -0
- package/dist/src/ui/viewer/components/ThumbnailPanel.d.ts.map +1 -0
- package/dist/src/ui/viewer/components/ThumbnailPanel.js +240 -0
- package/dist/src/ui/viewer/components/ThumbnailPanel.js.map +1 -0
- package/dist/src/ui/viewer/components/Toolbar.d.ts +9 -0
- package/dist/src/ui/viewer/components/Toolbar.d.ts.map +1 -0
- package/dist/src/ui/viewer/components/Toolbar.js +93 -0
- package/dist/src/ui/viewer/components/Toolbar.js.map +1 -0
- package/dist/src/ui/viewer/components/ViewModeMenu.d.ts +9 -0
- package/dist/src/ui/viewer/components/ViewModeMenu.d.ts.map +1 -0
- package/dist/src/ui/viewer/components/ViewModeMenu.js +178 -0
- package/dist/src/ui/viewer/components/ViewModeMenu.js.map +1 -0
- package/dist/src/ui/viewer/components/Viewport.d.ts +10 -0
- package/dist/src/ui/viewer/components/Viewport.d.ts.map +1 -0
- package/dist/src/ui/viewer/components/Viewport.js +1082 -0
- package/dist/src/ui/viewer/components/Viewport.js.map +1 -0
- package/dist/src/ui/viewer/effects.d.ts +8 -0
- package/dist/src/ui/viewer/effects.d.ts.map +1 -0
- package/dist/src/ui/viewer/effects.js +240 -0
- package/dist/src/ui/viewer/effects.js.map +1 -0
- package/dist/src/ui/viewer/icons.d.ts +32 -0
- package/dist/src/ui/viewer/icons.d.ts.map +1 -0
- package/dist/src/ui/viewer/icons.js +44 -0
- package/dist/src/ui/viewer/icons.js.map +1 -0
- package/dist/src/ui/viewer/index.d.ts +6 -0
- package/dist/src/ui/viewer/index.d.ts.map +1 -0
- package/dist/src/ui/viewer/index.js +6 -0
- package/dist/src/ui/viewer/index.js.map +1 -0
- package/dist/src/ui/viewer/layout/index.d.ts +3 -0
- package/dist/src/ui/viewer/layout/index.d.ts.map +1 -0
- package/dist/src/ui/viewer/layout/index.js +3 -0
- package/dist/src/ui/viewer/layout/index.js.map +1 -0
- package/dist/src/ui/viewer/layout/pixelAlign.d.ts +7 -0
- package/dist/src/ui/viewer/layout/pixelAlign.d.ts.map +1 -0
- package/dist/src/ui/viewer/layout/pixelAlign.js +22 -0
- package/dist/src/ui/viewer/layout/pixelAlign.js.map +1 -0
- package/dist/src/ui/viewer/layout/spreadLayout.d.ts +93 -0
- package/dist/src/ui/viewer/layout/spreadLayout.d.ts.map +1 -0
- package/dist/src/ui/viewer/layout/spreadLayout.js +315 -0
- package/dist/src/ui/viewer/layout/spreadLayout.js.map +1 -0
- package/dist/src/ui/viewer/navigation.d.ts +80 -0
- package/dist/src/ui/viewer/navigation.d.ts.map +1 -0
- package/dist/src/ui/viewer/navigation.js +59 -0
- package/dist/src/ui/viewer/navigation.js.map +1 -0
- package/dist/src/ui/viewer/reducer.d.ts +4 -0
- package/dist/src/ui/viewer/reducer.d.ts.map +1 -0
- package/dist/src/ui/viewer/reducer.js +317 -0
- package/dist/src/ui/viewer/reducer.js.map +1 -0
- package/dist/src/ui/viewer/shell.d.ts +34 -0
- package/dist/src/ui/viewer/shell.d.ts.map +1 -0
- package/dist/src/ui/viewer/shell.js +101 -0
- package/dist/src/ui/viewer/shell.js.map +1 -0
- package/dist/src/ui/viewer/state.d.ts +105 -0
- package/dist/src/ui/viewer/state.d.ts.map +1 -0
- package/dist/src/ui/viewer/state.js +65 -0
- package/dist/src/ui/viewer/state.js.map +1 -0
- package/dist/src/ui/viewer/styles-inline.d.ts +2 -0
- package/dist/src/ui/viewer/styles-inline.d.ts.map +1 -0
- package/dist/src/ui/viewer/styles-inline.js +1584 -0
- package/dist/src/ui/viewer/styles-inline.js.map +1 -0
- package/dist/src/ui/viewer/text/index.d.ts +7 -0
- package/dist/src/ui/viewer/text/index.d.ts.map +1 -0
- package/dist/src/ui/viewer/text/index.js +3 -0
- package/dist/src/ui/viewer/text/index.js.map +1 -0
- package/dist/src/ui/viewer/text/render.d.ts +19 -0
- package/dist/src/ui/viewer/text/render.d.ts.map +1 -0
- package/dist/src/ui/viewer/text/render.js +228 -0
- package/dist/src/ui/viewer/text/render.js.map +1 -0
- package/dist/src/ui/viewer/text/selection.d.ts +12 -0
- package/dist/src/ui/viewer/text/selection.d.ts.map +1 -0
- package/dist/src/ui/viewer/text/selection.js +70 -0
- package/dist/src/ui/viewer/text/selection.js.map +1 -0
- package/dist/src/ui/viewer/text/types.d.ts +37 -0
- package/dist/src/ui/viewer/text/types.d.ts.map +1 -0
- package/dist/src/ui/viewer/text/types.js +7 -0
- package/dist/src/ui/viewer/text/types.js.map +1 -0
- package/dist/src/wasm/LICENSE +104 -0
- package/dist/src/wasm/udoc.d.ts +480 -0
- package/dist/src/wasm/udoc.js +1738 -0
- package/dist/src/wasm/udoc_bg.wasm +0 -0
- package/dist/src/wasm/udoc_bg.wasm.d.ts +45 -0
- package/dist/src/worker/WorkerClient.d.ts +335 -0
- package/dist/src/worker/WorkerClient.d.ts.map +1 -0
- package/dist/src/worker/WorkerClient.js +906 -0
- package/dist/src/worker/WorkerClient.js.map +1 -0
- package/dist/src/worker/index.d.ts +4 -0
- package/dist/src/worker/index.d.ts.map +1 -0
- package/dist/src/worker/index.js +2 -0
- package/dist/src/worker/index.js.map +1 -0
- package/dist/src/worker/worker.d.ts +437 -0
- package/dist/src/worker/worker.d.ts.map +1 -0
- package/dist/src/worker/worker.js +237 -0
- package/dist/src/worker/worker.js.map +1 -0
- package/package.json +5 -4
|
@@ -0,0 +1,480 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
|
|
4
|
+
export class UDoc {
|
|
5
|
+
free(): void;
|
|
6
|
+
[Symbol.dispose](): void;
|
|
7
|
+
/**
|
|
8
|
+
* Load an image file and return its ID.
|
|
9
|
+
*
|
|
10
|
+
* Supports various image formats: JPEG, PNG, GIF, BMP, TIFF, WebP, etc.
|
|
11
|
+
* Multi-page TIFF files will create a document with multiple pages.
|
|
12
|
+
*
|
|
13
|
+
* # Arguments
|
|
14
|
+
* * `bytes` - Raw image file data
|
|
15
|
+
*
|
|
16
|
+
* # Returns
|
|
17
|
+
* A unique document ID that can be used to reference this document.
|
|
18
|
+
*/
|
|
19
|
+
load_image(bytes: Uint8Array): string;
|
|
20
|
+
/**
|
|
21
|
+
* Get the page count of a document.
|
|
22
|
+
*/
|
|
23
|
+
page_count(id: string): number;
|
|
24
|
+
/**
|
|
25
|
+
* Get the document outline (bookmarks/table of contents).
|
|
26
|
+
*
|
|
27
|
+
* Returns an array of outline items, where each item has:
|
|
28
|
+
* - `title`: Display text for the item
|
|
29
|
+
* - `destination`: Optional navigation destination with `pageIndex` and display parameters
|
|
30
|
+
* - `children`: Nested child items
|
|
31
|
+
*
|
|
32
|
+
* Returns an empty array if the document has no outline.
|
|
33
|
+
*/
|
|
34
|
+
get_outline(id: string): any;
|
|
35
|
+
/**
|
|
36
|
+
* Check if a feature is enabled by the current license.
|
|
37
|
+
*/
|
|
38
|
+
has_feature(feature: string): boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Get the preferred page layout for two-page viewing modes.
|
|
41
|
+
*
|
|
42
|
+
* Returns one of:
|
|
43
|
+
* - `"default"` - Viewer decides based on document type
|
|
44
|
+
* - `"odd-pages-right"` - Odd pages on right (page 1 alone, then 2|3, 4|5...)
|
|
45
|
+
* - `"odd-pages-left"` - Odd pages on left (1|2, 3|4, 5|6...)
|
|
46
|
+
*/
|
|
47
|
+
page_layout(id: string): string;
|
|
48
|
+
/**
|
|
49
|
+
* Compose new PDF documents by cherry-picking pages from source documents.
|
|
50
|
+
*
|
|
51
|
+
* The original documents remain unchanged.
|
|
52
|
+
*
|
|
53
|
+
* # Arguments
|
|
54
|
+
* * `compositions` - Array of compositions. Each composition is an array of picks.
|
|
55
|
+
* Each pick is `{ doc: docIndex, pages: "0-2,4" }` where `docIndex` is the index
|
|
56
|
+
* in the `doc_ids` array and `pages` is a page range string (0-based).
|
|
57
|
+
* * `doc_ids` - Array of document IDs to use as sources (order matters for doc indices)
|
|
58
|
+
*
|
|
59
|
+
* # Example
|
|
60
|
+
* ```js
|
|
61
|
+
* // Create two documents: first has pages 0-2 from doc A, second has page 0 from A and 1 from B
|
|
62
|
+
* const newDocIds = udoc.pdf_compose(
|
|
63
|
+
* [
|
|
64
|
+
* [{ doc: 0, pages: "0-2" }],
|
|
65
|
+
* [{ doc: 0, pages: "0" }, { doc: 1, pages: "1" }]
|
|
66
|
+
* ],
|
|
67
|
+
* ["doc_0", "doc_1"]
|
|
68
|
+
* );
|
|
69
|
+
* ```
|
|
70
|
+
*
|
|
71
|
+
* # Returns
|
|
72
|
+
* Array of IDs for the newly created documents (one per composition).
|
|
73
|
+
*/
|
|
74
|
+
pdf_compose(compositions: any, doc_ids: any): any;
|
|
75
|
+
/**
|
|
76
|
+
* Set the license key.
|
|
77
|
+
*
|
|
78
|
+
* # Arguments
|
|
79
|
+
* * `license_key` - The license key string
|
|
80
|
+
* * `domain` - The current domain (from window.location.hostname)
|
|
81
|
+
*
|
|
82
|
+
* # Returns
|
|
83
|
+
* License validation result as JSON.
|
|
84
|
+
*/
|
|
85
|
+
set_license(license_key: string, domain: string): any;
|
|
86
|
+
/**
|
|
87
|
+
* Authenticate with a password to unlock an encrypted document.
|
|
88
|
+
*
|
|
89
|
+
* # Arguments
|
|
90
|
+
* * `id` - Document ID
|
|
91
|
+
* * `password` - Password to try
|
|
92
|
+
*
|
|
93
|
+
* # Returns
|
|
94
|
+
* `true` if authentication succeeded, `false` if the password was incorrect.
|
|
95
|
+
*/
|
|
96
|
+
authenticate(id: string, password: string): boolean;
|
|
97
|
+
/**
|
|
98
|
+
* Get all document IDs.
|
|
99
|
+
*/
|
|
100
|
+
document_ids(): string[];
|
|
101
|
+
/**
|
|
102
|
+
* Check if a document with the given ID exists.
|
|
103
|
+
*/
|
|
104
|
+
has_document(id: string): boolean;
|
|
105
|
+
/**
|
|
106
|
+
* Compress a PDF document.
|
|
107
|
+
*
|
|
108
|
+
* Saves the document with full compression options enabled:
|
|
109
|
+
* - Compress stream data using FlateDecode
|
|
110
|
+
* - Pack objects into compressed object streams (PDF 1.5+)
|
|
111
|
+
* - Use compressed xref streams (PDF 1.5+)
|
|
112
|
+
* - Remove unreferenced objects
|
|
113
|
+
*
|
|
114
|
+
* # Arguments
|
|
115
|
+
* * `doc_id` - Document ID to compress
|
|
116
|
+
*
|
|
117
|
+
* # Returns
|
|
118
|
+
* Compressed PDF data as Uint8Array
|
|
119
|
+
*/
|
|
120
|
+
pdf_compress(doc_id: string): Uint8Array;
|
|
121
|
+
/**
|
|
122
|
+
* Get info for all pages in one call.
|
|
123
|
+
*
|
|
124
|
+
* Returns an array of `{width, height, rotation}` objects, one per page.
|
|
125
|
+
* More efficient than calling `page_info` for each page.
|
|
126
|
+
*/
|
|
127
|
+
all_page_info(id: string): any;
|
|
128
|
+
/**
|
|
129
|
+
* Get text content for a specific page (for text selection).
|
|
130
|
+
*
|
|
131
|
+
* Returns an array of text runs, each containing:
|
|
132
|
+
* - `text`: Unicode text string
|
|
133
|
+
* - `glyphs`: Positioned glyphs with character mappings
|
|
134
|
+
* - `fontSize`: Font size in points
|
|
135
|
+
* - `transform`: Combined transform matrix
|
|
136
|
+
*/
|
|
137
|
+
get_page_text(id: string, page_index: number): any;
|
|
138
|
+
/**
|
|
139
|
+
* Register a font from raw bytes.
|
|
140
|
+
*
|
|
141
|
+
* Use this to register external fonts (e.g., fetched from Google Fonts)
|
|
142
|
+
* so they can be used for document rendering.
|
|
143
|
+
*
|
|
144
|
+
* # Arguments
|
|
145
|
+
* * `id` - Document ID
|
|
146
|
+
* * `typeface` - The typeface name (must match what's in the document)
|
|
147
|
+
* * `bold` - Whether this is a bold variant
|
|
148
|
+
* * `italic` - Whether this is an italic variant
|
|
149
|
+
* * `bytes` - Raw font file data (TTF, OTF, WOFF, or WOFF2)
|
|
150
|
+
*
|
|
151
|
+
* # Example (JavaScript)
|
|
152
|
+
* ```js
|
|
153
|
+
* // Get required fonts
|
|
154
|
+
* const fonts = udoc.getRequiredFonts(docId);
|
|
155
|
+
*
|
|
156
|
+
* // Fetch and register each font
|
|
157
|
+
* for (const font of fonts) {
|
|
158
|
+
* const url = `https://fonts.googleapis.com/css2?family=${font.typeface}`;
|
|
159
|
+
* const fontBytes = await fetchFontBytes(url, font.bold, font.italic);
|
|
160
|
+
* udoc.registerFont(docId, font.typeface, font.bold, font.italic, fontBytes);
|
|
161
|
+
* }
|
|
162
|
+
*
|
|
163
|
+
* // Now render with the registered fonts
|
|
164
|
+
* const pixels = udoc.renderPageToRgba(docId, 0, 800, 600);
|
|
165
|
+
* ```
|
|
166
|
+
*/
|
|
167
|
+
registerFont(id: string, typeface: string, bold: boolean, italic: boolean, bytes: Uint8Array): void;
|
|
168
|
+
/**
|
|
169
|
+
* Get current license status.
|
|
170
|
+
*/
|
|
171
|
+
license_status(): any;
|
|
172
|
+
/**
|
|
173
|
+
* Check if a document requires a password to open.
|
|
174
|
+
*
|
|
175
|
+
* Returns `true` if the document is encrypted and requires authentication
|
|
176
|
+
* before pages can be loaded or rendered.
|
|
177
|
+
*/
|
|
178
|
+
needs_password(id: string): boolean;
|
|
179
|
+
/**
|
|
180
|
+
* Decompress a PDF document.
|
|
181
|
+
*
|
|
182
|
+
* Removes all filter encodings from streams, resulting in raw,
|
|
183
|
+
* uncompressed stream data. Useful for debugging or inspection.
|
|
184
|
+
*
|
|
185
|
+
* # Arguments
|
|
186
|
+
* * `doc_id` - Document ID to decompress
|
|
187
|
+
*
|
|
188
|
+
* # Returns
|
|
189
|
+
* Decompressed PDF data as Uint8Array
|
|
190
|
+
*/
|
|
191
|
+
pdf_decompress(doc_id: string): Uint8Array;
|
|
192
|
+
/**
|
|
193
|
+
* Remove a document by ID.
|
|
194
|
+
*
|
|
195
|
+
* Returns true if the document was removed, false if it didn't exist.
|
|
196
|
+
*/
|
|
197
|
+
remove_document(id: string): boolean;
|
|
198
|
+
/**
|
|
199
|
+
* Extract all embedded fonts from a PDF document.
|
|
200
|
+
*
|
|
201
|
+
* # Arguments
|
|
202
|
+
* * `doc_id` - Document ID to extract fonts from
|
|
203
|
+
*
|
|
204
|
+
* # Returns
|
|
205
|
+
* Array of extracted font objects, each with:
|
|
206
|
+
* - `name`: Font name from the resource dictionary
|
|
207
|
+
* - `fontType`: Font type (Type1, TrueType, etc.)
|
|
208
|
+
* - `extension`: File extension (ttf, cff, t1, etc.)
|
|
209
|
+
* - `data`: Raw font data as Uint8Array
|
|
210
|
+
*/
|
|
211
|
+
pdf_extract_fonts(doc_id: string): any;
|
|
212
|
+
/**
|
|
213
|
+
* Get all external fonts required by the document.
|
|
214
|
+
*
|
|
215
|
+
* This scans all text content in loaded pages and returns font descriptors
|
|
216
|
+
* for fonts that are:
|
|
217
|
+
* - Not embedded in the document
|
|
218
|
+
* - Not standard PDF fonts (Helvetica, Times, Courier, etc.)
|
|
219
|
+
*
|
|
220
|
+
* Use this to determine which fonts need to be fetched from external sources
|
|
221
|
+
* (e.g., Google Fonts) before rendering.
|
|
222
|
+
*
|
|
223
|
+
* Note: This only scans pages that have been loaded. Call appropriate loading
|
|
224
|
+
* methods first to ensure the pages you need are scanned.
|
|
225
|
+
*
|
|
226
|
+
* # Arguments
|
|
227
|
+
* * `id` - Document ID
|
|
228
|
+
*
|
|
229
|
+
* # Returns
|
|
230
|
+
* Array of font descriptors: `[{ typeface: "Roboto", bold: false, italic: false }, ...]`
|
|
231
|
+
*
|
|
232
|
+
* # Example (JavaScript)
|
|
233
|
+
* ```js
|
|
234
|
+
* // Load document
|
|
235
|
+
* const docId = udoc.loadPdf(pdfBytes);
|
|
236
|
+
*
|
|
237
|
+
* // Load all pages to scan for fonts
|
|
238
|
+
* const pageCount = udoc.pageCount(docId);
|
|
239
|
+
* for (let i = 0; i < pageCount; i++) {
|
|
240
|
+
* udoc.renderPageToRgba(docId, i, 1, 1); // Minimal render to load page
|
|
241
|
+
* }
|
|
242
|
+
*
|
|
243
|
+
* // Get required fonts
|
|
244
|
+
* const fonts = udoc.getRequiredFonts(docId);
|
|
245
|
+
* // fonts: [{ typeface: "Roboto", bold: false, italic: false }, ...]
|
|
246
|
+
* ```
|
|
247
|
+
*/
|
|
248
|
+
getRequiredFonts(id: string): any;
|
|
249
|
+
/**
|
|
250
|
+
* Extract all embedded images from a PDF document.
|
|
251
|
+
*
|
|
252
|
+
* # Arguments
|
|
253
|
+
* * `doc_id` - Document ID to extract images from
|
|
254
|
+
* * `convert_raw_to_png` - When true, converts raw pixel data to PNG format
|
|
255
|
+
*
|
|
256
|
+
* # Returns
|
|
257
|
+
* Array of extracted image objects, each with:
|
|
258
|
+
* - `name`: Image name from the resource dictionary
|
|
259
|
+
* - `format`: Image format (jpeg, png, jp2, etc.)
|
|
260
|
+
* - `width`: Width in pixels
|
|
261
|
+
* - `height`: Height in pixels
|
|
262
|
+
* - `data`: Raw image data as Uint8Array
|
|
263
|
+
*/
|
|
264
|
+
pdf_extract_images(doc_id: string, convert_raw_to_png: boolean): any;
|
|
265
|
+
/**
|
|
266
|
+
* Render a page to PNG bytes.
|
|
267
|
+
*
|
|
268
|
+
* # Arguments
|
|
269
|
+
* * `id` - Document ID
|
|
270
|
+
* * `page_index` - Zero-based page index
|
|
271
|
+
* * `width` - Output width in pixels
|
|
272
|
+
* * `height` - Output height in pixels
|
|
273
|
+
*
|
|
274
|
+
* # Returns
|
|
275
|
+
* PNG-encoded image data as a byte array.
|
|
276
|
+
*/
|
|
277
|
+
render_page_to_png(id: string, page_index: number, width: number, height: number): Uint8Array;
|
|
278
|
+
/**
|
|
279
|
+
* Enable Google Fonts for a document.
|
|
280
|
+
*
|
|
281
|
+
* When enabled, fonts that are not embedded in the document will be
|
|
282
|
+
* automatically fetched from Google Fonts during rendering.
|
|
283
|
+
*
|
|
284
|
+
* # Arguments
|
|
285
|
+
* * `id` - Document ID
|
|
286
|
+
*
|
|
287
|
+
* # Example (JavaScript)
|
|
288
|
+
* ```js
|
|
289
|
+
* // Enable Google Fonts for the document
|
|
290
|
+
* udoc.enableGoogleFonts(docId);
|
|
291
|
+
*
|
|
292
|
+
* // Now render pages - fonts will be fetched automatically
|
|
293
|
+
* const pixels = udoc.renderPageToRgba(docId, 0, 800, 600);
|
|
294
|
+
* ```
|
|
295
|
+
*/
|
|
296
|
+
enableGoogleFonts(id: string): void;
|
|
297
|
+
/**
|
|
298
|
+
* Get all annotations in the document, grouped by page index.
|
|
299
|
+
*
|
|
300
|
+
* Returns an object mapping page indices (as strings) to arrays of annotations.
|
|
301
|
+
*/
|
|
302
|
+
get_all_annotations(id: string): any;
|
|
303
|
+
/**
|
|
304
|
+
* Check if a font is registered for a document.
|
|
305
|
+
*
|
|
306
|
+
* # Arguments
|
|
307
|
+
* * `id` - Document ID
|
|
308
|
+
* * `typeface` - The typeface name
|
|
309
|
+
* * `bold` - Whether to check for bold variant
|
|
310
|
+
* * `italic` - Whether to check for italic variant
|
|
311
|
+
*
|
|
312
|
+
* # Returns
|
|
313
|
+
* `true` if the font is registered, `false` otherwise.
|
|
314
|
+
*/
|
|
315
|
+
hasRegisteredFont(id: string, typeface: string, bold: boolean, italic: boolean): boolean;
|
|
316
|
+
/**
|
|
317
|
+
* Render a page to raw RGBA pixel data.
|
|
318
|
+
*
|
|
319
|
+
* The returned data is in premultiplied alpha format, suitable for
|
|
320
|
+
* use with `ImageData` and canvas rendering.
|
|
321
|
+
*
|
|
322
|
+
* # Arguments
|
|
323
|
+
* * `id` - Document ID
|
|
324
|
+
* * `page_index` - Zero-based page index
|
|
325
|
+
* * `width` - Output width in pixels
|
|
326
|
+
* * `height` - Output height in pixels
|
|
327
|
+
*
|
|
328
|
+
* # Returns
|
|
329
|
+
* Raw RGBA pixel data (width * height * 4 bytes).
|
|
330
|
+
*/
|
|
331
|
+
render_page_to_rgba(id: string, page_index: number, width: number, height: number): Uint8Array;
|
|
332
|
+
/**
|
|
333
|
+
* Get annotations for a specific page.
|
|
334
|
+
*
|
|
335
|
+
* Returns an array of annotation objects for the given page.
|
|
336
|
+
* Uses per-page loading for efficiency (only loads the requested page).
|
|
337
|
+
*/
|
|
338
|
+
get_page_annotations(id: string, page_index: number): any;
|
|
339
|
+
/**
|
|
340
|
+
* Split a PDF document by its outline (bookmarks) structure.
|
|
341
|
+
*
|
|
342
|
+
* Creates multiple documents, one for each outline section at the specified level.
|
|
343
|
+
*
|
|
344
|
+
* # Arguments
|
|
345
|
+
* * `doc_id` - Document ID to split
|
|
346
|
+
* * `max_level` - Maximum outline level to consider (1 = top level only)
|
|
347
|
+
* * `split_mid_page` - When true, filters page content when sections share a page
|
|
348
|
+
*
|
|
349
|
+
* # Returns
|
|
350
|
+
* Object with:
|
|
351
|
+
* - `documentIds`: Array of IDs for the newly created documents
|
|
352
|
+
* - `sections`: Array of section info objects with `title`, `startPage`, `level`
|
|
353
|
+
*/
|
|
354
|
+
pdf_split_by_outline(doc_id: string, max_level: number, split_mid_page: boolean): any;
|
|
355
|
+
/**
|
|
356
|
+
* Get the number of fonts registered for a document.
|
|
357
|
+
*
|
|
358
|
+
* # Arguments
|
|
359
|
+
* * `id` - Document ID
|
|
360
|
+
*
|
|
361
|
+
* # Returns
|
|
362
|
+
* The number of registered fonts.
|
|
363
|
+
*/
|
|
364
|
+
registeredFontCount(id: string): number;
|
|
365
|
+
/**
|
|
366
|
+
* Create a new document viewer.
|
|
367
|
+
*/
|
|
368
|
+
constructor();
|
|
369
|
+
/**
|
|
370
|
+
* Load a PDF document and return its ID.
|
|
371
|
+
*
|
|
372
|
+
* # Arguments
|
|
373
|
+
* * `bytes` - Raw PDF file data
|
|
374
|
+
*
|
|
375
|
+
* # Returns
|
|
376
|
+
* A unique document ID that can be used to reference this document.
|
|
377
|
+
*/
|
|
378
|
+
load_pdf(bytes: Uint8Array): string;
|
|
379
|
+
/**
|
|
380
|
+
* Get the raw PDF bytes of a document.
|
|
381
|
+
*
|
|
382
|
+
* Returns the original PDF file data for the document.
|
|
383
|
+
* Returns an error if the document is not a PDF.
|
|
384
|
+
*/
|
|
385
|
+
get_bytes(id: string): Uint8Array;
|
|
386
|
+
/**
|
|
387
|
+
* Get a numeric limit from the current license.
|
|
388
|
+
*
|
|
389
|
+
* Returns the limit value if set in the license, otherwise returns the default.
|
|
390
|
+
*/
|
|
391
|
+
get_limit(limit_name: string, _default: bigint): bigint;
|
|
392
|
+
/**
|
|
393
|
+
* Load a PPTX (PowerPoint) document and return its ID.
|
|
394
|
+
*
|
|
395
|
+
* # Arguments
|
|
396
|
+
* * `bytes` - Raw PPTX file data
|
|
397
|
+
*
|
|
398
|
+
* # Returns
|
|
399
|
+
* A unique document ID that can be used to reference this document.
|
|
400
|
+
*/
|
|
401
|
+
load_pptx(bytes: Uint8Array): string;
|
|
402
|
+
/**
|
|
403
|
+
* Get info for a specific page.
|
|
404
|
+
*/
|
|
405
|
+
page_info(id: string, page_index: number): any;
|
|
406
|
+
/**
|
|
407
|
+
* Get the number of documents currently loaded.
|
|
408
|
+
*/
|
|
409
|
+
readonly document_count: number;
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
|
|
413
|
+
|
|
414
|
+
export interface InitOutput {
|
|
415
|
+
readonly memory: WebAssembly.Memory;
|
|
416
|
+
readonly __wbg_udoc_free: (a: number, b: number) => void;
|
|
417
|
+
readonly udoc_all_page_info: (a: number, b: number, c: number, d: number) => void;
|
|
418
|
+
readonly udoc_authenticate: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
|
|
419
|
+
readonly udoc_document_count: (a: number) => number;
|
|
420
|
+
readonly udoc_document_ids: (a: number, b: number) => void;
|
|
421
|
+
readonly udoc_enableGoogleFonts: (a: number, b: number, c: number, d: number) => void;
|
|
422
|
+
readonly udoc_getRequiredFonts: (a: number, b: number, c: number, d: number) => void;
|
|
423
|
+
readonly udoc_get_all_annotations: (a: number, b: number, c: number, d: number) => void;
|
|
424
|
+
readonly udoc_get_bytes: (a: number, b: number, c: number, d: number) => void;
|
|
425
|
+
readonly udoc_get_limit: (a: number, b: number, c: number, d: bigint) => bigint;
|
|
426
|
+
readonly udoc_get_outline: (a: number, b: number, c: number, d: number) => void;
|
|
427
|
+
readonly udoc_get_page_annotations: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
428
|
+
readonly udoc_get_page_text: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
429
|
+
readonly udoc_hasRegisteredFont: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => void;
|
|
430
|
+
readonly udoc_has_document: (a: number, b: number, c: number) => number;
|
|
431
|
+
readonly udoc_has_feature: (a: number, b: number, c: number) => number;
|
|
432
|
+
readonly udoc_license_status: (a: number, b: number) => void;
|
|
433
|
+
readonly udoc_load_image: (a: number, b: number, c: number, d: number) => void;
|
|
434
|
+
readonly udoc_load_pdf: (a: number, b: number, c: number, d: number) => void;
|
|
435
|
+
readonly udoc_load_pptx: (a: number, b: number, c: number, d: number) => void;
|
|
436
|
+
readonly udoc_needs_password: (a: number, b: number, c: number, d: number) => void;
|
|
437
|
+
readonly udoc_new: () => number;
|
|
438
|
+
readonly udoc_page_count: (a: number, b: number, c: number, d: number) => void;
|
|
439
|
+
readonly udoc_page_info: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
440
|
+
readonly udoc_page_layout: (a: number, b: number, c: number, d: number) => void;
|
|
441
|
+
readonly udoc_pdf_compose: (a: number, b: number, c: number, d: number) => void;
|
|
442
|
+
readonly udoc_pdf_compress: (a: number, b: number, c: number, d: number) => void;
|
|
443
|
+
readonly udoc_pdf_decompress: (a: number, b: number, c: number, d: number) => void;
|
|
444
|
+
readonly udoc_pdf_extract_fonts: (a: number, b: number, c: number, d: number) => void;
|
|
445
|
+
readonly udoc_pdf_extract_images: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
446
|
+
readonly udoc_pdf_split_by_outline: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
|
|
447
|
+
readonly udoc_registerFont: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number) => void;
|
|
448
|
+
readonly udoc_registeredFontCount: (a: number, b: number, c: number, d: number) => void;
|
|
449
|
+
readonly udoc_remove_document: (a: number, b: number, c: number) => number;
|
|
450
|
+
readonly udoc_render_page_to_png: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => void;
|
|
451
|
+
readonly udoc_render_page_to_rgba: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => void;
|
|
452
|
+
readonly udoc_set_license: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
|
|
453
|
+
readonly __wbindgen_export: (a: number, b: number) => number;
|
|
454
|
+
readonly __wbindgen_export2: (a: number, b: number, c: number, d: number) => number;
|
|
455
|
+
readonly __wbindgen_export3: (a: number) => void;
|
|
456
|
+
readonly __wbindgen_export4: (a: number, b: number, c: number) => void;
|
|
457
|
+
readonly __wbindgen_add_to_stack_pointer: (a: number) => number;
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
export type SyncInitInput = BufferSource | WebAssembly.Module;
|
|
461
|
+
|
|
462
|
+
/**
|
|
463
|
+
* Instantiates the given `module`, which can either be bytes or
|
|
464
|
+
* a precompiled `WebAssembly.Module`.
|
|
465
|
+
*
|
|
466
|
+
* @param {{ module: SyncInitInput }} module - Passing `SyncInitInput` directly is deprecated.
|
|
467
|
+
*
|
|
468
|
+
* @returns {InitOutput}
|
|
469
|
+
*/
|
|
470
|
+
export function initSync(module: { module: SyncInitInput } | SyncInitInput): InitOutput;
|
|
471
|
+
|
|
472
|
+
/**
|
|
473
|
+
* If `module_or_path` is {RequestInfo} or {URL}, makes a request and
|
|
474
|
+
* for everything else, calls `WebAssembly.instantiate` directly.
|
|
475
|
+
*
|
|
476
|
+
* @param {{ module_or_path: InitInput | Promise<InitInput> }} module_or_path - Passing `InitInput` directly is deprecated.
|
|
477
|
+
*
|
|
478
|
+
* @returns {Promise<InitOutput>}
|
|
479
|
+
*/
|
|
480
|
+
export default function __wbg_init (module_or_path?: { module_or_path: InitInput | Promise<InitInput> } | InitInput | Promise<InitInput>): Promise<InitOutput>;
|