@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,147 @@
1
+ ---
2
+ version: "0.2.0-alpha.3"
3
+ ---
4
+
5
+ **@laminapdf/sdk**
6
+
7
+ ***
8
+
9
+ # @laminapdf/sdk
10
+
11
+ ## Classes
12
+
13
+ - [Builder](classes/Builder.md)
14
+ - [Document](classes/Document.md)
15
+ - [Font](classes/Font.md)
16
+ - [Image](classes/Image.md)
17
+ - [LaminaPdfError](classes/LaminaPdfError.md)
18
+ - [Page](classes/Page.md)
19
+ - [PageRef](classes/PageRef.md)
20
+ - [PageText](classes/PageText.md)
21
+ - [PageTextRun](classes/PageTextRun.md)
22
+ - [PendingPath](classes/PendingPath.md)
23
+ - [SaveJob](classes/SaveJob.md)
24
+ - [Surface](classes/Surface.md)
25
+ - [Transaction](classes/Transaction.md)
26
+
27
+ ## Interfaces
28
+
29
+ - [BuilderOptions](interfaces/BuilderOptions.md)
30
+ - [ByteRange](interfaces/ByteRange.md)
31
+ - [ChunkOptions](interfaces/ChunkOptions.md)
32
+ - [Diagnostic](interfaces/Diagnostic.md)
33
+ - [ExtractOptions](interfaces/ExtractOptions.md)
34
+ - [ExtractResult](interfaces/ExtractResult.md)
35
+ - [FontInfo](interfaces/FontInfo.md)
36
+ - [HttpRangeOptions](interfaces/HttpRangeOptions.md)
37
+ - [InitOptions](interfaces/InitOptions.md)
38
+ - [Leak](interfaces/Leak.md)
39
+ - [Location](interfaces/Location.md)
40
+ - [OpenOptions](interfaces/OpenOptions.md)
41
+ - [OpLog](interfaces/OpLog.md)
42
+ - [PageTextOptions](interfaces/PageTextOptions.md)
43
+ - [PathBuilder](interfaces/PathBuilder.md)
44
+ - [QuadPoint](interfaces/QuadPoint.md)
45
+ - [RangeOptions](interfaces/RangeOptions.md)
46
+ - [RangeSource](interfaces/RangeSource.md)
47
+ - [StrokeStyle](interfaces/StrokeStyle.md)
48
+ - [TagSpec](interfaces/TagSpec.md)
49
+ - [TextBoxOptions](interfaces/TextBoxOptions.md)
50
+ - [TextGlyph](interfaces/TextGlyph.md)
51
+ - [TextOptions](interfaces/TextOptions.md)
52
+ - [WasmMemory](interfaces/WasmMemory.md)
53
+
54
+ ## Type Aliases
55
+
56
+ - [AfRelationship](type-aliases/AfRelationship.md)
57
+ - [Align](type-aliases/Align.md)
58
+ - [ArtifactKind](type-aliases/ArtifactKind.md)
59
+ - [AttachmentOptions](type-aliases/AttachmentOptions.md)
60
+ - [BlendMode](type-aliases/BlendMode.md)
61
+ - [BoxRect](type-aliases/BoxRect.md)
62
+ - [BuildOptions](type-aliases/BuildOptions.md)
63
+ - [Cell](type-aliases/Cell.md)
64
+ - [Chunk](type-aliases/Chunk.md)
65
+ - [Color](type-aliases/Color.md)
66
+ - [Coordinates](type-aliases/Coordinates.md)
67
+ - [Direction](type-aliases/Direction.md)
68
+ - [DocumentInfo](type-aliases/DocumentInfo.md)
69
+ - [Dropped](type-aliases/Dropped.md)
70
+ - [DropReason](type-aliases/DropReason.md)
71
+ - [Edited](type-aliases/Edited.md)
72
+ - [ErrorCode](type-aliases/ErrorCode.md)
73
+ - [ErrorKind](type-aliases/ErrorKind.md)
74
+ - [ExtractedBlock](type-aliases/ExtractedBlock.md)
75
+ - [ExtractedPage](type-aliases/ExtractedPage.md)
76
+ - [ExtractedSource](type-aliases/ExtractedSource.md)
77
+ - [ExtractFormat](type-aliases/ExtractFormat.md)
78
+ - [Extraction](type-aliases/Extraction.md)
79
+ - [FillRule](type-aliases/FillRule.md)
80
+ - [Fit](type-aliases/Fit.md)
81
+ - [Flags](type-aliases/Flags.md)
82
+ - [Generator](type-aliases/Generator.md)
83
+ - [GlyphQuad](type-aliases/GlyphQuad.md)
84
+ - [InfoPatch](type-aliases/InfoPatch.md)
85
+ - [LaminaPdfWarning](type-aliases/LaminaPdfWarning.md)
86
+ - [LimitName](type-aliases/LimitName.md)
87
+ - [Limits](type-aliases/Limits.md)
88
+ - [LineBox](type-aliases/LineBox.md)
89
+ - [LineCap](type-aliases/LineCap.md)
90
+ - [LineJoin](type-aliases/LineJoin.md)
91
+ - [LinkTarget](type-aliases/LinkTarget.md)
92
+ - [Metadata](type-aliases/Metadata.md)
93
+ - [Op](type-aliases/Op.md)
94
+ - [OutlineEntry](type-aliases/OutlineEntry.md)
95
+ - [Overflow](type-aliases/Overflow.md)
96
+ - [PageInfo](type-aliases/PageInfo.md)
97
+ - [PageLabel](type-aliases/PageLabel.md)
98
+ - [PageSizeName](type-aliases/PageSizeName.md)
99
+ - [Point](type-aliases/Point.md)
100
+ - [Profile](type-aliases/Profile.md)
101
+ - [Progress](type-aliases/Progress.md)
102
+ - [ReadingOrder](type-aliases/ReadingOrder.md)
103
+ - [Rect](type-aliases/Rect.md)
104
+ - [Region](type-aliases/Region.md)
105
+ - [RenderMode](type-aliases/RenderMode.md)
106
+ - [Rotation](type-aliases/Rotation.md)
107
+ - [SaveOptions](type-aliases/SaveOptions.md)
108
+ - [SaveReport](type-aliases/SaveReport.md)
109
+ - [Span](type-aliases/Span.md)
110
+ - [SplitOn](type-aliases/SplitOn.md)
111
+ - [Standard14](type-aliases/Standard14.md)
112
+ - [StructRef](type-aliases/StructRef.md)
113
+ - [StructSource](type-aliases/StructSource.md)
114
+ - [TableDetector](type-aliases/TableDetector.md)
115
+ - [TableMode](type-aliases/TableMode.md)
116
+ - [TableScope](type-aliases/TableScope.md)
117
+ - [Tag](type-aliases/Tag.md)
118
+ - [TagName](type-aliases/TagName.md)
119
+ - [TextLayout](type-aliases/TextLayout.md)
120
+ - [TextRange](type-aliases/TextRange.md)
121
+ - [TextRunInfo](type-aliases/TextRunInfo.md)
122
+ - [Transform](type-aliases/Transform.md)
123
+ - [UndoOutcome](type-aliases/UndoOutcome.md)
124
+ - [ViewerPreferences](type-aliases/ViewerPreferences.md)
125
+ - [WarningCode](type-aliases/WarningCode.md)
126
+ - [WasmSource](type-aliases/WasmSource.md)
127
+
128
+ ## Variables
129
+
130
+ - [Matrix](variables/Matrix.md)
131
+ - [PAGE\_SIZES](variables/PAGE_SIZES.md)
132
+ - [TAG\_NAMES](variables/TAG_NAMES.md)
133
+
134
+ ## Functions
135
+
136
+ - [callbackSource](functions/callbackSource.md)
137
+ - [httpRangeSource](functions/httpRangeSource.md)
138
+ - [init](functions/init.md)
139
+ - [isExtractLoaded](functions/isExtractLoaded.md)
140
+ - [isInitialized](functions/isInitialized.md)
141
+ - [isLaminaPdfError](functions/isLaminaPdfError.md)
142
+ - [isTextLoaded](functions/isTextLoaded.md)
143
+ - [loadExtract](functions/loadExtract.md)
144
+ - [loadText](functions/loadText.md)
145
+ - [onLeak](functions/onLeak.md)
146
+ - [reset](functions/reset.md)
147
+ - [wasmMemory](functions/wasmMemory.md)
@@ -0,0 +1,467 @@
1
+ ---
2
+ version: "0.2.0-alpha.3"
3
+ ---
4
+
5
+ [**@laminapdf/sdk**](../README.md)
6
+
7
+ ***
8
+
9
+ [@laminapdf/sdk](../README.md) / Builder
10
+
11
+ # Class: Builder
12
+
13
+ Builds a new document: pages, navigation and metadata; [Builder.finish](#finish) returns a
14
+ [Document](Document.md) to save. Created in the text module when it is loaded (or `text: true`),
15
+ else in the reading module (text, extract, then base; vector and image pages only). `finish()`
16
+ frees its WebAssembly memory; to drop it unfinished, use `using` or [Builder.free](#free).
17
+
18
+ ## Example
19
+
20
+ ```ts
21
+ await init({ text: true });
22
+ const b = new Builder({ producer: "my app" });
23
+ const page = b.page("A4");
24
+ page.surface().text("Hello, world!", { font: Font.standard("Helvetica"), size: 24, at: [72, 96] });
25
+ page.finish();
26
+ const bytes = b.finish().save();
27
+ ```
28
+
29
+ ## Extends
30
+
31
+ - `Handle`\<`BaseGlue`\>
32
+
33
+ ## Constructors
34
+
35
+ ### Constructor
36
+
37
+ > **new Builder**(`options?`): `Builder`
38
+
39
+ #### Parameters
40
+
41
+ ##### options?
42
+
43
+ [`BuilderOptions`](../interfaces/BuilderOptions.md) = `{}`
44
+
45
+ version, file ID, producer, creation date, compression, tagging,
46
+ conformance `profiles`; `text`.
47
+
48
+ #### Returns
49
+
50
+ `Builder`
51
+
52
+ #### Throws
53
+
54
+ [LaminaPdfError](LaminaPdfError.md) `not-initialized`, `text-module-not-loaded`; `unknown-option`.
55
+
56
+ #### Overrides
57
+
58
+ `Handle<BaseGlue>.constructor`
59
+
60
+ ## Accessors
61
+
62
+ ### hasText
63
+
64
+ #### Get Signature
65
+
66
+ > **get** **hasText**(): `boolean`
67
+
68
+ Whether this builder draws in the text module (fonts and text).
69
+
70
+ ##### Returns
71
+
72
+ `boolean`
73
+
74
+ ***
75
+
76
+ ### instance
77
+
78
+ #### Get Signature
79
+
80
+ > **get** `protected` **instance**(): `Instance`\<`G`\>
81
+
82
+ The instance this handle lives in (for the handles it makes).
83
+
84
+ ##### Returns
85
+
86
+ `Instance`\<`G`\>
87
+
88
+ #### Inherited from
89
+
90
+ `Handle.instance`
91
+
92
+ ***
93
+
94
+ ### isFreed
95
+
96
+ #### Get Signature
97
+
98
+ > **get** `protected` **isFreed**(): `boolean`
99
+
100
+ Whether `free()` ran on this handle or its parent.
101
+
102
+ ##### Returns
103
+
104
+ `boolean`
105
+
106
+ #### Inherited from
107
+
108
+ `Handle.isFreed`
109
+
110
+ ***
111
+
112
+ ### owned
113
+
114
+ #### Get Signature
115
+
116
+ > **get** `protected` **owned**(): `boolean`
117
+
118
+ Whether the handle's raw objects can be freed: its instance is current and hasn't trapped.
119
+
120
+ ##### Returns
121
+
122
+ `boolean`
123
+
124
+ #### Inherited from
125
+
126
+ `Handle.owned`
127
+
128
+ ## Methods
129
+
130
+ ### \[dispose\]()
131
+
132
+ > **\[dispose\]**(): `void`
133
+
134
+ Frees the handle at the end of a `using` block (an alias of `free()`).
135
+
136
+ #### Returns
137
+
138
+ `void`
139
+
140
+ #### Inherited from
141
+
142
+ `Handle.[dispose]`
143
+
144
+ ***
145
+
146
+ ### assertLive()
147
+
148
+ > `protected` **assertLive**(): `void`
149
+
150
+ #### Returns
151
+
152
+ `void`
153
+
154
+ #### Throws
155
+
156
+ [LaminaPdfError](LaminaPdfError.md) `disposed` after `free()` (here or on the parent);
157
+ `instance-reset` when the instance was replaced (a trapped one is replaced first).
158
+
159
+ #### Inherited from
160
+
161
+ `Handle.assertLive`
162
+
163
+ ***
164
+
165
+ ### attach()
166
+
167
+ > **attach**(`name`, `bytes`, `mime`, `options?`): `this`
168
+
169
+ Attaches a file: PDF/A-3b's associated files, such as an e-invoice's XML. The same name
170
+ again replaces the file. PDF/A-2b and PDF/A-2u refuse attachments at [Builder.finish](#finish),
171
+ and every PDF/A profile refuses one without a MIME type there.
172
+
173
+ #### Parameters
174
+
175
+ ##### name
176
+
177
+ `string`
178
+
179
+ the file name viewers show.
180
+
181
+ ##### bytes
182
+
183
+ `Uint8Array`
184
+
185
+ the file's contents.
186
+
187
+ ##### mime
188
+
189
+ `string`
190
+
191
+ its MIME type, such as `text/xml`.
192
+
193
+ ##### options?
194
+
195
+ `AttachmentInit`
196
+
197
+ how the file relates to the document (`relationship`, default
198
+ `unspecified`), its `description` and `modDate`.
199
+
200
+ #### Returns
201
+
202
+ `this`
203
+
204
+ #### Throws
205
+
206
+ [LaminaPdfError](LaminaPdfError.md) `invalid-argument` for a `modDate` that isn't a PDF date,
207
+ `unknown-option` for an unknown key, `builder-finished` after [Builder.finish](#finish).
208
+
209
+ ***
210
+
211
+ ### call()
212
+
213
+ > `protected` **call**\<`T`\>(`f`): `T`
214
+
215
+ Runs `f` (calls into the glue) on this live handle; see Instance.call.
216
+
217
+ #### Type Parameters
218
+
219
+ ##### T
220
+
221
+ `T`
222
+
223
+ #### Parameters
224
+
225
+ ##### f
226
+
227
+ (`glue`) => `T`
228
+
229
+ #### Returns
230
+
231
+ `T`
232
+
233
+ #### Inherited from
234
+
235
+ `Handle.call`
236
+
237
+ ***
238
+
239
+ ### destination()
240
+
241
+ > **destination**(`name`, `index`, `fit?`): `this`
242
+
243
+ Defines the named destination `name`: page `index`, shown as `fit` (default: the page).
244
+
245
+ #### Parameters
246
+
247
+ ##### name
248
+
249
+ `string`
250
+
251
+ ##### index
252
+
253
+ `number`
254
+
255
+ ##### fit?
256
+
257
+ `FitInit`
258
+
259
+ #### Returns
260
+
261
+ `this`
262
+
263
+ ***
264
+
265
+ ### finish()
266
+
267
+ > **finish**(): [`Document`](Document.md)
268
+
269
+ Writes fonts, links, the page tree, outline and metadata; the builder (and its unfinished
270
+ pages) take no more calls afterwards.
271
+
272
+ #### Returns
273
+
274
+ [`Document`](Document.md)
275
+
276
+ the new document (unsaved; its save is a full rewrite).
277
+
278
+ #### Throws
279
+
280
+ [LaminaPdfError](LaminaPdfError.md) `page-index-out-of-range`, `unknown-destination`,
281
+ `invalid-page-labels`, `invalid-geometry`, `subset-failed`, `builder-finished`; under a
282
+ profile (`profiles` in the options), the first rule the document breaks, with that rule's
283
+ code (the error reference lists them, from `profile-version-conflict` on).
284
+
285
+ ***
286
+
287
+ ### font()
288
+
289
+ > **font**(`font`): [`FontInfo`](../interfaces/FontInfo.md)
290
+
291
+ Registers `font` with this builder (otherwise it is registered at first use).
292
+
293
+ #### Parameters
294
+
295
+ ##### font
296
+
297
+ [`Font`](Font.md)
298
+
299
+ #### Returns
300
+
301
+ [`FontInfo`](../interfaces/FontInfo.md)
302
+
303
+ #### Throws
304
+
305
+ [LaminaPdfError](LaminaPdfError.md) `text-module-not-loaded`, `invalid-font`, `font-not-embeddable`.
306
+
307
+ ***
308
+
309
+ ### free()
310
+
311
+ > **free**(): `void`
312
+
313
+ Frees the handle's memory now; without it, the garbage collector frees it later. A second
314
+ call does nothing, and any other call afterwards throws `disposed`. Prefer `using`, which
315
+ calls this at the end of the block.
316
+
317
+ #### Returns
318
+
319
+ `void`
320
+
321
+ #### Inherited from
322
+
323
+ `Handle.free`
324
+
325
+ ***
326
+
327
+ ### lang()
328
+
329
+ > **lang**(`tag`): `this`
330
+
331
+ The natural language (`/Lang`), a BCP 47 tag.
332
+
333
+ #### Parameters
334
+
335
+ ##### tag
336
+
337
+ `string`
338
+
339
+ #### Returns
340
+
341
+ `this`
342
+
343
+ ***
344
+
345
+ ### metadata()
346
+
347
+ > **metadata**(`metadata`): `this`
348
+
349
+ The metadata, written as the Info dictionary and an XMP packet.
350
+
351
+ #### Parameters
352
+
353
+ ##### metadata
354
+
355
+ `MetadataInit`
356
+
357
+ #### Returns
358
+
359
+ `this`
360
+
361
+ ***
362
+
363
+ ### outline()
364
+
365
+ > **outline**(`entries`): `string`[]
366
+
367
+ Adds outline (bookmark) items with their children.
368
+
369
+ #### Parameters
370
+
371
+ ##### entries
372
+
373
+ readonly `OutlineEntryInit`[]
374
+
375
+ #### Returns
376
+
377
+ `string`[]
378
+
379
+ their IDs, in pre-order.
380
+
381
+ ***
382
+
383
+ ### page()
384
+
385
+ > **page**(`size?`): [`Page`](Page.md)
386
+
387
+ A new page of a named size or `[width, height]` in points.
388
+
389
+ #### Parameters
390
+
391
+ ##### size?
392
+
393
+ [`PageSizeName`](../type-aliases/PageSizeName.md) \| readonly \[`number`, `number`\] = `"A4"`
394
+
395
+ #### Returns
396
+
397
+ [`Page`](Page.md)
398
+
399
+ ***
400
+
401
+ ### pageLabels()
402
+
403
+ > **pageLabels**(`ranges`): `this`
404
+
405
+ The page labels (`i, ii, 1, 2…`), ranges by first page; checked at finish.
406
+
407
+ #### Parameters
408
+
409
+ ##### ranges
410
+
411
+ readonly `PageLabelInit`[]
412
+
413
+ #### Returns
414
+
415
+ `this`
416
+
417
+ ***
418
+
419
+ ### release()
420
+
421
+ > `protected` **release**(): `void`
422
+
423
+ Frees the WebAssembly side; called at most once, and only while [owned](#owned).
424
+
425
+ #### Returns
426
+
427
+ `void`
428
+
429
+ #### Overrides
430
+
431
+ `Handle.release`
432
+
433
+ ***
434
+
435
+ ### viewerPreferences()
436
+
437
+ > **viewerPreferences**(`preferences`): `this`
438
+
439
+ How viewers present the document when it opens.
440
+
441
+ #### Parameters
442
+
443
+ ##### preferences
444
+
445
+ `ViewerPreferencesInit`
446
+
447
+ #### Returns
448
+
449
+ `this`
450
+
451
+ ***
452
+
453
+ ### create()
454
+
455
+ > `static` **create**(`options?`): `Builder`
456
+
457
+ As `new Builder(options)`.
458
+
459
+ #### Parameters
460
+
461
+ ##### options?
462
+
463
+ [`BuilderOptions`](../interfaces/BuilderOptions.md)
464
+
465
+ #### Returns
466
+
467
+ `Builder`