@laminapdf/sdk 0.2.0-alpha.2 → 0.2.0-alpha.3

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 (401) hide show
  1. package/README.md +42 -7
  2. package/dist/api.d.ts +5 -2
  3. package/dist/api.d.ts.map +1 -1
  4. package/dist/api.js +3 -2
  5. package/dist/api.js.map +1 -1
  6. package/dist/builder.d.ts +35 -19
  7. package/dist/builder.d.ts.map +1 -1
  8. package/dist/builder.js +114 -80
  9. package/dist/builder.js.map +1 -1
  10. package/dist/document.d.ts +47 -21
  11. package/dist/document.d.ts.map +1 -1
  12. package/dist/document.js +112 -67
  13. package/dist/document.js.map +1 -1
  14. package/dist/errors.d.ts +5 -5
  15. package/dist/errors.d.ts.map +1 -1
  16. package/dist/errors.js +10 -16
  17. package/dist/errors.js.map +1 -1
  18. package/dist/extract.d.ts +57 -0
  19. package/dist/extract.d.ts.map +1 -0
  20. package/dist/extract.js +5 -0
  21. package/dist/extract.js.map +1 -0
  22. package/dist/font.d.ts +13 -6
  23. package/dist/font.d.ts.map +1 -1
  24. package/dist/font.js +50 -20
  25. package/dist/font.js.map +1 -1
  26. package/dist/generated/codes.d.ts +18 -6
  27. package/dist/generated/codes.d.ts.map +1 -1
  28. package/dist/generated/codes.js +59 -4
  29. package/dist/generated/codes.js.map +1 -1
  30. package/dist/generated/explain.d.ts.map +1 -1
  31. package/dist/generated/explain.js +27 -10
  32. package/dist/generated/explain.js.map +1 -1
  33. package/dist/generated/extract.d.ts +235 -0
  34. package/dist/generated/extract.d.ts.map +1 -0
  35. package/dist/generated/extract.js +4 -0
  36. package/dist/generated/extract.js.map +1 -0
  37. package/dist/init.d.ts +13 -5
  38. package/dist/init.d.ts.map +1 -1
  39. package/dist/init.js +23 -11
  40. package/dist/init.js.map +1 -1
  41. package/dist/internal/handle.d.ts +58 -0
  42. package/dist/internal/handle.d.ts.map +1 -0
  43. package/dist/internal/handle.js +113 -0
  44. package/dist/internal/handle.js.map +1 -0
  45. package/dist/internal/instance.d.ts +56 -0
  46. package/dist/internal/instance.d.ts.map +1 -0
  47. package/dist/internal/instance.js +125 -0
  48. package/dist/internal/instance.js.map +1 -0
  49. package/dist/source/http.js +1 -1
  50. package/dist/source/http.js.map +1 -1
  51. package/dist/source/range.d.ts +6 -1
  52. package/dist/source/range.d.ts.map +1 -1
  53. package/dist/source/range.js +10 -6
  54. package/dist/source/range.js.map +1 -1
  55. package/dist/text.d.ts +3 -3
  56. package/dist/text.d.ts.map +1 -1
  57. package/dist/text.js +3 -3
  58. package/dist/text.js.map +1 -1
  59. package/dist/version.d.ts +1 -1
  60. package/dist/version.js +2 -2
  61. package/dist/version.js.map +1 -1
  62. package/dist/worker/client.d.ts +3 -2
  63. package/dist/worker/client.d.ts.map +1 -1
  64. package/dist/worker/client.js +6 -4
  65. package/dist/worker/client.js.map +1 -1
  66. package/dist/worker/entry.js +1 -1
  67. package/dist/worker/entry.js.map +1 -1
  68. package/dist/worker/server.d.ts.map +1 -1
  69. package/dist/worker/server.js +42 -9
  70. package/dist/worker/server.js.map +1 -1
  71. package/dist/worker/support.d.ts +6 -2
  72. package/dist/worker/support.d.ts.map +1 -1
  73. package/dist/worker/support.js +1 -0
  74. package/dist/worker/support.js.map +1 -1
  75. package/dist/worker/types.d.ts +8 -1
  76. package/dist/worker/types.d.ts.map +1 -1
  77. package/docs/AGENTS.md +14 -0
  78. package/docs/api/README.md +147 -0
  79. package/docs/api/classes/Builder.md +467 -0
  80. package/docs/api/classes/Document.md +742 -0
  81. package/docs/api/classes/Font.md +74 -0
  82. package/docs/api/classes/Image.md +140 -0
  83. package/docs/api/classes/LaminaPdfError.md +189 -0
  84. package/docs/api/classes/Page.md +178 -0
  85. package/docs/api/classes/PageRef.md +253 -0
  86. package/docs/api/classes/PageText.md +129 -0
  87. package/docs/api/classes/PageTextRun.md +167 -0
  88. package/docs/api/classes/PendingPath.md +97 -0
  89. package/docs/api/classes/SaveJob.md +205 -0
  90. package/docs/api/classes/Surface.md +326 -0
  91. package/docs/api/classes/Transaction.md +111 -0
  92. package/docs/api/functions/callbackSource.md +33 -0
  93. package/docs/api/functions/httpRangeSource.md +48 -0
  94. package/docs/api/functions/init.md +36 -0
  95. package/docs/api/functions/isExtractLoaded.md +21 -0
  96. package/docs/api/functions/isInitialized.md +19 -0
  97. package/docs/api/functions/isLaminaPdfError.md +41 -0
  98. package/docs/api/functions/isTextLoaded.md +19 -0
  99. package/docs/api/functions/loadExtract.md +28 -0
  100. package/docs/api/functions/loadText.md +28 -0
  101. package/docs/api/functions/onLeak.md +29 -0
  102. package/docs/api/functions/reset.md +22 -0
  103. package/docs/api/functions/wasmMemory.md +22 -0
  104. package/docs/api/interfaces/BuilderOptions.md +108 -0
  105. package/docs/api/interfaces/ByteRange.md +29 -0
  106. package/docs/api/interfaces/ChunkOptions.md +37 -0
  107. package/docs/api/interfaces/Diagnostic.md +67 -0
  108. package/docs/api/interfaces/ExtractOptions.md +92 -0
  109. package/docs/api/interfaces/ExtractResult.md +37 -0
  110. package/docs/api/interfaces/FontInfo.md +37 -0
  111. package/docs/api/interfaces/HttpRangeOptions.md +78 -0
  112. package/docs/api/interfaces/InitOptions.md +40 -0
  113. package/docs/api/interfaces/Leak.md +21 -0
  114. package/docs/api/interfaces/Location.md +53 -0
  115. package/docs/api/interfaces/OpLog.md +25 -0
  116. package/docs/api/interfaces/OpenOptions.md +37 -0
  117. package/docs/api/interfaces/PageTextOptions.md +21 -0
  118. package/docs/api/interfaces/PathBuilder.md +195 -0
  119. package/docs/api/interfaces/QuadPoint.md +25 -0
  120. package/docs/api/interfaces/RangeOptions.md +54 -0
  121. package/docs/api/interfaces/RangeSource.md +59 -0
  122. package/docs/api/interfaces/StrokeStyle.md +61 -0
  123. package/docs/api/interfaces/TagSpec.md +69 -0
  124. package/docs/api/interfaces/TextBoxOptions.md +93 -0
  125. package/docs/api/interfaces/TextGlyph.md +29 -0
  126. package/docs/api/interfaces/TextOptions.md +101 -0
  127. package/docs/api/interfaces/WasmMemory.md +37 -0
  128. package/docs/api/type-aliases/AfRelationship.md +15 -0
  129. package/docs/api/type-aliases/Align.md +15 -0
  130. package/docs/api/type-aliases/ArtifactKind.md +15 -0
  131. package/docs/api/type-aliases/AttachmentOptions.md +15 -0
  132. package/docs/api/type-aliases/BlendMode.md +15 -0
  133. package/docs/api/type-aliases/BoxRect.md +15 -0
  134. package/docs/api/type-aliases/BuildOptions.md +15 -0
  135. package/docs/api/type-aliases/Cell.md +71 -0
  136. package/docs/api/type-aliases/Chunk.md +79 -0
  137. package/docs/api/type-aliases/Color.md +16 -0
  138. package/docs/api/type-aliases/Coordinates.md +55 -0
  139. package/docs/api/type-aliases/Direction.md +15 -0
  140. package/docs/api/type-aliases/DocumentInfo.md +15 -0
  141. package/docs/api/type-aliases/DropReason.md +15 -0
  142. package/docs/api/type-aliases/Dropped.md +59 -0
  143. package/docs/api/type-aliases/Edited.md +15 -0
  144. package/docs/api/type-aliases/ErrorCode.md +15 -0
  145. package/docs/api/type-aliases/ErrorKind.md +15 -0
  146. package/docs/api/type-aliases/ExtractFormat.md +15 -0
  147. package/docs/api/type-aliases/ExtractedBlock.md +82 -0
  148. package/docs/api/type-aliases/ExtractedPage.md +65 -0
  149. package/docs/api/type-aliases/ExtractedSource.md +48 -0
  150. package/docs/api/type-aliases/Extraction.md +22 -0
  151. package/docs/api/type-aliases/FillRule.md +15 -0
  152. package/docs/api/type-aliases/Fit.md +15 -0
  153. package/docs/api/type-aliases/Flags.md +15 -0
  154. package/docs/api/type-aliases/Generator.md +41 -0
  155. package/docs/api/type-aliases/GlyphQuad.md +15 -0
  156. package/docs/api/type-aliases/InfoPatch.md +15 -0
  157. package/docs/api/type-aliases/LaminaPdfWarning.md +16 -0
  158. package/docs/api/type-aliases/LimitName.md +15 -0
  159. package/docs/api/type-aliases/Limits.md +15 -0
  160. package/docs/api/type-aliases/LineBox.md +15 -0
  161. package/docs/api/type-aliases/LineCap.md +15 -0
  162. package/docs/api/type-aliases/LineJoin.md +15 -0
  163. package/docs/api/type-aliases/LinkTarget.md +15 -0
  164. package/docs/api/type-aliases/Metadata.md +15 -0
  165. package/docs/api/type-aliases/Op.md +15 -0
  166. package/docs/api/type-aliases/OutlineEntry.md +15 -0
  167. package/docs/api/type-aliases/Overflow.md +15 -0
  168. package/docs/api/type-aliases/PageInfo.md +15 -0
  169. package/docs/api/type-aliases/PageLabel.md +15 -0
  170. package/docs/api/type-aliases/PageSizeName.md +15 -0
  171. package/docs/api/type-aliases/Point.md +15 -0
  172. package/docs/api/type-aliases/Profile.md +15 -0
  173. package/docs/api/type-aliases/Progress.md +15 -0
  174. package/docs/api/type-aliases/ReadingOrder.md +15 -0
  175. package/docs/api/type-aliases/Rect.md +15 -0
  176. package/docs/api/type-aliases/Region.md +31 -0
  177. package/docs/api/type-aliases/RenderMode.md +15 -0
  178. package/docs/api/type-aliases/Rotation.md +15 -0
  179. package/docs/api/type-aliases/SaveOptions.md +15 -0
  180. package/docs/api/type-aliases/SaveReport.md +15 -0
  181. package/docs/api/type-aliases/Span.md +63 -0
  182. package/docs/api/type-aliases/SplitOn.md +15 -0
  183. package/docs/api/type-aliases/Standard14.md +15 -0
  184. package/docs/api/type-aliases/StructRef.md +41 -0
  185. package/docs/api/type-aliases/StructSource.md +17 -0
  186. package/docs/api/type-aliases/TableDetector.md +15 -0
  187. package/docs/api/type-aliases/TableMode.md +15 -0
  188. package/docs/api/type-aliases/TableScope.md +15 -0
  189. package/docs/api/type-aliases/Tag.md +15 -0
  190. package/docs/api/type-aliases/TagName.md +15 -0
  191. package/docs/api/type-aliases/TextLayout.md +15 -0
  192. package/docs/api/type-aliases/TextRange.md +33 -0
  193. package/docs/api/type-aliases/TextRunInfo.md +15 -0
  194. package/docs/api/type-aliases/Transform.md +15 -0
  195. package/docs/api/type-aliases/UndoOutcome.md +15 -0
  196. package/docs/api/type-aliases/ViewerPreferences.md +15 -0
  197. package/docs/api/type-aliases/WarningCode.md +15 -0
  198. package/docs/api/type-aliases/WasmSource.md +16 -0
  199. package/docs/api/variables/Matrix.md +99 -0
  200. package/docs/api/variables/PAGE_SIZES.md +15 -0
  201. package/docs/api/variables/TAG_NAMES.md +15 -0
  202. package/docs/errors/README.md +156 -0
  203. package/docs/errors/aes-padding-invalid.md +34 -0
  204. package/docs/errors/already-initialized.md +34 -0
  205. package/docs/errors/binary-output-to-terminal.md +35 -0
  206. package/docs/errors/builder-finished.md +35 -0
  207. package/docs/errors/cancelled.md +35 -0
  208. package/docs/errors/cmap-invalid.md +42 -0
  209. package/docs/errors/collection-index.md +33 -0
  210. package/docs/errors/color-components.md +33 -0
  211. package/docs/errors/content-bad-operands.md +36 -0
  212. package/docs/errors/content-path-unpainted.md +36 -0
  213. package/docs/errors/content-resource-missing.md +37 -0
  214. package/docs/errors/content-syntax.md +36 -0
  215. package/docs/errors/content-unbalanced-bt.md +36 -0
  216. package/docs/errors/content-unbalanced-marked.md +36 -0
  217. package/docs/errors/content-unbalanced-q.md +36 -0
  218. package/docs/errors/content-unknown-operator.md +37 -0
  219. package/docs/errors/data-pending.md +34 -0
  220. package/docs/errors/decompress.md +34 -0
  221. package/docs/errors/device-color-without-output-intent.md +33 -0
  222. package/docs/errors/direct-page.md +34 -0
  223. package/docs/errors/disposed.md +34 -0
  224. package/docs/errors/document-changed.md +34 -0
  225. package/docs/errors/embedded-file-forbidden.md +35 -0
  226. package/docs/errors/embedded-file-without-mime-type.md +36 -0
  227. package/docs/errors/encoding-full.md +34 -0
  228. package/docs/errors/encrypted-base.md +33 -0
  229. package/docs/errors/extract-limit-blocks.md +35 -0
  230. package/docs/errors/extract-module-not-loaded.md +37 -0
  231. package/docs/errors/extract-reading-order-ambiguous.md +32 -0
  232. package/docs/errors/extract-struct-tree-ignored.md +32 -0
  233. package/docs/errors/extract-table-ambiguous.md +32 -0
  234. package/docs/errors/extract-table-limit.md +35 -0
  235. package/docs/errors/extract-untagged-content.md +32 -0
  236. package/docs/errors/fetch-failed.md +34 -0
  237. package/docs/errors/flate-truncated.md +34 -0
  238. package/docs/errors/font-invalid.md +36 -0
  239. package/docs/errors/font-mismatch.md +34 -0
  240. package/docs/errors/font-not-embeddable.md +34 -0
  241. package/docs/errors/font-not-embedded.md +35 -0
  242. package/docs/errors/font-not-shapable.md +33 -0
  243. package/docs/errors/glyph-out-of-range.md +34 -0
  244. package/docs/errors/glyph-without-unicode.md +35 -0
  245. package/docs/errors/heading-level-skipped.md +36 -0
  246. package/docs/errors/image-data-length.md +33 -0
  247. package/docs/errors/image-too-large.md +32 -0
  248. package/docs/errors/inline-image-unterminated.md +36 -0
  249. package/docs/errors/input-unreadable.md +37 -0
  250. package/docs/errors/instance-reset.md +34 -0
  251. package/docs/errors/invalid-argument.md +33 -0
  252. package/docs/errors/invalid-axis-value.md +32 -0
  253. package/docs/errors/invalid-box.md +34 -0
  254. package/docs/errors/invalid-color.md +32 -0
  255. package/docs/errors/invalid-command-line.md +44 -0
  256. package/docs/errors/invalid-date.md +34 -0
  257. package/docs/errors/invalid-entry.md +34 -0
  258. package/docs/errors/invalid-feature.md +32 -0
  259. package/docs/errors/invalid-font.md +32 -0
  260. package/docs/errors/invalid-geometry.md +32 -0
  261. package/docs/errors/invalid-icc-profile.md +32 -0
  262. package/docs/errors/invalid-image.md +33 -0
  263. package/docs/errors/invalid-op-log.md +33 -0
  264. package/docs/errors/invalid-page-label.md +34 -0
  265. package/docs/errors/invalid-page-labels.md +32 -0
  266. package/docs/errors/invalid-page-range.md +37 -0
  267. package/docs/errors/invalid-rotate.md +34 -0
  268. package/docs/errors/invalid-structure-nesting.md +38 -0
  269. package/docs/errors/invalid-structure.md +34 -0
  270. package/docs/errors/invalid-text-range.md +33 -0
  271. package/docs/errors/job-finished.md +34 -0
  272. package/docs/errors/limit-exceeded.md +38 -0
  273. package/docs/errors/link-without-contents.md +33 -0
  274. package/docs/errors/link-without-structure.md +37 -0
  275. package/docs/errors/missing-alt-text.md +33 -0
  276. package/docs/errors/missing-glyph.md +33 -0
  277. package/docs/errors/missing-header.md +37 -0
  278. package/docs/errors/missing-lang.md +32 -0
  279. package/docs/errors/missing-root.md +34 -0
  280. package/docs/errors/missing-title.md +32 -0
  281. package/docs/errors/name-tree-node-skipped.md +34 -0
  282. package/docs/errors/nested-transaction.md +34 -0
  283. package/docs/errors/no-pending-save.md +32 -0
  284. package/docs/errors/no-transaction.md +33 -0
  285. package/docs/errors/not-initialized.md +35 -0
  286. package/docs/errors/not-pdf.md +33 -0
  287. package/docs/errors/not-rebased.md +35 -0
  288. package/docs/errors/object-number-out-of-range.md +38 -0
  289. package/docs/errors/objstm-index-mismatch.md +36 -0
  290. package/docs/errors/out-of-memory.md +38 -0
  291. package/docs/errors/outline-cycle.md +34 -0
  292. package/docs/errors/outline-item-skipped.md +34 -0
  293. package/docs/errors/output-unwritable.md +37 -0
  294. package/docs/errors/overwrite-refused.md +36 -0
  295. package/docs/errors/page-count-mismatch.md +34 -0
  296. package/docs/errors/page-index-out-of-range.md +34 -0
  297. package/docs/errors/page-tree-node-skipped.md +35 -0
  298. package/docs/errors/password-required.md +36 -0
  299. package/docs/errors/path-outside-roots.md +32 -0
  300. package/docs/errors/perms-mismatch.md +34 -0
  301. package/docs/errors/profile-version-conflict.md +35 -0
  302. package/docs/errors/reference-cycle.md +35 -0
  303. package/docs/errors/render-backend-unavailable.md +32 -0
  304. package/docs/errors/render-failed.md +33 -0
  305. package/docs/errors/render-too-large.md +36 -0
  306. package/docs/errors/repaired-base.md +34 -0
  307. package/docs/errors/requires-rewrite.md +38 -0
  308. package/docs/errors/saved-not-rebased.md +34 -0
  309. package/docs/errors/sink-not-empty.md +33 -0
  310. package/docs/errors/sink.md +31 -0
  311. package/docs/errors/source-budget-exceeded.md +34 -0
  312. package/docs/errors/source-changed.md +33 -0
  313. package/docs/errors/source.md +30 -0
  314. package/docs/errors/stale-generation.md +34 -0
  315. package/docs/errors/stream-length-recovered.md +37 -0
  316. package/docs/errors/strict.md +34 -0
  317. package/docs/errors/subset-failed.md +31 -0
  318. package/docs/errors/syntax.md +34 -0
  319. package/docs/errors/text-module-not-loaded.md +36 -0
  320. package/docs/errors/text-overflow.md +34 -0
  321. package/docs/errors/tounicode-conflict.md +32 -0
  322. package/docs/errors/type.md +34 -0
  323. package/docs/errors/unexpected-eof.md +34 -0
  324. package/docs/errors/unknown-axis.md +33 -0
  325. package/docs/errors/unknown-code.md +36 -0
  326. package/docs/errors/unknown-destination.md +33 -0
  327. package/docs/errors/unknown-font.md +33 -0
  328. package/docs/errors/unknown-option.md +33 -0
  329. package/docs/errors/unknown-page.md +34 -0
  330. package/docs/errors/unmapped-glyph.md +36 -0
  331. package/docs/errors/unnumbered-heading-misused.md +34 -0
  332. package/docs/errors/unset-object.md +30 -0
  333. package/docs/errors/unsupported-filter.md +34 -0
  334. package/docs/errors/unsupported-image.md +33 -0
  335. package/docs/errors/unsupported-layout-option.md +33 -0
  336. package/docs/errors/unsupported-security-handler.md +34 -0
  337. package/docs/errors/unsupported-version.md +32 -0
  338. package/docs/errors/untagged-content.md +35 -0
  339. package/docs/errors/warnings-truncated.md +35 -0
  340. package/docs/errors/wasm-trap.md +37 -0
  341. package/docs/errors/whole-font-rebuilt.md +30 -0
  342. package/docs/errors/worker-crashed.md +33 -0
  343. package/docs/errors/worker-failed.md +32 -0
  344. package/docs/errors/worker-version-mismatch.md +34 -0
  345. package/docs/errors/would-invalidate-signatures.md +38 -0
  346. package/docs/errors/wrong-document.md +33 -0
  347. package/docs/errors/wrong-password.md +34 -0
  348. package/docs/errors/xobject-cycle.md +36 -0
  349. package/docs/errors/xref-repaired.md +36 -0
  350. package/docs/errors/xrefstm-ignored.md +34 -0
  351. package/docs/llms.txt +88 -0
  352. package/docs/pages/concepts/dependencies.md +44 -0
  353. package/docs/pages/concepts/errors-and-warnings.md +64 -0
  354. package/docs/pages/concepts/how-lamina-thinks.md +86 -0
  355. package/docs/pages/concepts/pages-and-coordinates.md +67 -0
  356. package/docs/pages/guides/accessible-pdfs.md +260 -0
  357. package/docs/pages/guides/archival-pdfs.md +429 -0
  358. package/docs/pages/guides/edit-a-pdf.md +137 -0
  359. package/docs/pages/guides/fonts-and-text.md +202 -0
  360. package/docs/pages/guides/images-and-vectors.md +219 -0
  361. package/docs/pages/guides/keep-the-page-responsive.md +81 -0
  362. package/docs/pages/guides/links-outlines-and-metadata.md +222 -0
  363. package/docs/pages/guides/password-protected-files.md +70 -0
  364. package/docs/pages/guides/save-a-pdf.md +144 -0
  365. package/docs/pages/guides/untrusted-files.md +80 -0
  366. package/docs/pages/index.md +33 -0
  367. package/docs/pages/install.md +75 -0
  368. package/docs/pages/quick-start/browser.md +67 -0
  369. package/docs/pages/quick-start/bun.md +60 -0
  370. package/docs/pages/quick-start/deno.md +58 -0
  371. package/docs/pages/quick-start/node.md +61 -0
  372. package/docs/pages/quick-start/rust.md +58 -0
  373. package/docs/pages/quick-start/workers.md +139 -0
  374. package/docs/pages/recipes/cloudflare-worker.md +115 -0
  375. package/docs/pages/recipes/extract-markdown.md +114 -0
  376. package/docs/pages/recipes/generate-then-edit.md +135 -0
  377. package/docs/pages/recipes/hello.md +94 -0
  378. package/docs/pages/recipes/images-and-vectors.md +209 -0
  379. package/docs/pages/recipes/invoice.md +226 -0
  380. package/docs/pages/recipes/links-and-outlines.md +215 -0
  381. package/docs/pages/recipes/multilingual.md +189 -0
  382. package/docs/pages/recipes/open-untrusted.md +65 -0
  383. package/docs/pages/recipes/pdf-a-archive.md +205 -0
  384. package/docs/pages/recipes/pdf-a3-invoice-with-xml.md +222 -0
  385. package/docs/pages/recipes/pdf-ua-report.md +237 -0
  386. package/docs/pages/recipes/report.md +125 -0
  387. package/docs/pages/recipes/web-worker-client.md +64 -0
  388. package/docs/pages/recipes.md +47 -0
  389. package/docs/pages/reference/changelog.md +86 -0
  390. package/docs/pages/reference/codes.md +14 -0
  391. package/docs/pages/reference/glossary.md +108 -0
  392. package/docs/pages/reference/rust.md +36 -0
  393. package/docs/pages/reference/stability.md +59 -0
  394. package/docs/pages/start/coding-agents.md +45 -0
  395. package/docs/pages/start/first-pdf.md +77 -0
  396. package/docs/pages/troubleshooting.md +74 -0
  397. package/docs/renames.json +86 -0
  398. package/docs/schemas/error.schema.json +305 -0
  399. package/docs/schemas/renames.schema.json +29 -0
  400. package/package.json +5 -3
  401. package/schemas/error.schema.json +19 -2
