@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.
- package/README.md +42 -7
- package/dist/api.d.ts +5 -2
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +3 -2
- package/dist/api.js.map +1 -1
- package/dist/builder.d.ts +35 -19
- package/dist/builder.d.ts.map +1 -1
- package/dist/builder.js +114 -80
- package/dist/builder.js.map +1 -1
- package/dist/document.d.ts +47 -21
- package/dist/document.d.ts.map +1 -1
- package/dist/document.js +112 -67
- package/dist/document.js.map +1 -1
- package/dist/errors.d.ts +5 -5
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +10 -16
- package/dist/errors.js.map +1 -1
- package/dist/extract.d.ts +57 -0
- package/dist/extract.d.ts.map +1 -0
- package/dist/extract.js +5 -0
- package/dist/extract.js.map +1 -0
- package/dist/font.d.ts +13 -6
- package/dist/font.d.ts.map +1 -1
- package/dist/font.js +50 -20
- package/dist/font.js.map +1 -1
- package/dist/generated/codes.d.ts +18 -6
- package/dist/generated/codes.d.ts.map +1 -1
- package/dist/generated/codes.js +59 -4
- package/dist/generated/codes.js.map +1 -1
- package/dist/generated/explain.d.ts.map +1 -1
- package/dist/generated/explain.js +27 -10
- package/dist/generated/explain.js.map +1 -1
- package/dist/generated/extract.d.ts +235 -0
- package/dist/generated/extract.d.ts.map +1 -0
- package/dist/generated/extract.js +4 -0
- package/dist/generated/extract.js.map +1 -0
- package/dist/init.d.ts +13 -5
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +23 -11
- package/dist/init.js.map +1 -1
- package/dist/internal/handle.d.ts +58 -0
- package/dist/internal/handle.d.ts.map +1 -0
- package/dist/internal/handle.js +113 -0
- package/dist/internal/handle.js.map +1 -0
- package/dist/internal/instance.d.ts +56 -0
- package/dist/internal/instance.d.ts.map +1 -0
- package/dist/internal/instance.js +125 -0
- package/dist/internal/instance.js.map +1 -0
- package/dist/source/http.js +1 -1
- package/dist/source/http.js.map +1 -1
- package/dist/source/range.d.ts +6 -1
- package/dist/source/range.d.ts.map +1 -1
- package/dist/source/range.js +10 -6
- package/dist/source/range.js.map +1 -1
- package/dist/text.d.ts +3 -3
- package/dist/text.d.ts.map +1 -1
- package/dist/text.js +3 -3
- package/dist/text.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +2 -2
- package/dist/version.js.map +1 -1
- package/dist/worker/client.d.ts +3 -2
- package/dist/worker/client.d.ts.map +1 -1
- package/dist/worker/client.js +6 -4
- package/dist/worker/client.js.map +1 -1
- package/dist/worker/entry.js +1 -1
- package/dist/worker/entry.js.map +1 -1
- package/dist/worker/server.d.ts.map +1 -1
- package/dist/worker/server.js +42 -9
- package/dist/worker/server.js.map +1 -1
- package/dist/worker/support.d.ts +6 -2
- package/dist/worker/support.d.ts.map +1 -1
- package/dist/worker/support.js +1 -0
- package/dist/worker/support.js.map +1 -1
- package/dist/worker/types.d.ts +8 -1
- package/dist/worker/types.d.ts.map +1 -1
- package/docs/AGENTS.md +14 -0
- package/docs/api/README.md +147 -0
- package/docs/api/classes/Builder.md +467 -0
- package/docs/api/classes/Document.md +742 -0
- package/docs/api/classes/Font.md +74 -0
- package/docs/api/classes/Image.md +140 -0
- package/docs/api/classes/LaminaPdfError.md +189 -0
- package/docs/api/classes/Page.md +178 -0
- package/docs/api/classes/PageRef.md +253 -0
- package/docs/api/classes/PageText.md +129 -0
- package/docs/api/classes/PageTextRun.md +167 -0
- package/docs/api/classes/PendingPath.md +97 -0
- package/docs/api/classes/SaveJob.md +205 -0
- package/docs/api/classes/Surface.md +326 -0
- package/docs/api/classes/Transaction.md +111 -0
- package/docs/api/functions/callbackSource.md +33 -0
- package/docs/api/functions/httpRangeSource.md +48 -0
- package/docs/api/functions/init.md +36 -0
- package/docs/api/functions/isExtractLoaded.md +21 -0
- package/docs/api/functions/isInitialized.md +19 -0
- package/docs/api/functions/isLaminaPdfError.md +41 -0
- package/docs/api/functions/isTextLoaded.md +19 -0
- package/docs/api/functions/loadExtract.md +28 -0
- package/docs/api/functions/loadText.md +28 -0
- package/docs/api/functions/onLeak.md +29 -0
- package/docs/api/functions/reset.md +22 -0
- package/docs/api/functions/wasmMemory.md +22 -0
- package/docs/api/interfaces/BuilderOptions.md +108 -0
- package/docs/api/interfaces/ByteRange.md +29 -0
- package/docs/api/interfaces/ChunkOptions.md +37 -0
- package/docs/api/interfaces/Diagnostic.md +67 -0
- package/docs/api/interfaces/ExtractOptions.md +92 -0
- package/docs/api/interfaces/ExtractResult.md +37 -0
- package/docs/api/interfaces/FontInfo.md +37 -0
- package/docs/api/interfaces/HttpRangeOptions.md +78 -0
- package/docs/api/interfaces/InitOptions.md +40 -0
- package/docs/api/interfaces/Leak.md +21 -0
- package/docs/api/interfaces/Location.md +53 -0
- package/docs/api/interfaces/OpLog.md +25 -0
- package/docs/api/interfaces/OpenOptions.md +37 -0
- package/docs/api/interfaces/PageTextOptions.md +21 -0
- package/docs/api/interfaces/PathBuilder.md +195 -0
- package/docs/api/interfaces/QuadPoint.md +25 -0
- package/docs/api/interfaces/RangeOptions.md +54 -0
- package/docs/api/interfaces/RangeSource.md +59 -0
- package/docs/api/interfaces/StrokeStyle.md +61 -0
- package/docs/api/interfaces/TagSpec.md +69 -0
- package/docs/api/interfaces/TextBoxOptions.md +93 -0
- package/docs/api/interfaces/TextGlyph.md +29 -0
- package/docs/api/interfaces/TextOptions.md +101 -0
- package/docs/api/interfaces/WasmMemory.md +37 -0
- package/docs/api/type-aliases/AfRelationship.md +15 -0
- package/docs/api/type-aliases/Align.md +15 -0
- package/docs/api/type-aliases/ArtifactKind.md +15 -0
- package/docs/api/type-aliases/AttachmentOptions.md +15 -0
- package/docs/api/type-aliases/BlendMode.md +15 -0
- package/docs/api/type-aliases/BoxRect.md +15 -0
- package/docs/api/type-aliases/BuildOptions.md +15 -0
- package/docs/api/type-aliases/Cell.md +71 -0
- package/docs/api/type-aliases/Chunk.md +79 -0
- package/docs/api/type-aliases/Color.md +16 -0
- package/docs/api/type-aliases/Coordinates.md +55 -0
- package/docs/api/type-aliases/Direction.md +15 -0
- package/docs/api/type-aliases/DocumentInfo.md +15 -0
- package/docs/api/type-aliases/DropReason.md +15 -0
- package/docs/api/type-aliases/Dropped.md +59 -0
- package/docs/api/type-aliases/Edited.md +15 -0
- package/docs/api/type-aliases/ErrorCode.md +15 -0
- package/docs/api/type-aliases/ErrorKind.md +15 -0
- package/docs/api/type-aliases/ExtractFormat.md +15 -0
- package/docs/api/type-aliases/ExtractedBlock.md +82 -0
- package/docs/api/type-aliases/ExtractedPage.md +65 -0
- package/docs/api/type-aliases/ExtractedSource.md +48 -0
- package/docs/api/type-aliases/Extraction.md +22 -0
- package/docs/api/type-aliases/FillRule.md +15 -0
- package/docs/api/type-aliases/Fit.md +15 -0
- package/docs/api/type-aliases/Flags.md +15 -0
- package/docs/api/type-aliases/Generator.md +41 -0
- package/docs/api/type-aliases/GlyphQuad.md +15 -0
- package/docs/api/type-aliases/InfoPatch.md +15 -0
- package/docs/api/type-aliases/LaminaPdfWarning.md +16 -0
- package/docs/api/type-aliases/LimitName.md +15 -0
- package/docs/api/type-aliases/Limits.md +15 -0
- package/docs/api/type-aliases/LineBox.md +15 -0
- package/docs/api/type-aliases/LineCap.md +15 -0
- package/docs/api/type-aliases/LineJoin.md +15 -0
- package/docs/api/type-aliases/LinkTarget.md +15 -0
- package/docs/api/type-aliases/Metadata.md +15 -0
- package/docs/api/type-aliases/Op.md +15 -0
- package/docs/api/type-aliases/OutlineEntry.md +15 -0
- package/docs/api/type-aliases/Overflow.md +15 -0
- package/docs/api/type-aliases/PageInfo.md +15 -0
- package/docs/api/type-aliases/PageLabel.md +15 -0
- package/docs/api/type-aliases/PageSizeName.md +15 -0
- package/docs/api/type-aliases/Point.md +15 -0
- package/docs/api/type-aliases/Profile.md +15 -0
- package/docs/api/type-aliases/Progress.md +15 -0
- package/docs/api/type-aliases/ReadingOrder.md +15 -0
- package/docs/api/type-aliases/Rect.md +15 -0
- package/docs/api/type-aliases/Region.md +31 -0
- package/docs/api/type-aliases/RenderMode.md +15 -0
- package/docs/api/type-aliases/Rotation.md +15 -0
- package/docs/api/type-aliases/SaveOptions.md +15 -0
- package/docs/api/type-aliases/SaveReport.md +15 -0
- package/docs/api/type-aliases/Span.md +63 -0
- package/docs/api/type-aliases/SplitOn.md +15 -0
- package/docs/api/type-aliases/Standard14.md +15 -0
- package/docs/api/type-aliases/StructRef.md +41 -0
- package/docs/api/type-aliases/StructSource.md +17 -0
- package/docs/api/type-aliases/TableDetector.md +15 -0
- package/docs/api/type-aliases/TableMode.md +15 -0
- package/docs/api/type-aliases/TableScope.md +15 -0
- package/docs/api/type-aliases/Tag.md +15 -0
- package/docs/api/type-aliases/TagName.md +15 -0
- package/docs/api/type-aliases/TextLayout.md +15 -0
- package/docs/api/type-aliases/TextRange.md +33 -0
- package/docs/api/type-aliases/TextRunInfo.md +15 -0
- package/docs/api/type-aliases/Transform.md +15 -0
- package/docs/api/type-aliases/UndoOutcome.md +15 -0
- package/docs/api/type-aliases/ViewerPreferences.md +15 -0
- package/docs/api/type-aliases/WarningCode.md +15 -0
- package/docs/api/type-aliases/WasmSource.md +16 -0
- package/docs/api/variables/Matrix.md +99 -0
- package/docs/api/variables/PAGE_SIZES.md +15 -0
- package/docs/api/variables/TAG_NAMES.md +15 -0
- package/docs/errors/README.md +156 -0
- package/docs/errors/aes-padding-invalid.md +34 -0
- package/docs/errors/already-initialized.md +34 -0
- package/docs/errors/binary-output-to-terminal.md +35 -0
- package/docs/errors/builder-finished.md +35 -0
- package/docs/errors/cancelled.md +35 -0
- package/docs/errors/cmap-invalid.md +42 -0
- package/docs/errors/collection-index.md +33 -0
- package/docs/errors/color-components.md +33 -0
- package/docs/errors/content-bad-operands.md +36 -0
- package/docs/errors/content-path-unpainted.md +36 -0
- package/docs/errors/content-resource-missing.md +37 -0
- package/docs/errors/content-syntax.md +36 -0
- package/docs/errors/content-unbalanced-bt.md +36 -0
- package/docs/errors/content-unbalanced-marked.md +36 -0
- package/docs/errors/content-unbalanced-q.md +36 -0
- package/docs/errors/content-unknown-operator.md +37 -0
- package/docs/errors/data-pending.md +34 -0
- package/docs/errors/decompress.md +34 -0
- package/docs/errors/device-color-without-output-intent.md +33 -0
- package/docs/errors/direct-page.md +34 -0
- package/docs/errors/disposed.md +34 -0
- package/docs/errors/document-changed.md +34 -0
- package/docs/errors/embedded-file-forbidden.md +35 -0
- package/docs/errors/embedded-file-without-mime-type.md +36 -0
- package/docs/errors/encoding-full.md +34 -0
- package/docs/errors/encrypted-base.md +33 -0
- package/docs/errors/extract-limit-blocks.md +35 -0
- package/docs/errors/extract-module-not-loaded.md +37 -0
- package/docs/errors/extract-reading-order-ambiguous.md +32 -0
- package/docs/errors/extract-struct-tree-ignored.md +32 -0
- package/docs/errors/extract-table-ambiguous.md +32 -0
- package/docs/errors/extract-table-limit.md +35 -0
- package/docs/errors/extract-untagged-content.md +32 -0
- package/docs/errors/fetch-failed.md +34 -0
- package/docs/errors/flate-truncated.md +34 -0
- package/docs/errors/font-invalid.md +36 -0
- package/docs/errors/font-mismatch.md +34 -0
- package/docs/errors/font-not-embeddable.md +34 -0
- package/docs/errors/font-not-embedded.md +35 -0
- package/docs/errors/font-not-shapable.md +33 -0
- package/docs/errors/glyph-out-of-range.md +34 -0
- package/docs/errors/glyph-without-unicode.md +35 -0
- package/docs/errors/heading-level-skipped.md +36 -0
- package/docs/errors/image-data-length.md +33 -0
- package/docs/errors/image-too-large.md +32 -0
- package/docs/errors/inline-image-unterminated.md +36 -0
- package/docs/errors/input-unreadable.md +37 -0
- package/docs/errors/instance-reset.md +34 -0
- package/docs/errors/invalid-argument.md +33 -0
- package/docs/errors/invalid-axis-value.md +32 -0
- package/docs/errors/invalid-box.md +34 -0
- package/docs/errors/invalid-color.md +32 -0
- package/docs/errors/invalid-command-line.md +44 -0
- package/docs/errors/invalid-date.md +34 -0
- package/docs/errors/invalid-entry.md +34 -0
- package/docs/errors/invalid-feature.md +32 -0
- package/docs/errors/invalid-font.md +32 -0
- package/docs/errors/invalid-geometry.md +32 -0
- package/docs/errors/invalid-icc-profile.md +32 -0
- package/docs/errors/invalid-image.md +33 -0
- package/docs/errors/invalid-op-log.md +33 -0
- package/docs/errors/invalid-page-label.md +34 -0
- package/docs/errors/invalid-page-labels.md +32 -0
- package/docs/errors/invalid-page-range.md +37 -0
- package/docs/errors/invalid-rotate.md +34 -0
- package/docs/errors/invalid-structure-nesting.md +38 -0
- package/docs/errors/invalid-structure.md +34 -0
- package/docs/errors/invalid-text-range.md +33 -0
- package/docs/errors/job-finished.md +34 -0
- package/docs/errors/limit-exceeded.md +38 -0
- package/docs/errors/link-without-contents.md +33 -0
- package/docs/errors/link-without-structure.md +37 -0
- package/docs/errors/missing-alt-text.md +33 -0
- package/docs/errors/missing-glyph.md +33 -0
- package/docs/errors/missing-header.md +37 -0
- package/docs/errors/missing-lang.md +32 -0
- package/docs/errors/missing-root.md +34 -0
- package/docs/errors/missing-title.md +32 -0
- package/docs/errors/name-tree-node-skipped.md +34 -0
- package/docs/errors/nested-transaction.md +34 -0
- package/docs/errors/no-pending-save.md +32 -0
- package/docs/errors/no-transaction.md +33 -0
- package/docs/errors/not-initialized.md +35 -0
- package/docs/errors/not-pdf.md +33 -0
- package/docs/errors/not-rebased.md +35 -0
- package/docs/errors/object-number-out-of-range.md +38 -0
- package/docs/errors/objstm-index-mismatch.md +36 -0
- package/docs/errors/out-of-memory.md +38 -0
- package/docs/errors/outline-cycle.md +34 -0
- package/docs/errors/outline-item-skipped.md +34 -0
- package/docs/errors/output-unwritable.md +37 -0
- package/docs/errors/overwrite-refused.md +36 -0
- package/docs/errors/page-count-mismatch.md +34 -0
- package/docs/errors/page-index-out-of-range.md +34 -0
- package/docs/errors/page-tree-node-skipped.md +35 -0
- package/docs/errors/password-required.md +36 -0
- package/docs/errors/path-outside-roots.md +32 -0
- package/docs/errors/perms-mismatch.md +34 -0
- package/docs/errors/profile-version-conflict.md +35 -0
- package/docs/errors/reference-cycle.md +35 -0
- package/docs/errors/render-backend-unavailable.md +32 -0
- package/docs/errors/render-failed.md +33 -0
- package/docs/errors/render-too-large.md +36 -0
- package/docs/errors/repaired-base.md +34 -0
- package/docs/errors/requires-rewrite.md +38 -0
- package/docs/errors/saved-not-rebased.md +34 -0
- package/docs/errors/sink-not-empty.md +33 -0
- package/docs/errors/sink.md +31 -0
- package/docs/errors/source-budget-exceeded.md +34 -0
- package/docs/errors/source-changed.md +33 -0
- package/docs/errors/source.md +30 -0
- package/docs/errors/stale-generation.md +34 -0
- package/docs/errors/stream-length-recovered.md +37 -0
- package/docs/errors/strict.md +34 -0
- package/docs/errors/subset-failed.md +31 -0
- package/docs/errors/syntax.md +34 -0
- package/docs/errors/text-module-not-loaded.md +36 -0
- package/docs/errors/text-overflow.md +34 -0
- package/docs/errors/tounicode-conflict.md +32 -0
- package/docs/errors/type.md +34 -0
- package/docs/errors/unexpected-eof.md +34 -0
- package/docs/errors/unknown-axis.md +33 -0
- package/docs/errors/unknown-code.md +36 -0
- package/docs/errors/unknown-destination.md +33 -0
- package/docs/errors/unknown-font.md +33 -0
- package/docs/errors/unknown-option.md +33 -0
- package/docs/errors/unknown-page.md +34 -0
- package/docs/errors/unmapped-glyph.md +36 -0
- package/docs/errors/unnumbered-heading-misused.md +34 -0
- package/docs/errors/unset-object.md +30 -0
- package/docs/errors/unsupported-filter.md +34 -0
- package/docs/errors/unsupported-image.md +33 -0
- package/docs/errors/unsupported-layout-option.md +33 -0
- package/docs/errors/unsupported-security-handler.md +34 -0
- package/docs/errors/unsupported-version.md +32 -0
- package/docs/errors/untagged-content.md +35 -0
- package/docs/errors/warnings-truncated.md +35 -0
- package/docs/errors/wasm-trap.md +37 -0
- package/docs/errors/whole-font-rebuilt.md +30 -0
- package/docs/errors/worker-crashed.md +33 -0
- package/docs/errors/worker-failed.md +32 -0
- package/docs/errors/worker-version-mismatch.md +34 -0
- package/docs/errors/would-invalidate-signatures.md +38 -0
- package/docs/errors/wrong-document.md +33 -0
- package/docs/errors/wrong-password.md +34 -0
- package/docs/errors/xobject-cycle.md +36 -0
- package/docs/errors/xref-repaired.md +36 -0
- package/docs/errors/xrefstm-ignored.md +34 -0
- package/docs/llms.txt +88 -0
- package/docs/pages/concepts/dependencies.md +44 -0
- package/docs/pages/concepts/errors-and-warnings.md +64 -0
- package/docs/pages/concepts/how-lamina-thinks.md +86 -0
- package/docs/pages/concepts/pages-and-coordinates.md +67 -0
- package/docs/pages/guides/accessible-pdfs.md +260 -0
- package/docs/pages/guides/archival-pdfs.md +429 -0
- package/docs/pages/guides/edit-a-pdf.md +137 -0
- package/docs/pages/guides/fonts-and-text.md +202 -0
- package/docs/pages/guides/images-and-vectors.md +219 -0
- package/docs/pages/guides/keep-the-page-responsive.md +81 -0
- package/docs/pages/guides/links-outlines-and-metadata.md +222 -0
- package/docs/pages/guides/password-protected-files.md +70 -0
- package/docs/pages/guides/save-a-pdf.md +144 -0
- package/docs/pages/guides/untrusted-files.md +80 -0
- package/docs/pages/index.md +33 -0
- package/docs/pages/install.md +75 -0
- package/docs/pages/quick-start/browser.md +67 -0
- package/docs/pages/quick-start/bun.md +60 -0
- package/docs/pages/quick-start/deno.md +58 -0
- package/docs/pages/quick-start/node.md +61 -0
- package/docs/pages/quick-start/rust.md +58 -0
- package/docs/pages/quick-start/workers.md +139 -0
- package/docs/pages/recipes/cloudflare-worker.md +115 -0
- package/docs/pages/recipes/extract-markdown.md +114 -0
- package/docs/pages/recipes/generate-then-edit.md +135 -0
- package/docs/pages/recipes/hello.md +94 -0
- package/docs/pages/recipes/images-and-vectors.md +209 -0
- package/docs/pages/recipes/invoice.md +226 -0
- package/docs/pages/recipes/links-and-outlines.md +215 -0
- package/docs/pages/recipes/multilingual.md +189 -0
- package/docs/pages/recipes/open-untrusted.md +65 -0
- package/docs/pages/recipes/pdf-a-archive.md +205 -0
- package/docs/pages/recipes/pdf-a3-invoice-with-xml.md +222 -0
- package/docs/pages/recipes/pdf-ua-report.md +237 -0
- package/docs/pages/recipes/report.md +125 -0
- package/docs/pages/recipes/web-worker-client.md +64 -0
- package/docs/pages/recipes.md +47 -0
- package/docs/pages/reference/changelog.md +86 -0
- package/docs/pages/reference/codes.md +14 -0
- package/docs/pages/reference/glossary.md +108 -0
- package/docs/pages/reference/rust.md +36 -0
- package/docs/pages/reference/stability.md +59 -0
- package/docs/pages/start/coding-agents.md +45 -0
- package/docs/pages/start/first-pdf.md +77 -0
- package/docs/pages/troubleshooting.md +74 -0
- package/docs/renames.json +86 -0
- package/docs/schemas/error.schema.json +305 -0
- package/docs/schemas/renames.schema.json +29 -0
- package/package.json +5 -3
- package/schemas/error.schema.json +19 -2
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
---
|
|
2
|
+
version: "0.2.0-alpha.3"
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
[**@laminapdf/sdk**](../README.md)
|
|
6
|
+
|
|
7
|
+
***
|
|
8
|
+
|
|
9
|
+
[@laminapdf/sdk](../README.md) / Font
|
|
10
|
+
|
|
11
|
+
# Class: Font
|
|
12
|
+
|
|
13
|
+
A font to draw text with: TrueType or OpenType bytes (subset to the glyphs drawn and embedded)
|
|
14
|
+
or one of the standard 14. Needs the text module (`init({ text: true })`).
|
|
15
|
+
|
|
16
|
+
## Example
|
|
17
|
+
|
|
18
|
+
```ts
|
|
19
|
+
const inter = Font.fromBytes(await (await fetch("/Inter.ttf")).arrayBuffer());
|
|
20
|
+
surface.text("Hello", { font: inter, size: 12, at: [72, 72] });
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Properties
|
|
24
|
+
|
|
25
|
+
### bytes
|
|
26
|
+
|
|
27
|
+
> `readonly` **bytes**: `Uint8Array`\<`ArrayBufferLike`\> \| `undefined`
|
|
28
|
+
|
|
29
|
+
The font program, for a font loaded from bytes.
|
|
30
|
+
|
|
31
|
+
***
|
|
32
|
+
|
|
33
|
+
### standard
|
|
34
|
+
|
|
35
|
+
> `readonly` **standard**: [`Standard14`](../type-aliases/Standard14.md) \| `undefined`
|
|
36
|
+
|
|
37
|
+
The PostScript name, for a standard 14 font.
|
|
38
|
+
|
|
39
|
+
## Methods
|
|
40
|
+
|
|
41
|
+
### fromBytes()
|
|
42
|
+
|
|
43
|
+
> `static` **fromBytes**(`bytes`): `Font`
|
|
44
|
+
|
|
45
|
+
A font from its bytes (TrueType or OpenType/CFF). The bytes are checked when a builder first
|
|
46
|
+
uses the font (`invalid-font`, `font-not-embeddable`).
|
|
47
|
+
|
|
48
|
+
#### Parameters
|
|
49
|
+
|
|
50
|
+
##### bytes
|
|
51
|
+
|
|
52
|
+
`ArrayBuffer` \| `Uint8Array`\<`ArrayBufferLike`\>
|
|
53
|
+
|
|
54
|
+
#### Returns
|
|
55
|
+
|
|
56
|
+
`Font`
|
|
57
|
+
|
|
58
|
+
***
|
|
59
|
+
|
|
60
|
+
### standard()
|
|
61
|
+
|
|
62
|
+
> `static` **standard**(`name`): `Font`
|
|
63
|
+
|
|
64
|
+
One of the standard 14 fonts.
|
|
65
|
+
|
|
66
|
+
#### Parameters
|
|
67
|
+
|
|
68
|
+
##### name
|
|
69
|
+
|
|
70
|
+
[`Standard14`](../type-aliases/Standard14.md)
|
|
71
|
+
|
|
72
|
+
#### Returns
|
|
73
|
+
|
|
74
|
+
`Font`
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
---
|
|
2
|
+
version: "0.2.0-alpha.3"
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
[**@laminapdf/sdk**](../README.md)
|
|
6
|
+
|
|
7
|
+
***
|
|
8
|
+
|
|
9
|
+
[@laminapdf/sdk](../README.md) / Image
|
|
10
|
+
|
|
11
|
+
# Class: Image
|
|
12
|
+
|
|
13
|
+
An image to draw: a JPEG (passed through), a PNG (alpha as a soft mask) or raw RGBA pixels.
|
|
14
|
+
The bytes are copied when the image is created. It is decoded once per WASM module, the first
|
|
15
|
+
time a builder of that module draws it (or `width`/`height` is read), so problems with the
|
|
16
|
+
data (`invalid-image`, `unsupported-image`, …) surface there. Written once per document however
|
|
17
|
+
often it is drawn. It keeps its bytes, so it outlives `reset()` and decodes again.
|
|
18
|
+
|
|
19
|
+
## Accessors
|
|
20
|
+
|
|
21
|
+
### height
|
|
22
|
+
|
|
23
|
+
#### Get Signature
|
|
24
|
+
|
|
25
|
+
> **get** **height**(): `number`
|
|
26
|
+
|
|
27
|
+
Height in pixels (decodes the image if no module has yet).
|
|
28
|
+
|
|
29
|
+
##### Throws
|
|
30
|
+
|
|
31
|
+
[LaminaPdfError](LaminaPdfError.md) as `in`.
|
|
32
|
+
|
|
33
|
+
##### Returns
|
|
34
|
+
|
|
35
|
+
`number`
|
|
36
|
+
|
|
37
|
+
***
|
|
38
|
+
|
|
39
|
+
### width
|
|
40
|
+
|
|
41
|
+
#### Get Signature
|
|
42
|
+
|
|
43
|
+
> **get** **width**(): `number`
|
|
44
|
+
|
|
45
|
+
Width in pixels (decodes the image if no module has yet).
|
|
46
|
+
|
|
47
|
+
##### Throws
|
|
48
|
+
|
|
49
|
+
[LaminaPdfError](LaminaPdfError.md) as `in`.
|
|
50
|
+
|
|
51
|
+
##### Returns
|
|
52
|
+
|
|
53
|
+
`number`
|
|
54
|
+
|
|
55
|
+
## Methods
|
|
56
|
+
|
|
57
|
+
### \[dispose\]()
|
|
58
|
+
|
|
59
|
+
> **\[dispose\]**(): `void`
|
|
60
|
+
|
|
61
|
+
Frees the image at the end of a `using` block (an alias of `free()`).
|
|
62
|
+
|
|
63
|
+
#### Returns
|
|
64
|
+
|
|
65
|
+
`void`
|
|
66
|
+
|
|
67
|
+
***
|
|
68
|
+
|
|
69
|
+
### free()
|
|
70
|
+
|
|
71
|
+
> **free**(): `void`
|
|
72
|
+
|
|
73
|
+
Frees the image's WASM memory now; without it, the garbage collector frees it later. A second
|
|
74
|
+
call does nothing, and any other call afterwards throws `disposed`. Prefer `using`.
|
|
75
|
+
|
|
76
|
+
#### Returns
|
|
77
|
+
|
|
78
|
+
`void`
|
|
79
|
+
|
|
80
|
+
***
|
|
81
|
+
|
|
82
|
+
### jpeg()
|
|
83
|
+
|
|
84
|
+
> `static` **jpeg**(`bytes`): `Image`
|
|
85
|
+
|
|
86
|
+
A JPEG.
|
|
87
|
+
|
|
88
|
+
#### Parameters
|
|
89
|
+
|
|
90
|
+
##### bytes
|
|
91
|
+
|
|
92
|
+
`Uint8Array`
|
|
93
|
+
|
|
94
|
+
#### Returns
|
|
95
|
+
|
|
96
|
+
`Image`
|
|
97
|
+
|
|
98
|
+
***
|
|
99
|
+
|
|
100
|
+
### png()
|
|
101
|
+
|
|
102
|
+
> `static` **png**(`bytes`): `Image`
|
|
103
|
+
|
|
104
|
+
A PNG.
|
|
105
|
+
|
|
106
|
+
#### Parameters
|
|
107
|
+
|
|
108
|
+
##### bytes
|
|
109
|
+
|
|
110
|
+
`Uint8Array`
|
|
111
|
+
|
|
112
|
+
#### Returns
|
|
113
|
+
|
|
114
|
+
`Image`
|
|
115
|
+
|
|
116
|
+
***
|
|
117
|
+
|
|
118
|
+
### rgba()
|
|
119
|
+
|
|
120
|
+
> `static` **rgba**(`width`, `height`, `pixels`): `Image`
|
|
121
|
+
|
|
122
|
+
8-bit RGBA pixels, row by row (`image-data-length` at first use for a wrong length).
|
|
123
|
+
|
|
124
|
+
#### Parameters
|
|
125
|
+
|
|
126
|
+
##### width
|
|
127
|
+
|
|
128
|
+
`number`
|
|
129
|
+
|
|
130
|
+
##### height
|
|
131
|
+
|
|
132
|
+
`number`
|
|
133
|
+
|
|
134
|
+
##### pixels
|
|
135
|
+
|
|
136
|
+
`Uint8Array`
|
|
137
|
+
|
|
138
|
+
#### Returns
|
|
139
|
+
|
|
140
|
+
`Image`
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
---
|
|
2
|
+
version: "0.2.0-alpha.3"
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
[**@laminapdf/sdk**](../README.md)
|
|
6
|
+
|
|
7
|
+
***
|
|
8
|
+
|
|
9
|
+
[@laminapdf/sdk](../README.md) / LaminaPdfError
|
|
10
|
+
|
|
11
|
+
# Class: LaminaPdfError\<C\>
|
|
12
|
+
|
|
13
|
+
The one error class of `@laminapdf/sdk` (ADR 0026 §7). `message`, `hint` and `didYouMean` never
|
|
14
|
+
hold document text (ADR 0026 §4); that goes in `data`, marked untrusted on the code's page at
|
|
15
|
+
`docsUrl`.
|
|
16
|
+
|
|
17
|
+
## Example
|
|
18
|
+
|
|
19
|
+
```ts
|
|
20
|
+
try {
|
|
21
|
+
Document.open(bytes, { password: "secret" });
|
|
22
|
+
} catch (e) {
|
|
23
|
+
if (isLaminaPdfError(e, "wrong-password")) askAgain();
|
|
24
|
+
else throw e;
|
|
25
|
+
}
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Extends
|
|
29
|
+
|
|
30
|
+
- `Error`
|
|
31
|
+
|
|
32
|
+
## Type Parameters
|
|
33
|
+
|
|
34
|
+
### C
|
|
35
|
+
|
|
36
|
+
`C` *extends* [`ErrorCode`](../type-aliases/ErrorCode.md) = [`ErrorCode`](../type-aliases/ErrorCode.md)
|
|
37
|
+
|
|
38
|
+
## Constructors
|
|
39
|
+
|
|
40
|
+
### Constructor
|
|
41
|
+
|
|
42
|
+
> **new LaminaPdfError**\<`C`\>(`diagnostic`, `options?`): `LaminaPdfError`\<`C`\>
|
|
43
|
+
|
|
44
|
+
#### Parameters
|
|
45
|
+
|
|
46
|
+
##### diagnostic
|
|
47
|
+
|
|
48
|
+
[`Diagnostic`](../interfaces/Diagnostic.md)\<`C`\>
|
|
49
|
+
|
|
50
|
+
the ADR 0026 §1 object.
|
|
51
|
+
|
|
52
|
+
##### options?
|
|
53
|
+
|
|
54
|
+
`cause`, when wrapping another error.
|
|
55
|
+
|
|
56
|
+
###### cause?
|
|
57
|
+
|
|
58
|
+
`unknown`
|
|
59
|
+
|
|
60
|
+
#### Returns
|
|
61
|
+
|
|
62
|
+
`LaminaPdfError`\<`C`\>
|
|
63
|
+
|
|
64
|
+
#### Overrides
|
|
65
|
+
|
|
66
|
+
`Error.constructor`
|
|
67
|
+
|
|
68
|
+
## Properties
|
|
69
|
+
|
|
70
|
+
### cause?
|
|
71
|
+
|
|
72
|
+
> `optional` **cause?**: `unknown`
|
|
73
|
+
|
|
74
|
+
#### Inherited from
|
|
75
|
+
|
|
76
|
+
`Error.cause`
|
|
77
|
+
|
|
78
|
+
***
|
|
79
|
+
|
|
80
|
+
### code
|
|
81
|
+
|
|
82
|
+
> `readonly` **code**: `C`
|
|
83
|
+
|
|
84
|
+
The stable code (`fixtures/codes.json`).
|
|
85
|
+
|
|
86
|
+
***
|
|
87
|
+
|
|
88
|
+
### data?
|
|
89
|
+
|
|
90
|
+
> `readonly` `optional` **data?**: `Readonly`\<`Record`\<`string`, `unknown`\>\>
|
|
91
|
+
|
|
92
|
+
Code-specific fields, documented on the code's page (the only place document text appears).
|
|
93
|
+
|
|
94
|
+
***
|
|
95
|
+
|
|
96
|
+
### didYouMean?
|
|
97
|
+
|
|
98
|
+
> `readonly` `optional` **didYouMean?**: readonly `string`[]
|
|
99
|
+
|
|
100
|
+
For `usage` errors: the closest known names (Lamina PDF's own vocabulary).
|
|
101
|
+
|
|
102
|
+
***
|
|
103
|
+
|
|
104
|
+
### docsUrl
|
|
105
|
+
|
|
106
|
+
> `readonly` **docsUrl**: `string`
|
|
107
|
+
|
|
108
|
+
The code's page.
|
|
109
|
+
|
|
110
|
+
***
|
|
111
|
+
|
|
112
|
+
### hint?
|
|
113
|
+
|
|
114
|
+
> `readonly` `optional` **hint?**: `string`
|
|
115
|
+
|
|
116
|
+
One actionable sentence for this code.
|
|
117
|
+
|
|
118
|
+
***
|
|
119
|
+
|
|
120
|
+
### kind
|
|
121
|
+
|
|
122
|
+
> `readonly` **kind**: [`ErrorKind`](../type-aliases/ErrorKind.md)
|
|
123
|
+
|
|
124
|
+
What the caller can do about it.
|
|
125
|
+
|
|
126
|
+
***
|
|
127
|
+
|
|
128
|
+
### location?
|
|
129
|
+
|
|
130
|
+
> `readonly` `optional` **location?**: [`Location`](../interfaces/Location.md)
|
|
131
|
+
|
|
132
|
+
Where in the input or the document.
|
|
133
|
+
|
|
134
|
+
***
|
|
135
|
+
|
|
136
|
+
### message
|
|
137
|
+
|
|
138
|
+
> **message**: `string`
|
|
139
|
+
|
|
140
|
+
#### Inherited from
|
|
141
|
+
|
|
142
|
+
`Error.message`
|
|
143
|
+
|
|
144
|
+
***
|
|
145
|
+
|
|
146
|
+
### name
|
|
147
|
+
|
|
148
|
+
> `readonly` **name**: `"LaminaPdfError"` = `"LaminaPdfError"`
|
|
149
|
+
|
|
150
|
+
#### Overrides
|
|
151
|
+
|
|
152
|
+
`Error.name`
|
|
153
|
+
|
|
154
|
+
***
|
|
155
|
+
|
|
156
|
+
### stack?
|
|
157
|
+
|
|
158
|
+
> `optional` **stack?**: `string`
|
|
159
|
+
|
|
160
|
+
#### Inherited from
|
|
161
|
+
|
|
162
|
+
`Error.stack`
|
|
163
|
+
|
|
164
|
+
## Accessors
|
|
165
|
+
|
|
166
|
+
### ranges
|
|
167
|
+
|
|
168
|
+
#### Get Signature
|
|
169
|
+
|
|
170
|
+
> **get** **ranges**(): readonly `object`[] \| `undefined`
|
|
171
|
+
|
|
172
|
+
For `data-pending`: the byte ranges a range document needs fetched before the call can
|
|
173
|
+
succeed (`data.ranges`); `undefined` for other codes. [Document.ensure](Document.md#ensure) fetches them.
|
|
174
|
+
|
|
175
|
+
##### Returns
|
|
176
|
+
|
|
177
|
+
readonly `object`[] \| `undefined`
|
|
178
|
+
|
|
179
|
+
## Methods
|
|
180
|
+
|
|
181
|
+
### toJSON()
|
|
182
|
+
|
|
183
|
+
> **toJSON**(): [`Diagnostic`](../interfaces/Diagnostic.md)\<`C`\>
|
|
184
|
+
|
|
185
|
+
The ADR 0026 §1 object (for logs, workers and `--json` output); optional fields omitted.
|
|
186
|
+
|
|
187
|
+
#### Returns
|
|
188
|
+
|
|
189
|
+
[`Diagnostic`](../interfaces/Diagnostic.md)\<`C`\>
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
---
|
|
2
|
+
version: "0.2.0-alpha.3"
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
[**@laminapdf/sdk**](../README.md)
|
|
6
|
+
|
|
7
|
+
***
|
|
8
|
+
|
|
9
|
+
[@laminapdf/sdk](../README.md) / Page
|
|
10
|
+
|
|
11
|
+
# Class: Page
|
|
12
|
+
|
|
13
|
+
A page being drawn: its boxes and rotation, its [Surface](Surface.md), then [Page.finish](#finish). Freed
|
|
14
|
+
with its builder; `using` or [Page.free](#free) drops it without writing it.
|
|
15
|
+
|
|
16
|
+
## Methods
|
|
17
|
+
|
|
18
|
+
### \[dispose\]()
|
|
19
|
+
|
|
20
|
+
> **\[dispose\]**(): `void`
|
|
21
|
+
|
|
22
|
+
Drops the page at the end of a `using` block (an alias of `free()`).
|
|
23
|
+
|
|
24
|
+
#### Returns
|
|
25
|
+
|
|
26
|
+
`void`
|
|
27
|
+
|
|
28
|
+
***
|
|
29
|
+
|
|
30
|
+
### artBox()
|
|
31
|
+
|
|
32
|
+
> **artBox**(`rect`): `this`
|
|
33
|
+
|
|
34
|
+
`/ArtBox`.
|
|
35
|
+
|
|
36
|
+
#### Parameters
|
|
37
|
+
|
|
38
|
+
##### rect
|
|
39
|
+
|
|
40
|
+
[`Rect`](../type-aliases/Rect.md)
|
|
41
|
+
|
|
42
|
+
#### Returns
|
|
43
|
+
|
|
44
|
+
`this`
|
|
45
|
+
|
|
46
|
+
***
|
|
47
|
+
|
|
48
|
+
### bleedBox()
|
|
49
|
+
|
|
50
|
+
> **bleedBox**(`rect`): `this`
|
|
51
|
+
|
|
52
|
+
`/BleedBox`.
|
|
53
|
+
|
|
54
|
+
#### Parameters
|
|
55
|
+
|
|
56
|
+
##### rect
|
|
57
|
+
|
|
58
|
+
[`Rect`](../type-aliases/Rect.md)
|
|
59
|
+
|
|
60
|
+
#### Returns
|
|
61
|
+
|
|
62
|
+
`this`
|
|
63
|
+
|
|
64
|
+
***
|
|
65
|
+
|
|
66
|
+
### cropBox()
|
|
67
|
+
|
|
68
|
+
> **cropBox**(`rect`): `this`
|
|
69
|
+
|
|
70
|
+
`/CropBox` (the visible region), in the media box's page space.
|
|
71
|
+
|
|
72
|
+
#### Parameters
|
|
73
|
+
|
|
74
|
+
##### rect
|
|
75
|
+
|
|
76
|
+
[`Rect`](../type-aliases/Rect.md)
|
|
77
|
+
|
|
78
|
+
#### Returns
|
|
79
|
+
|
|
80
|
+
`this`
|
|
81
|
+
|
|
82
|
+
***
|
|
83
|
+
|
|
84
|
+
### finish()
|
|
85
|
+
|
|
86
|
+
> **finish**(): `string`
|
|
87
|
+
|
|
88
|
+
Writes the page into its builder and frees the page's WASM side; the page takes no more
|
|
89
|
+
drawing afterwards (`builder-finished`).
|
|
90
|
+
|
|
91
|
+
#### Returns
|
|
92
|
+
|
|
93
|
+
`string`
|
|
94
|
+
|
|
95
|
+
the page's ID.
|
|
96
|
+
|
|
97
|
+
#### Throws
|
|
98
|
+
|
|
99
|
+
[LaminaPdfError](LaminaPdfError.md) `invalid-geometry`, `builder-finished`.
|
|
100
|
+
|
|
101
|
+
***
|
|
102
|
+
|
|
103
|
+
### free()
|
|
104
|
+
|
|
105
|
+
> **free**(): `void`
|
|
106
|
+
|
|
107
|
+
Drops the page without writing it and frees its WASM side; a second call does nothing, and
|
|
108
|
+
any other call afterwards throws `disposed`.
|
|
109
|
+
|
|
110
|
+
#### Returns
|
|
111
|
+
|
|
112
|
+
`void`
|
|
113
|
+
|
|
114
|
+
***
|
|
115
|
+
|
|
116
|
+
### rotate()
|
|
117
|
+
|
|
118
|
+
> **rotate**(`degrees`): `this`
|
|
119
|
+
|
|
120
|
+
`/Rotate`: 0, 90, 180 or 270 degrees.
|
|
121
|
+
|
|
122
|
+
#### Parameters
|
|
123
|
+
|
|
124
|
+
##### degrees
|
|
125
|
+
|
|
126
|
+
`0` \| `90` \| `180` \| `270`
|
|
127
|
+
|
|
128
|
+
#### Returns
|
|
129
|
+
|
|
130
|
+
`this`
|
|
131
|
+
|
|
132
|
+
***
|
|
133
|
+
|
|
134
|
+
### surface()
|
|
135
|
+
|
|
136
|
+
> **surface**(): [`Surface`](Surface.md)
|
|
137
|
+
|
|
138
|
+
What the page is drawn with (the same object on every call).
|
|
139
|
+
|
|
140
|
+
#### Returns
|
|
141
|
+
|
|
142
|
+
[`Surface`](Surface.md)
|
|
143
|
+
|
|
144
|
+
***
|
|
145
|
+
|
|
146
|
+
### trimBox()
|
|
147
|
+
|
|
148
|
+
> **trimBox**(`rect`): `this`
|
|
149
|
+
|
|
150
|
+
`/TrimBox`.
|
|
151
|
+
|
|
152
|
+
#### Parameters
|
|
153
|
+
|
|
154
|
+
##### rect
|
|
155
|
+
|
|
156
|
+
[`Rect`](../type-aliases/Rect.md)
|
|
157
|
+
|
|
158
|
+
#### Returns
|
|
159
|
+
|
|
160
|
+
`this`
|
|
161
|
+
|
|
162
|
+
***
|
|
163
|
+
|
|
164
|
+
### userUnit()
|
|
165
|
+
|
|
166
|
+
> **userUnit**(`unit`): `this`
|
|
167
|
+
|
|
168
|
+
`/UserUnit`, for pages larger than 14,400 units.
|
|
169
|
+
|
|
170
|
+
#### Parameters
|
|
171
|
+
|
|
172
|
+
##### unit
|
|
173
|
+
|
|
174
|
+
`number`
|
|
175
|
+
|
|
176
|
+
#### Returns
|
|
177
|
+
|
|
178
|
+
`this`
|