pdf-oxide-wasm 0.3.47 → 0.3.48

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.
@@ -1011,6 +1011,18 @@ export class WasmPdfDocument {
1011
1011
  * @throws Error if the PDF is invalid or cannot be parsed
1012
1012
  */
1013
1013
  constructor(data: Uint8Array, password?: string | null);
1014
+ /**
1015
+ * Open a PDF from DOCX bytes.
1016
+ */
1017
+ static openFromDocxBytes(data: Uint8Array): WasmPdfDocument;
1018
+ /**
1019
+ * Open a PDF from PPTX bytes.
1020
+ */
1021
+ static openFromPptxBytes(data: Uint8Array): WasmPdfDocument;
1022
+ /**
1023
+ * Open a PDF from XLSX bytes.
1024
+ */
1025
+ static openFromXlsxBytes(data: Uint8Array): WasmPdfDocument;
1014
1026
  /**
1015
1027
  * Get the number of pages in the document.
1016
1028
  */
@@ -1185,6 +1197,10 @@ export class WasmPdfDocument {
1185
1197
  * Signature surfaces.
1186
1198
  */
1187
1199
  signatures(): WasmSignature[];
1200
+ /**
1201
+ * Convert the entire PDF to DOCX bytes (Uint8Array).
1202
+ */
1203
+ toDocxBytes(): Uint8Array;
1188
1204
  /**
1189
1205
  * Convert a single page to HTML.
1190
1206
  *
@@ -1217,6 +1233,14 @@ export class WasmPdfDocument {
1217
1233
  * Convert all pages to plain text.
1218
1234
  */
1219
1235
  toPlainTextAll(): string;
1236
+ /**
1237
+ * Convert the entire PDF to PPTX bytes (Uint8Array).
1238
+ */
1239
+ toPptxBytes(): Uint8Array;
1240
+ /**
1241
+ * Convert the entire PDF to XLSX bytes (Uint8Array).
1242
+ */
1243
+ toXlsxBytes(): Uint8Array;
1220
1244
  /**
1221
1245
  * Validate PDF/A compliance. Level: "1b", "2b", etc.
1222
1246
  */
@@ -2798,6 +2798,12 @@ if (Symbol.dispose) WasmPdf.prototype[Symbol.dispose] = WasmPdf.prototype.free;
2798
2798
  * Call `.free()` when done to release memory.
2799
2799
  */
2800
2800
  export class WasmPdfDocument {
2801
+ static __wrap(ptr) {
2802
+ const obj = Object.create(WasmPdfDocument.prototype);
2803
+ obj.__wbg_ptr = ptr;
2804
+ WasmPdfDocumentFinalization.register(obj, obj.__wbg_ptr, obj);
2805
+ return obj;
2806
+ }
2801
2807
  __destroy_into_raw() {
2802
2808
  const ptr = this.__wbg_ptr;
2803
2809
  this.__wbg_ptr = 0;
@@ -3897,6 +3903,72 @@ export class WasmPdfDocument {
3897
3903
  wasm.__wbindgen_add_to_stack_pointer(16);
3898
3904
  }
3899
3905
  }
3906
+ /**
3907
+ * Open a PDF from DOCX bytes.
3908
+ * @param {Uint8Array} data
3909
+ * @returns {WasmPdfDocument}
3910
+ */
3911
+ static openFromDocxBytes(data) {
3912
+ try {
3913
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
3914
+ const ptr0 = passArray8ToWasm0(data, wasm.__wbindgen_export);
3915
+ const len0 = WASM_VECTOR_LEN;
3916
+ wasm.wasmpdfdocument_openFromDocxBytes(retptr, ptr0, len0);
3917
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
3918
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
3919
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
3920
+ if (r2) {
3921
+ throw takeObject(r1);
3922
+ }
3923
+ return WasmPdfDocument.__wrap(r0);
3924
+ } finally {
3925
+ wasm.__wbindgen_add_to_stack_pointer(16);
3926
+ }
3927
+ }
3928
+ /**
3929
+ * Open a PDF from PPTX bytes.
3930
+ * @param {Uint8Array} data
3931
+ * @returns {WasmPdfDocument}
3932
+ */
3933
+ static openFromPptxBytes(data) {
3934
+ try {
3935
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
3936
+ const ptr0 = passArray8ToWasm0(data, wasm.__wbindgen_export);
3937
+ const len0 = WASM_VECTOR_LEN;
3938
+ wasm.wasmpdfdocument_openFromPptxBytes(retptr, ptr0, len0);
3939
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
3940
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
3941
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
3942
+ if (r2) {
3943
+ throw takeObject(r1);
3944
+ }
3945
+ return WasmPdfDocument.__wrap(r0);
3946
+ } finally {
3947
+ wasm.__wbindgen_add_to_stack_pointer(16);
3948
+ }
3949
+ }
3950
+ /**
3951
+ * Open a PDF from XLSX bytes.
3952
+ * @param {Uint8Array} data
3953
+ * @returns {WasmPdfDocument}
3954
+ */
3955
+ static openFromXlsxBytes(data) {
3956
+ try {
3957
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
3958
+ const ptr0 = passArray8ToWasm0(data, wasm.__wbindgen_export);
3959
+ const len0 = WASM_VECTOR_LEN;
3960
+ wasm.wasmpdfdocument_openFromXlsxBytes(retptr, ptr0, len0);
3961
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
3962
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
3963
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
3964
+ if (r2) {
3965
+ throw takeObject(r1);
3966
+ }
3967
+ return WasmPdfDocument.__wrap(r0);
3968
+ } finally {
3969
+ wasm.__wbindgen_add_to_stack_pointer(16);
3970
+ }
3971
+ }
3900
3972
  /**
3901
3973
  * Get the number of pages in the document.
3902
3974
  * @returns {number}
@@ -4606,6 +4678,28 @@ export class WasmPdfDocument {
4606
4678
  wasm.__wbindgen_add_to_stack_pointer(16);
4607
4679
  }
4608
4680
  }
4681
+ /**
4682
+ * Convert the entire PDF to DOCX bytes (Uint8Array).
4683
+ * @returns {Uint8Array}
4684
+ */
4685
+ toDocxBytes() {
4686
+ try {
4687
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
4688
+ wasm.wasmpdfdocument_toDocxBytes(retptr, this.__wbg_ptr);
4689
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
4690
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
4691
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
4692
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
4693
+ if (r3) {
4694
+ throw takeObject(r2);
4695
+ }
4696
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
4697
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
4698
+ return v1;
4699
+ } finally {
4700
+ wasm.__wbindgen_add_to_stack_pointer(16);
4701
+ }
4702
+ }
4609
4703
  /**
4610
4704
  * Convert a single page to HTML.
4611
4705
  *
@@ -4797,6 +4891,50 @@ export class WasmPdfDocument {
4797
4891
  wasm.__wbindgen_export4(deferred2_0, deferred2_1, 1);
4798
4892
  }
4799
4893
  }
4894
+ /**
4895
+ * Convert the entire PDF to PPTX bytes (Uint8Array).
4896
+ * @returns {Uint8Array}
4897
+ */
4898
+ toPptxBytes() {
4899
+ try {
4900
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
4901
+ wasm.wasmpdfdocument_toPptxBytes(retptr, this.__wbg_ptr);
4902
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
4903
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
4904
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
4905
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
4906
+ if (r3) {
4907
+ throw takeObject(r2);
4908
+ }
4909
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
4910
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
4911
+ return v1;
4912
+ } finally {
4913
+ wasm.__wbindgen_add_to_stack_pointer(16);
4914
+ }
4915
+ }
4916
+ /**
4917
+ * Convert the entire PDF to XLSX bytes (Uint8Array).
4918
+ * @returns {Uint8Array}
4919
+ */
4920
+ toXlsxBytes() {
4921
+ try {
4922
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
4923
+ wasm.wasmpdfdocument_toXlsxBytes(retptr, this.__wbg_ptr);
4924
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
4925
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
4926
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
4927
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
4928
+ if (r3) {
4929
+ throw takeObject(r2);
4930
+ }
4931
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
4932
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
4933
+ return v1;
4934
+ } finally {
4935
+ wasm.__wbindgen_add_to_stack_pointer(16);
4936
+ }
4937
+ }
4800
4938
  /**
4801
4939
  * Validate PDF/A compliance. Level: "1b", "2b", etc.
4802
4940
  * @param {string} level
Binary file
@@ -184,6 +184,9 @@ export const wasmpdfdocument_hasXfa: (a: number, b: number) => void;
184
184
  export const wasmpdfdocument_mergeFrom: (a: number, b: number, c: number, d: number) => void;
185
185
  export const wasmpdfdocument_movePage: (a: number, b: number, c: number, d: number) => void;
186
186
  export const wasmpdfdocument_new: (a: number, b: number, c: number, d: number, e: number) => void;
187
+ export const wasmpdfdocument_openFromDocxBytes: (a: number, b: number, c: number) => void;
188
+ export const wasmpdfdocument_openFromPptxBytes: (a: number, b: number, c: number) => void;
189
+ export const wasmpdfdocument_openFromXlsxBytes: (a: number, b: number, c: number) => void;
187
190
  export const wasmpdfdocument_pageCount: (a: number, b: number) => void;
188
191
  export const wasmpdfdocument_pageCropBox: (a: number, b: number, c: number) => void;
189
192
  export const wasmpdfdocument_pageImages: (a: number, b: number, c: number) => void;
@@ -214,12 +217,15 @@ export const wasmpdfdocument_setSubject: (a: number, b: number, c: number, d: nu
214
217
  export const wasmpdfdocument_setTitle: (a: number, b: number, c: number, d: number) => void;
215
218
  export const wasmpdfdocument_signatureCount: (a: number, b: number) => void;
216
219
  export const wasmpdfdocument_signatures: (a: number, b: number) => void;
220
+ export const wasmpdfdocument_toDocxBytes: (a: number, b: number) => void;
217
221
  export const wasmpdfdocument_toHtml: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
218
222
  export const wasmpdfdocument_toHtmlAll: (a: number, b: number, c: number, d: number, e: number) => void;
219
223
  export const wasmpdfdocument_toMarkdown: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
220
224
  export const wasmpdfdocument_toMarkdownAll: (a: number, b: number, c: number, d: number, e: number) => void;
221
225
  export const wasmpdfdocument_toPlainText: (a: number, b: number, c: number) => void;
222
226
  export const wasmpdfdocument_toPlainTextAll: (a: number, b: number) => void;
227
+ export const wasmpdfdocument_toPptxBytes: (a: number, b: number) => void;
228
+ export const wasmpdfdocument_toXlsxBytes: (a: number, b: number) => void;
223
229
  export const wasmpdfdocument_validatePdfA: (a: number, b: number, c: number, d: number) => void;
224
230
  export const wasmpdfdocument_validatePdfUa: (a: number, b: number, c: number, d: number) => void;
225
231
  export const wasmpdfdocument_validatePdfX: (a: number, b: number, c: number, d: number) => void;
@@ -1011,6 +1011,18 @@ export class WasmPdfDocument {
1011
1011
  * @throws Error if the PDF is invalid or cannot be parsed
1012
1012
  */
1013
1013
  constructor(data: Uint8Array, password?: string | null);
1014
+ /**
1015
+ * Open a PDF from DOCX bytes.
1016
+ */
1017
+ static openFromDocxBytes(data: Uint8Array): WasmPdfDocument;
1018
+ /**
1019
+ * Open a PDF from PPTX bytes.
1020
+ */
1021
+ static openFromPptxBytes(data: Uint8Array): WasmPdfDocument;
1022
+ /**
1023
+ * Open a PDF from XLSX bytes.
1024
+ */
1025
+ static openFromXlsxBytes(data: Uint8Array): WasmPdfDocument;
1014
1026
  /**
1015
1027
  * Get the number of pages in the document.
1016
1028
  */
@@ -1185,6 +1197,10 @@ export class WasmPdfDocument {
1185
1197
  * Signature surfaces.
1186
1198
  */
1187
1199
  signatures(): WasmSignature[];
1200
+ /**
1201
+ * Convert the entire PDF to DOCX bytes (Uint8Array).
1202
+ */
1203
+ toDocxBytes(): Uint8Array;
1188
1204
  /**
1189
1205
  * Convert a single page to HTML.
1190
1206
  *
@@ -1217,6 +1233,14 @@ export class WasmPdfDocument {
1217
1233
  * Convert all pages to plain text.
1218
1234
  */
1219
1235
  toPlainTextAll(): string;
1236
+ /**
1237
+ * Convert the entire PDF to PPTX bytes (Uint8Array).
1238
+ */
1239
+ toPptxBytes(): Uint8Array;
1240
+ /**
1241
+ * Convert the entire PDF to XLSX bytes (Uint8Array).
1242
+ */
1243
+ toXlsxBytes(): Uint8Array;
1220
1244
  /**
1221
1245
  * Validate PDF/A compliance. Level: "1b", "2b", etc.
1222
1246
  */
@@ -2814,6 +2814,12 @@ exports.WasmPdf = WasmPdf;
2814
2814
  * Call `.free()` when done to release memory.
2815
2815
  */
2816
2816
  class WasmPdfDocument {
2817
+ static __wrap(ptr) {
2818
+ const obj = Object.create(WasmPdfDocument.prototype);
2819
+ obj.__wbg_ptr = ptr;
2820
+ WasmPdfDocumentFinalization.register(obj, obj.__wbg_ptr, obj);
2821
+ return obj;
2822
+ }
2817
2823
  __destroy_into_raw() {
2818
2824
  const ptr = this.__wbg_ptr;
2819
2825
  this.__wbg_ptr = 0;
@@ -3913,6 +3919,72 @@ class WasmPdfDocument {
3913
3919
  wasm.__wbindgen_add_to_stack_pointer(16);
3914
3920
  }
3915
3921
  }
3922
+ /**
3923
+ * Open a PDF from DOCX bytes.
3924
+ * @param {Uint8Array} data
3925
+ * @returns {WasmPdfDocument}
3926
+ */
3927
+ static openFromDocxBytes(data) {
3928
+ try {
3929
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
3930
+ const ptr0 = passArray8ToWasm0(data, wasm.__wbindgen_export);
3931
+ const len0 = WASM_VECTOR_LEN;
3932
+ wasm.wasmpdfdocument_openFromDocxBytes(retptr, ptr0, len0);
3933
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
3934
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
3935
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
3936
+ if (r2) {
3937
+ throw takeObject(r1);
3938
+ }
3939
+ return WasmPdfDocument.__wrap(r0);
3940
+ } finally {
3941
+ wasm.__wbindgen_add_to_stack_pointer(16);
3942
+ }
3943
+ }
3944
+ /**
3945
+ * Open a PDF from PPTX bytes.
3946
+ * @param {Uint8Array} data
3947
+ * @returns {WasmPdfDocument}
3948
+ */
3949
+ static openFromPptxBytes(data) {
3950
+ try {
3951
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
3952
+ const ptr0 = passArray8ToWasm0(data, wasm.__wbindgen_export);
3953
+ const len0 = WASM_VECTOR_LEN;
3954
+ wasm.wasmpdfdocument_openFromPptxBytes(retptr, ptr0, len0);
3955
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
3956
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
3957
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
3958
+ if (r2) {
3959
+ throw takeObject(r1);
3960
+ }
3961
+ return WasmPdfDocument.__wrap(r0);
3962
+ } finally {
3963
+ wasm.__wbindgen_add_to_stack_pointer(16);
3964
+ }
3965
+ }
3966
+ /**
3967
+ * Open a PDF from XLSX bytes.
3968
+ * @param {Uint8Array} data
3969
+ * @returns {WasmPdfDocument}
3970
+ */
3971
+ static openFromXlsxBytes(data) {
3972
+ try {
3973
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
3974
+ const ptr0 = passArray8ToWasm0(data, wasm.__wbindgen_export);
3975
+ const len0 = WASM_VECTOR_LEN;
3976
+ wasm.wasmpdfdocument_openFromXlsxBytes(retptr, ptr0, len0);
3977
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
3978
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
3979
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
3980
+ if (r2) {
3981
+ throw takeObject(r1);
3982
+ }
3983
+ return WasmPdfDocument.__wrap(r0);
3984
+ } finally {
3985
+ wasm.__wbindgen_add_to_stack_pointer(16);
3986
+ }
3987
+ }
3916
3988
  /**
3917
3989
  * Get the number of pages in the document.
3918
3990
  * @returns {number}
@@ -4622,6 +4694,28 @@ class WasmPdfDocument {
4622
4694
  wasm.__wbindgen_add_to_stack_pointer(16);
4623
4695
  }
4624
4696
  }
4697
+ /**
4698
+ * Convert the entire PDF to DOCX bytes (Uint8Array).
4699
+ * @returns {Uint8Array}
4700
+ */
4701
+ toDocxBytes() {
4702
+ try {
4703
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
4704
+ wasm.wasmpdfdocument_toDocxBytes(retptr, this.__wbg_ptr);
4705
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
4706
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
4707
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
4708
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
4709
+ if (r3) {
4710
+ throw takeObject(r2);
4711
+ }
4712
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
4713
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
4714
+ return v1;
4715
+ } finally {
4716
+ wasm.__wbindgen_add_to_stack_pointer(16);
4717
+ }
4718
+ }
4625
4719
  /**
4626
4720
  * Convert a single page to HTML.
4627
4721
  *
@@ -4813,6 +4907,50 @@ class WasmPdfDocument {
4813
4907
  wasm.__wbindgen_export4(deferred2_0, deferred2_1, 1);
4814
4908
  }
4815
4909
  }
4910
+ /**
4911
+ * Convert the entire PDF to PPTX bytes (Uint8Array).
4912
+ * @returns {Uint8Array}
4913
+ */
4914
+ toPptxBytes() {
4915
+ try {
4916
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
4917
+ wasm.wasmpdfdocument_toPptxBytes(retptr, this.__wbg_ptr);
4918
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
4919
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
4920
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
4921
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
4922
+ if (r3) {
4923
+ throw takeObject(r2);
4924
+ }
4925
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
4926
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
4927
+ return v1;
4928
+ } finally {
4929
+ wasm.__wbindgen_add_to_stack_pointer(16);
4930
+ }
4931
+ }
4932
+ /**
4933
+ * Convert the entire PDF to XLSX bytes (Uint8Array).
4934
+ * @returns {Uint8Array}
4935
+ */
4936
+ toXlsxBytes() {
4937
+ try {
4938
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
4939
+ wasm.wasmpdfdocument_toXlsxBytes(retptr, this.__wbg_ptr);
4940
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
4941
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
4942
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
4943
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
4944
+ if (r3) {
4945
+ throw takeObject(r2);
4946
+ }
4947
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
4948
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
4949
+ return v1;
4950
+ } finally {
4951
+ wasm.__wbindgen_add_to_stack_pointer(16);
4952
+ }
4953
+ }
4816
4954
  /**
4817
4955
  * Validate PDF/A compliance. Level: "1b", "2b", etc.
4818
4956
  * @param {string} level
Binary file
@@ -184,6 +184,9 @@ export const wasmpdfdocument_hasXfa: (a: number, b: number) => void;
184
184
  export const wasmpdfdocument_mergeFrom: (a: number, b: number, c: number, d: number) => void;
185
185
  export const wasmpdfdocument_movePage: (a: number, b: number, c: number, d: number) => void;
186
186
  export const wasmpdfdocument_new: (a: number, b: number, c: number, d: number, e: number) => void;
187
+ export const wasmpdfdocument_openFromDocxBytes: (a: number, b: number, c: number) => void;
188
+ export const wasmpdfdocument_openFromPptxBytes: (a: number, b: number, c: number) => void;
189
+ export const wasmpdfdocument_openFromXlsxBytes: (a: number, b: number, c: number) => void;
187
190
  export const wasmpdfdocument_pageCount: (a: number, b: number) => void;
188
191
  export const wasmpdfdocument_pageCropBox: (a: number, b: number, c: number) => void;
189
192
  export const wasmpdfdocument_pageImages: (a: number, b: number, c: number) => void;
@@ -214,12 +217,15 @@ export const wasmpdfdocument_setSubject: (a: number, b: number, c: number, d: nu
214
217
  export const wasmpdfdocument_setTitle: (a: number, b: number, c: number, d: number) => void;
215
218
  export const wasmpdfdocument_signatureCount: (a: number, b: number) => void;
216
219
  export const wasmpdfdocument_signatures: (a: number, b: number) => void;
220
+ export const wasmpdfdocument_toDocxBytes: (a: number, b: number) => void;
217
221
  export const wasmpdfdocument_toHtml: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
218
222
  export const wasmpdfdocument_toHtmlAll: (a: number, b: number, c: number, d: number, e: number) => void;
219
223
  export const wasmpdfdocument_toMarkdown: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
220
224
  export const wasmpdfdocument_toMarkdownAll: (a: number, b: number, c: number, d: number, e: number) => void;
221
225
  export const wasmpdfdocument_toPlainText: (a: number, b: number, c: number) => void;
222
226
  export const wasmpdfdocument_toPlainTextAll: (a: number, b: number) => void;
227
+ export const wasmpdfdocument_toPptxBytes: (a: number, b: number) => void;
228
+ export const wasmpdfdocument_toXlsxBytes: (a: number, b: number) => void;
223
229
  export const wasmpdfdocument_validatePdfA: (a: number, b: number, c: number, d: number) => void;
224
230
  export const wasmpdfdocument_validatePdfUa: (a: number, b: number, c: number, d: number) => void;
225
231
  export const wasmpdfdocument_validatePdfX: (a: number, b: number, c: number, d: number) => void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pdf-oxide-wasm",
3
- "version": "0.3.47",
3
+ "version": "0.3.48",
4
4
  "description": "Fast, zero-dependency PDF toolkit for Node.js, browsers, and edge runtimes — text extraction, markdown/HTML conversion, search, form filling, creation, and editing. Rust core compiled to WebAssembly.",
5
5
  "license": "MIT OR Apache-2.0",
6
6
  "repository": {
@@ -1011,6 +1011,18 @@ export class WasmPdfDocument {
1011
1011
  * @throws Error if the PDF is invalid or cannot be parsed
1012
1012
  */
1013
1013
  constructor(data: Uint8Array, password?: string | null);
1014
+ /**
1015
+ * Open a PDF from DOCX bytes.
1016
+ */
1017
+ static openFromDocxBytes(data: Uint8Array): WasmPdfDocument;
1018
+ /**
1019
+ * Open a PDF from PPTX bytes.
1020
+ */
1021
+ static openFromPptxBytes(data: Uint8Array): WasmPdfDocument;
1022
+ /**
1023
+ * Open a PDF from XLSX bytes.
1024
+ */
1025
+ static openFromXlsxBytes(data: Uint8Array): WasmPdfDocument;
1014
1026
  /**
1015
1027
  * Get the number of pages in the document.
1016
1028
  */
@@ -1185,6 +1197,10 @@ export class WasmPdfDocument {
1185
1197
  * Signature surfaces.
1186
1198
  */
1187
1199
  signatures(): WasmSignature[];
1200
+ /**
1201
+ * Convert the entire PDF to DOCX bytes (Uint8Array).
1202
+ */
1203
+ toDocxBytes(): Uint8Array;
1188
1204
  /**
1189
1205
  * Convert a single page to HTML.
1190
1206
  *
@@ -1217,6 +1233,14 @@ export class WasmPdfDocument {
1217
1233
  * Convert all pages to plain text.
1218
1234
  */
1219
1235
  toPlainTextAll(): string;
1236
+ /**
1237
+ * Convert the entire PDF to PPTX bytes (Uint8Array).
1238
+ */
1239
+ toPptxBytes(): Uint8Array;
1240
+ /**
1241
+ * Convert the entire PDF to XLSX bytes (Uint8Array).
1242
+ */
1243
+ toXlsxBytes(): Uint8Array;
1220
1244
  /**
1221
1245
  * Validate PDF/A compliance. Level: "1b", "2b", etc.
1222
1246
  */
@@ -1647,6 +1671,9 @@ export interface InitOutput {
1647
1671
  readonly wasmpdfdocument_mergeFrom: (a: number, b: number, c: number, d: number) => void;
1648
1672
  readonly wasmpdfdocument_movePage: (a: number, b: number, c: number, d: number) => void;
1649
1673
  readonly wasmpdfdocument_new: (a: number, b: number, c: number, d: number, e: number) => void;
1674
+ readonly wasmpdfdocument_openFromDocxBytes: (a: number, b: number, c: number) => void;
1675
+ readonly wasmpdfdocument_openFromPptxBytes: (a: number, b: number, c: number) => void;
1676
+ readonly wasmpdfdocument_openFromXlsxBytes: (a: number, b: number, c: number) => void;
1650
1677
  readonly wasmpdfdocument_pageCount: (a: number, b: number) => void;
1651
1678
  readonly wasmpdfdocument_pageCropBox: (a: number, b: number, c: number) => void;
1652
1679
  readonly wasmpdfdocument_pageImages: (a: number, b: number, c: number) => void;
@@ -1677,12 +1704,15 @@ export interface InitOutput {
1677
1704
  readonly wasmpdfdocument_setTitle: (a: number, b: number, c: number, d: number) => void;
1678
1705
  readonly wasmpdfdocument_signatureCount: (a: number, b: number) => void;
1679
1706
  readonly wasmpdfdocument_signatures: (a: number, b: number) => void;
1707
+ readonly wasmpdfdocument_toDocxBytes: (a: number, b: number) => void;
1680
1708
  readonly wasmpdfdocument_toHtml: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
1681
1709
  readonly wasmpdfdocument_toHtmlAll: (a: number, b: number, c: number, d: number, e: number) => void;
1682
1710
  readonly wasmpdfdocument_toMarkdown: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
1683
1711
  readonly wasmpdfdocument_toMarkdownAll: (a: number, b: number, c: number, d: number, e: number) => void;
1684
1712
  readonly wasmpdfdocument_toPlainText: (a: number, b: number, c: number) => void;
1685
1713
  readonly wasmpdfdocument_toPlainTextAll: (a: number, b: number) => void;
1714
+ readonly wasmpdfdocument_toPptxBytes: (a: number, b: number) => void;
1715
+ readonly wasmpdfdocument_toXlsxBytes: (a: number, b: number) => void;
1686
1716
  readonly wasmpdfdocument_validatePdfA: (a: number, b: number, c: number, d: number) => void;
1687
1717
  readonly wasmpdfdocument_validatePdfUa: (a: number, b: number, c: number, d: number) => void;
1688
1718
  readonly wasmpdfdocument_validatePdfX: (a: number, b: number, c: number, d: number) => void;
package/web/pdf_oxide.js CHANGED
@@ -2800,6 +2800,12 @@ if (Symbol.dispose) WasmPdf.prototype[Symbol.dispose] = WasmPdf.prototype.free;
2800
2800
  * Call `.free()` when done to release memory.
2801
2801
  */
2802
2802
  export class WasmPdfDocument {
2803
+ static __wrap(ptr) {
2804
+ const obj = Object.create(WasmPdfDocument.prototype);
2805
+ obj.__wbg_ptr = ptr;
2806
+ WasmPdfDocumentFinalization.register(obj, obj.__wbg_ptr, obj);
2807
+ return obj;
2808
+ }
2803
2809
  __destroy_into_raw() {
2804
2810
  const ptr = this.__wbg_ptr;
2805
2811
  this.__wbg_ptr = 0;
@@ -3899,6 +3905,72 @@ export class WasmPdfDocument {
3899
3905
  wasm.__wbindgen_add_to_stack_pointer(16);
3900
3906
  }
3901
3907
  }
3908
+ /**
3909
+ * Open a PDF from DOCX bytes.
3910
+ * @param {Uint8Array} data
3911
+ * @returns {WasmPdfDocument}
3912
+ */
3913
+ static openFromDocxBytes(data) {
3914
+ try {
3915
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
3916
+ const ptr0 = passArray8ToWasm0(data, wasm.__wbindgen_export);
3917
+ const len0 = WASM_VECTOR_LEN;
3918
+ wasm.wasmpdfdocument_openFromDocxBytes(retptr, ptr0, len0);
3919
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
3920
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
3921
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
3922
+ if (r2) {
3923
+ throw takeObject(r1);
3924
+ }
3925
+ return WasmPdfDocument.__wrap(r0);
3926
+ } finally {
3927
+ wasm.__wbindgen_add_to_stack_pointer(16);
3928
+ }
3929
+ }
3930
+ /**
3931
+ * Open a PDF from PPTX bytes.
3932
+ * @param {Uint8Array} data
3933
+ * @returns {WasmPdfDocument}
3934
+ */
3935
+ static openFromPptxBytes(data) {
3936
+ try {
3937
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
3938
+ const ptr0 = passArray8ToWasm0(data, wasm.__wbindgen_export);
3939
+ const len0 = WASM_VECTOR_LEN;
3940
+ wasm.wasmpdfdocument_openFromPptxBytes(retptr, ptr0, len0);
3941
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
3942
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
3943
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
3944
+ if (r2) {
3945
+ throw takeObject(r1);
3946
+ }
3947
+ return WasmPdfDocument.__wrap(r0);
3948
+ } finally {
3949
+ wasm.__wbindgen_add_to_stack_pointer(16);
3950
+ }
3951
+ }
3952
+ /**
3953
+ * Open a PDF from XLSX bytes.
3954
+ * @param {Uint8Array} data
3955
+ * @returns {WasmPdfDocument}
3956
+ */
3957
+ static openFromXlsxBytes(data) {
3958
+ try {
3959
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
3960
+ const ptr0 = passArray8ToWasm0(data, wasm.__wbindgen_export);
3961
+ const len0 = WASM_VECTOR_LEN;
3962
+ wasm.wasmpdfdocument_openFromXlsxBytes(retptr, ptr0, len0);
3963
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
3964
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
3965
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
3966
+ if (r2) {
3967
+ throw takeObject(r1);
3968
+ }
3969
+ return WasmPdfDocument.__wrap(r0);
3970
+ } finally {
3971
+ wasm.__wbindgen_add_to_stack_pointer(16);
3972
+ }
3973
+ }
3902
3974
  /**
3903
3975
  * Get the number of pages in the document.
3904
3976
  * @returns {number}
@@ -4608,6 +4680,28 @@ export class WasmPdfDocument {
4608
4680
  wasm.__wbindgen_add_to_stack_pointer(16);
4609
4681
  }
4610
4682
  }
4683
+ /**
4684
+ * Convert the entire PDF to DOCX bytes (Uint8Array).
4685
+ * @returns {Uint8Array}
4686
+ */
4687
+ toDocxBytes() {
4688
+ try {
4689
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
4690
+ wasm.wasmpdfdocument_toDocxBytes(retptr, this.__wbg_ptr);
4691
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
4692
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
4693
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
4694
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
4695
+ if (r3) {
4696
+ throw takeObject(r2);
4697
+ }
4698
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
4699
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
4700
+ return v1;
4701
+ } finally {
4702
+ wasm.__wbindgen_add_to_stack_pointer(16);
4703
+ }
4704
+ }
4611
4705
  /**
4612
4706
  * Convert a single page to HTML.
4613
4707
  *
@@ -4799,6 +4893,50 @@ export class WasmPdfDocument {
4799
4893
  wasm.__wbindgen_export4(deferred2_0, deferred2_1, 1);
4800
4894
  }
4801
4895
  }
4896
+ /**
4897
+ * Convert the entire PDF to PPTX bytes (Uint8Array).
4898
+ * @returns {Uint8Array}
4899
+ */
4900
+ toPptxBytes() {
4901
+ try {
4902
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
4903
+ wasm.wasmpdfdocument_toPptxBytes(retptr, this.__wbg_ptr);
4904
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
4905
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
4906
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
4907
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
4908
+ if (r3) {
4909
+ throw takeObject(r2);
4910
+ }
4911
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
4912
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
4913
+ return v1;
4914
+ } finally {
4915
+ wasm.__wbindgen_add_to_stack_pointer(16);
4916
+ }
4917
+ }
4918
+ /**
4919
+ * Convert the entire PDF to XLSX bytes (Uint8Array).
4920
+ * @returns {Uint8Array}
4921
+ */
4922
+ toXlsxBytes() {
4923
+ try {
4924
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
4925
+ wasm.wasmpdfdocument_toXlsxBytes(retptr, this.__wbg_ptr);
4926
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
4927
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
4928
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
4929
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
4930
+ if (r3) {
4931
+ throw takeObject(r2);
4932
+ }
4933
+ var v1 = getArrayU8FromWasm0(r0, r1).slice();
4934
+ wasm.__wbindgen_export4(r0, r1 * 1, 1);
4935
+ return v1;
4936
+ } finally {
4937
+ wasm.__wbindgen_add_to_stack_pointer(16);
4938
+ }
4939
+ }
4802
4940
  /**
4803
4941
  * Validate PDF/A compliance. Level: "1b", "2b", etc.
4804
4942
  * @param {string} level
Binary file
@@ -184,6 +184,9 @@ export const wasmpdfdocument_hasXfa: (a: number, b: number) => void;
184
184
  export const wasmpdfdocument_mergeFrom: (a: number, b: number, c: number, d: number) => void;
185
185
  export const wasmpdfdocument_movePage: (a: number, b: number, c: number, d: number) => void;
186
186
  export const wasmpdfdocument_new: (a: number, b: number, c: number, d: number, e: number) => void;
187
+ export const wasmpdfdocument_openFromDocxBytes: (a: number, b: number, c: number) => void;
188
+ export const wasmpdfdocument_openFromPptxBytes: (a: number, b: number, c: number) => void;
189
+ export const wasmpdfdocument_openFromXlsxBytes: (a: number, b: number, c: number) => void;
187
190
  export const wasmpdfdocument_pageCount: (a: number, b: number) => void;
188
191
  export const wasmpdfdocument_pageCropBox: (a: number, b: number, c: number) => void;
189
192
  export const wasmpdfdocument_pageImages: (a: number, b: number, c: number) => void;
@@ -214,12 +217,15 @@ export const wasmpdfdocument_setSubject: (a: number, b: number, c: number, d: nu
214
217
  export const wasmpdfdocument_setTitle: (a: number, b: number, c: number, d: number) => void;
215
218
  export const wasmpdfdocument_signatureCount: (a: number, b: number) => void;
216
219
  export const wasmpdfdocument_signatures: (a: number, b: number) => void;
220
+ export const wasmpdfdocument_toDocxBytes: (a: number, b: number) => void;
217
221
  export const wasmpdfdocument_toHtml: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
218
222
  export const wasmpdfdocument_toHtmlAll: (a: number, b: number, c: number, d: number, e: number) => void;
219
223
  export const wasmpdfdocument_toMarkdown: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
220
224
  export const wasmpdfdocument_toMarkdownAll: (a: number, b: number, c: number, d: number, e: number) => void;
221
225
  export const wasmpdfdocument_toPlainText: (a: number, b: number, c: number) => void;
222
226
  export const wasmpdfdocument_toPlainTextAll: (a: number, b: number) => void;
227
+ export const wasmpdfdocument_toPptxBytes: (a: number, b: number) => void;
228
+ export const wasmpdfdocument_toXlsxBytes: (a: number, b: number) => void;
223
229
  export const wasmpdfdocument_validatePdfA: (a: number, b: number, c: number, d: number) => void;
224
230
  export const wasmpdfdocument_validatePdfUa: (a: number, b: number, c: number, d: number) => void;
225
231
  export const wasmpdfdocument_validatePdfX: (a: number, b: number, c: number, d: number) => void;