@@ -0,0 +1,253 @@
1
+ ---
2
+ version: "0.2.0-alpha.3"
3
+ ---
4
+
5
+ [**@laminapdf/sdk**](../README.md)
6
+
7
+ ***
8
+
9
+ [@laminapdf/sdk](../README.md) / PageRef
10
+
11
+ # Class: PageRef
12
+
13
+ A page of a [Document](Document.md), held by its ID: moving pages doesn't retarget it (ADR 0028 F2).
14
+ Freed with its document; every call after that throws `disposed`.
15
+
16
+ ## Extends
17
+
18
+ - `Handle`\<`BaseGlue`\>
19
+
20
+ ## Accessors
21
+
22
+ ### id
23
+
24
+ #### Get Signature
25
+
26
+ > **get** **id**(): `string`
27
+
28
+ The page's stable ID (`p12.0`).
29
+
30
+ ##### Returns
31
+
32
+ `string`
33
+
34
+ ***
35
+
36
+ ### index
37
+
38
+ #### Get Signature
39
+
40
+ > **get** **index**(): `number`
41
+
42
+ The page's current 0-based index.
43
+
44
+ ##### Throws
45
+
46
+ [LaminaPdfError](LaminaPdfError.md) `unknown-page` when it is gone.
47
+
48
+ ##### Returns
49
+
50
+ `number`
51
+
52
+ ***
53
+
54
+ ### info
55
+
56
+ #### Get Signature
57
+
58
+ > **get** **info**(): `PageInfoJs`
59
+
60
+ The page's facts now.
61
+
62
+ ##### Throws
63
+
64
+ [LaminaPdfError](LaminaPdfError.md) `unknown-page` when it is gone.
65
+
66
+ ##### Returns
67
+
68
+ `PageInfoJs`
69
+
70
+ ***
71
+
72
+ ### instance
73
+
74
+ #### Get Signature
75
+
76
+ > **get** `protected` **instance**(): `Instance`\<`G`\>
77
+
78
+ The instance this handle lives in (for the handles it makes).
79
+
80
+ ##### Returns
81
+
82
+ `Instance`\<`G`\>
83
+
84
+ #### Inherited from
85
+
86
+ `Handle.instance`
87
+
88
+ ***
89
+
90
+ ### isFreed
91
+
92
+ #### Get Signature
93
+
94
+ > **get** `protected` **isFreed**(): `boolean`
95
+
96
+ Whether `free()` ran on this handle or its parent.
97
+
98
+ ##### Returns
99
+
100
+ `boolean`
101
+
102
+ #### Inherited from
103
+
104
+ `Handle.isFreed`
105
+
106
+ ***
107
+
108
+ ### owned
109
+
110
+ #### Get Signature
111
+
112
+ > **get** `protected` **owned**(): `boolean`
113
+
114
+ Whether the handle's raw objects can be freed: its instance is current and hasn't trapped.
115
+
116
+ ##### Returns
117
+
118
+ `boolean`
119
+
120
+ #### Inherited from
121
+
122
+ `Handle.owned`
123
+
124
+ ## Methods
125
+
126
+ ### \[dispose\]()
127
+
128
+ > **\[dispose\]**(): `void`
129
+
130
+ Frees the handle at the end of a `using` block (an alias of `free()`).
131
+
132
+ #### Returns
133
+
134
+ `void`
135
+
136
+ #### Inherited from
137
+
138
+ `Handle.[dispose]`
139
+
140
+ ***
141
+
142
+ ### assertLive()
143
+
144
+ > `protected` **assertLive**(): `void`
145
+
146
+ #### Returns
147
+
148
+ `void`
149
+
150
+ #### Throws
151
+
152
+ [LaminaPdfError](LaminaPdfError.md) `disposed` after `free()` (here or on the parent);
153
+ `instance-reset` when the instance was replaced (a trapped one is replaced first).
154
+
155
+ #### Inherited from
156
+
157
+ `Handle.assertLive`
158
+
159
+ ***
160
+
161
+ ### call()
162
+
163
+ > `protected` **call**\<`T`\>(`f`): `T`
164
+
165
+ Runs `f` (calls into the glue) on this live handle; see Instance.call.
166
+
167
+ #### Type Parameters
168
+
169
+ ##### T
170
+
171
+ `T`
172
+
173
+ #### Parameters
174
+
175
+ ##### f
176
+
177
+ (`glue`) => `T`
178
+
179
+ #### Returns
180
+
181
+ `T`
182
+
183
+ #### Inherited from
184
+
185
+ `Handle.call`
186
+
187
+ ***
188
+
189
+ ### free()
190
+
191
+ > **free**(): `void`
192
+
193
+ Frees the handle's memory now; without it, the garbage collector frees it later. A second
194
+ call does nothing, and any other call afterwards throws `disposed`. Prefer `using`, which
195
+ calls this at the end of the block.
196
+
197
+ #### Returns
198
+
199
+ `void`
200
+
201
+ #### Inherited from
202
+
203
+ `Handle.free`
204
+
205
+ ***
206
+
207
+ ### release()
208
+
209
+ > `protected` **release**(): `void`
210
+
211
+ Frees the WebAssembly side; called at most once, and only while [owned](#owned).
212
+
213
+ #### Returns
214
+
215
+ `void`
216
+
217
+ #### Overrides
218
+
219
+ `Handle.release`
220
+
221
+ ***
222
+
223
+ ### text()
224
+
225
+ > **text**(`options?`): [`PageText`](PageText.md)
226
+
227
+ The page's text: lines in reading order, runs, and every glyph's quad in page space.
228
+ Needs a document opened while the extract or text module was loaded.
229
+
230
+ #### Parameters
231
+
232
+ ##### options?
233
+
234
+ [`PageTextOptions`](../interfaces/PageTextOptions.md)
235
+
236
+ `skipInvisible` leaves out invisible text (OCR layers).
237
+
238
+ #### Returns
239
+
240
+ [`PageText`](PageText.md)
241
+
242
+ #### Example
243
+
244
+ ```ts
245
+ await init({ extract: true });
246
+ const doc = Document.open(bytes);
247
+ const text = doc.page(0).text().text();
248
+ ```
249
+
250
+ #### Throws
251
+
252
+ [LaminaPdfError](LaminaPdfError.md) `extract-module-not-loaded` for a document opened in the base
253
+ module; `unknown-page`; reading errors (`data-pending` for a range document: use `ensure`).
@@ -0,0 +1,129 @@
1
+ ---
2
+ version: "0.2.0-alpha.3"
3
+ ---
4
+
5
+ [**@laminapdf/sdk**](../README.md)
6
+
7
+ ***
8
+
9
+ [@laminapdf/sdk](../README.md) / PageText
10
+
11
+ # Class: PageText
12
+
13
+ A page's extracted text: lines in reading order, and runs with their glyphs' quads.
14
+
15
+ ## Properties
16
+
17
+ ### glyphCount
18
+
19
+ > `readonly` **glyphCount**: `number`
20
+
21
+ The number of glyphs.
22
+
23
+ ## Accessors
24
+
25
+ ### buffers
26
+
27
+ #### Get Signature
28
+
29
+ > **get** **buffers**(): `object`
30
+
31
+ The arrays as the WASM returned them: `quads` (8 numbers per glyph), `glyphText` and
32
+ `glyphOffsets` (glyph i is `glyphText.slice(glyphOffsets[i], glyphOffsets[i + 1])`). Post
33
+ `quads.buffer` and `glyphOffsets.buffer` as transferables to move them to another thread;
34
+ that detaches them here, and this PageText's `glyph()` and `glyphs()` then throw (`lines`
35
+ and `runs` keep working). They are this PageText's own arrays, not copies: writing to them
36
+ changes what `glyph()` returns.
37
+
38
+ ##### Returns
39
+
40
+ `object`
41
+
42
+ ###### glyphOffsets
43
+
44
+ > `readonly` **glyphOffsets**: `Uint32Array`
45
+
46
+ ###### glyphText
47
+
48
+ > `readonly` **glyphText**: `string`
49
+
50
+ ###### quads
51
+
52
+ > `readonly` **quads**: `Float32Array`
53
+
54
+ ***
55
+
56
+ ### lines
57
+
58
+ #### Get Signature
59
+
60
+ > **get** **lines**(): readonly `string`[]
61
+
62
+ The text by line (runs on one baseline joined, trimmed), in content order.
63
+
64
+ ##### Returns
65
+
66
+ readonly `string`[]
67
+
68
+ ***
69
+
70
+ ### runs
71
+
72
+ #### Get Signature
73
+
74
+ > **get** **runs**(): readonly [`PageTextRun`](PageTextRun.md)[]
75
+
76
+ The runs, in content order (made on first use).
77
+
78
+ ##### Returns
79
+
80
+ readonly [`PageTextRun`](PageTextRun.md)[]
81
+
82
+ ***
83
+
84
+ ### unmapped
85
+
86
+ #### Get Signature
87
+
88
+ > **get** **unmapped**(): `number`
89
+
90
+ Glyphs whose Unicode is unknown (shown as U+FFFD).
91
+
92
+ ##### Returns
93
+
94
+ `number`
95
+
96
+ ## Methods
97
+
98
+ ### glyph()
99
+
100
+ > **glyph**(`i`): [`TextGlyph`](../interfaces/TextGlyph.md)
101
+
102
+ Glyph `i`'s text and quad.
103
+
104
+ #### Parameters
105
+
106
+ ##### i
107
+
108
+ `number`
109
+
110
+ #### Returns
111
+
112
+ [`TextGlyph`](../interfaces/TextGlyph.md)
113
+
114
+ #### Throws
115
+
116
+ `RangeError` for an index outside `0 … glyphCount - 1`; `TypeError` once
117
+ [PageText.buffers](#buffers)' arrays were transferred to another thread.
118
+
119
+ ***
120
+
121
+ ### text()
122
+
123
+ > **text**(): `string`
124
+
125
+ The page's text: its lines joined with `\n`.
126
+
127
+ #### Returns
128
+
129
+ `string`
@@ -0,0 +1,167 @@
1
+ ---
2
+ version: "0.2.0-alpha.3"
3
+ ---
4
+
5
+ [**@laminapdf/sdk**](../README.md)
6
+
7
+ ***
8
+
9
+ [@laminapdf/sdk](../README.md) / PageTextRun
10
+
11
+ # Class: PageTextRun
12
+
13
+ A run: glyphs of one font, size, direction and marked content on one baseline, in logical order.
14
+
15
+ ## Accessors
16
+
17
+ ### actualText
18
+
19
+ #### Get Signature
20
+
21
+ > **get** **actualText**(): `boolean`
22
+
23
+ The text comes from an `/ActualText` span.
24
+
25
+ ##### Returns
26
+
27
+ `boolean`
28
+
29
+ ***
30
+
31
+ ### bounds
32
+
33
+ #### Get Signature
34
+
35
+ > **get** **bounds**(): `object`
36
+
37
+ The bounds of its glyph quads in page space: `{ x, y, width, height }`.
38
+
39
+ ##### Returns
40
+
41
+ `object`
42
+
43
+ ###### height
44
+
45
+ > `readonly` **height**: `number`
46
+
47
+ ###### width
48
+
49
+ > `readonly` **width**: `number`
50
+
51
+ ###### x
52
+
53
+ > `readonly` **x**: `number`
54
+
55
+ ###### y
56
+
57
+ > `readonly` **y**: `number`
58
+
59
+ ***
60
+
61
+ ### font
62
+
63
+ #### Get Signature
64
+
65
+ > **get** **font**(): `string`
66
+
67
+ The font's `/BaseFont` (document text).
68
+
69
+ ##### Returns
70
+
71
+ `string`
72
+
73
+ ***
74
+
75
+ ### glyphRange
76
+
77
+ #### Get Signature
78
+
79
+ > **get** **glyphRange**(): readonly \[`number`, `number`\]
80
+
81
+ The `[start, end)` range of its glyphs in the page's glyph arrays ([PageText.buffers](PageText.md#buffers)).
82
+
83
+ ##### Returns
84
+
85
+ readonly \[`number`, `number`\]
86
+
87
+ ***
88
+
89
+ ### invisible
90
+
91
+ #### Get Signature
92
+
93
+ > **get** **invisible**(): `boolean`
94
+
95
+ Drawn invisibly (`Tr` 3 or 7: an OCR layer, hidden text).
96
+
97
+ ##### Returns
98
+
99
+ `boolean`
100
+
101
+ ***
102
+
103
+ ### mcid
104
+
105
+ #### Get Signature
106
+
107
+ > **get** **mcid**(): `number` \| `undefined`
108
+
109
+ The marked-content ID the run is in, if any (structure tree links).
110
+
111
+ ##### Returns
112
+
113
+ `number` \| `undefined`
114
+
115
+ ***
116
+
117
+ ### size
118
+
119
+ #### Get Signature
120
+
121
+ > **get** **size**(): `number`
122
+
123
+ Font size, the text matrix applied.
124
+
125
+ ##### Returns
126
+
127
+ `number`
128
+
129
+ ***
130
+
131
+ ### text
132
+
133
+ #### Get Signature
134
+
135
+ > **get** **text**(): `string`
136
+
137
+ The run's text in logical order (document text).
138
+
139
+ ##### Returns
140
+
141
+ `string`
142
+
143
+ ***
144
+
145
+ ### vertical
146
+
147
+ #### Get Signature
148
+
149
+ > **get** **vertical**(): `boolean`
150
+
151
+ Vertical writing.
152
+
153
+ ##### Returns
154
+
155
+ `boolean`
156
+
157
+ ## Methods
158
+
159
+ ### glyphs()
160
+
161
+ > **glyphs**(): [`TextGlyph`](../interfaces/TextGlyph.md)[]
162
+
163
+ Its glyphs, with their quads (built on each call).
164
+
165
+ #### Returns
166
+
167
+ [`TextGlyph`](../interfaces/TextGlyph.md)[]
@@ -0,0 +1,97 @@
1
+ ---
2
+ version: "0.2.0-alpha.3"
3
+ ---
4
+
5
+ [**@laminapdf/sdk**](../README.md)
6
+
7
+ ***
8
+
9
+ [@laminapdf/sdk](../README.md) / PendingPath
10
+
11
+ # Class: PendingPath
12
+
13
+ A path waiting to be painted: fill it, stroke it, both, or clip to it.
14
+
15
+ ## Methods
16
+
17
+ ### clip()
18
+
19
+ > **clip**(`rule?`): [`Surface`](Surface.md)
20
+
21
+ Clips what is drawn next to the path, until the next `restore`.
22
+
23
+ #### Parameters
24
+
25
+ ##### rule?
26
+
27
+ `"nonZero"` \| `"evenOdd"` = `"nonZero"`
28
+
29
+ #### Returns
30
+
31
+ [`Surface`](Surface.md)
32
+
33
+ the surface.
34
+
35
+ ***
36
+
37
+ ### fill()
38
+
39
+ > **fill**(`rule?`): [`Surface`](Surface.md)
40
+
41
+ Fills the path with the fill colour.
42
+
43
+ #### Parameters
44
+
45
+ ##### rule?
46
+
47
+ `"nonZero"` \| `"evenOdd"` = `"nonZero"`
48
+
49
+ #### Returns
50
+
51
+ [`Surface`](Surface.md)
52
+
53
+ the surface.
54
+
55
+ ***
56
+
57
+ ### fillStroke()
58
+
59
+ > **fillStroke**(`rule?`, `style?`): [`Surface`](Surface.md)
60
+
61
+ Fills, then strokes the path.
62
+
63
+ #### Parameters
64
+
65
+ ##### rule?
66
+
67
+ `"nonZero"` \| `"evenOdd"` = `"nonZero"`
68
+
69
+ ##### style?
70
+
71
+ [`StrokeStyle`](../interfaces/StrokeStyle.md) = `{}`
72
+
73
+ #### Returns
74
+
75
+ [`Surface`](Surface.md)
76
+
77
+ the surface.
78
+
79
+ ***
80
+
81
+ ### stroke()
82
+
83
+ > **stroke**(`style?`): [`Surface`](Surface.md)
84
+
85
+ Strokes the path with the stroke colour and `style`.
86
+
87
+ #### Parameters
88
+
89
+ ##### style?
90
+
91
+ [`StrokeStyle`](../interfaces/StrokeStyle.md) = `{}`
92
+
93
+ #### Returns
94
+
95
+ [`Surface`](Surface.md)
96
+
97
+ the surface.