API reference
The public surface area of JetsonPDF, grouped by namespace. For full member-level docs — constructor signatures, properties, XML doc-comments — see the source.
Namespace JetsonPDF — JetsonPDF.Writer.dll
The core writer API: documents, pages, fonts, images, colour, paths, and document-level features.
| Type | Purpose |
|---|---|
PdfDocument | Top-level document. Configure metadata, encryption, conformance flags, then call AddPage and Save. |
PdfPage | One page. Drawing surface for text, images, paths, annotations, widgets, and tagged content blocks. |
PageSize | Readonly record struct in points. Built-ins: Letter, Legal, Tabloid, A3, A4, A5. |
PdfFont | Font handle for drawing — one of the standard 14 (FontFamily + FontStyle) or an EmbeddedFontFace. |
FontFamily / FontStyle | Enums covering the standard 14 (Helvetica / Times / Courier / Symbol / ZapfDingbats) and Regular / Bold / Italic / BoldItalic. |
EmbeddedFontFace | Loads TTF / OTF (CFF1) bytes for embedding. Subsetting happens at save time. |
PdfType3Font / PdfType3GlyphBuilder | Procedural fonts: glyphs drawn as content streams. Auto-emits /ToUnicode. |
PdfImage | Raster image XObject. Construct via FromFile, FromJpeg, FromPng; same instance dedups across pages. |
PdfImageMask | 1-bit stencil mask for use as an image's /Mask or via DrawImageMask. |
PdfFormXObject | Reusable content stream for headers, watermarks, logos — drawn via page.DrawForm. |
PdfPath | Vector path with full PDF path operators: move, line, curve, close, fill rule, dashes, joins. |
PdfColor | Colour value — Rgb, Cmyk, Gray factories, plus named constants. |
PdfColorSpace + subclasses | PdfCalGrayColorSpace, PdfCalRgbColorSpace, PdfLabColorSpace, PdfSeparationColorSpace, PdfDeviceNColorSpace. |
PdfShading + subclasses | PdfAxialShading, PdfRadialShading, PdfFunctionBasedShading for gradients and procedural fills. |
PdfTilingPattern | Tiling pattern XObject (PaintType 1 coloured / 2 uncoloured); fill paths/text via the pattern colour space. |
PdfTransparencyGroup | Block-scoped transparency group with opacity and blend mode. |
PdfOptionalContentGroup / PdfLayerScope | Layered content (OCGs); toggleable visibility in viewers. |
PdfStructureElement / PdfStructureAttributes | Tagged-PDF structure tree elements with attribute bundles. |
PdfOutline / PdfOutlineTree / PdfOutlineItem | Bookmark tree for the document /Outlines dict. |
PdfPageLayout / PdfPageMode / PdfViewerPreferences | Catalog-level viewer presentation settings. |
PdfMeasure + subclasses | PdfRectilinearMeasure (/RL), PdfGeospatialMeasure (/GEO) and PdfNumberFormat. |
PdfCoordinateSystem | EPSG / WKT projection paired with PdfGeospatialMeasure. |
PdfViewport | Per-page viewport tying a region of the page to a measurement system. |
PdfLinearizer | Static rewriter; takes any PDF and re-emits it in ISO Annex F fast-web-view form. |
PdfIncrementalUpdater | Append-only edits to an existing PDF without rewriting unchanged bytes. |
PdfConformance | Flags enum: PDF/A-1b, 2A/2B, 3A/3B, PDF/UA-1, UA-2. |
PdfConformanceValidator | Static validator; doc.Validate() shorthand returns IReadOnlyList<PdfConformanceIssue>. |
PdfConformanceIssue / PdfConformanceSeverity | One issue from validation: code, message, severity (Error / Warning). |
PdfConformanceException | Thrown by Save when ThrowOnConformanceError is set and validation fails. |
PdfEmbeddedFile | Embedded file stream — the body of a /Filespec. |
PdfAssociatedFile / PdfAfRelationship | Catalog / page / annotation /AF entries with relationship enum (Source / Data / Alternative / Supplement / EncryptedPayload / FormData / Schema / Unspecified). |
PdfPieceInfoEntry | Editor metadata round-trip via the page /PieceInfo dict. |
PdfIccProfile | ICC profile blob attached to images / colour spaces. |
Namespace JetsonPDF.Annotations
Every annotation subtype shipped. Add via page.AddAnnotation(...) or convenience helpers like page.AddLink(...).
| Type | Purpose |
|---|---|
PdfAnnotation | Abstract base — rectangle, page link, contents, colour, flags. |
PdfLinkAnnotation | Clickable rectangle — URI, GoTo, GoToR, Launch, Hide, SetOCGState, ImportData, Sound actions. |
PdfTextMarkupAnnotation + PdfTextMarkupKind | Highlight / Underline / StrikeOut / Squiggly with quad-point geometry. Uses PdfQuad.OverText for accurate ascent/descent. |
PdfFreeTextAnnotation | Free-floating text annotation with optional callout, justification, font. |
PdfGeometricAnnotation + subclasses | PdfLineAnnotation, PdfSquareAnnotation, PdfCircleAnnotation, PdfPolygonAnnotation, PdfPolyLineAnnotation, PdfInkAnnotation. |
PdfLineEnding | Line-ending style enum (Square, Circle, Diamond, OpenArrow, ClosedArrow, …). |
PdfStampAnnotation | Rubber-stamp annotation with user-supplied or built-in icon name. |
PdfCaretAnnotation | Editorial caret marker. |
PdfFileAttachmentAnnotation + PdfFileAttachmentIcon | Embedded-file marker; carries a PdfEmbeddedFile + filespec. |
PdfPopupAnnotation | Popup window for a parent markup annotation's notes. |
PdfSoundAnnotation | Sound clip annotation; raw PCM with sample rate / channels metadata. |
PdfRedactionAnnotation | Redaction marker (visible rectangle plus future-application metadata). |
Namespace JetsonPDF.Forms
AcroForm widgets. All inherit PdfWidget; add via page.AddTextField, AddCheckBox, AddRadioGroup, AddComboBox, AddListBox, AddPushButton, AddSignatureField, AddBarcodeField.
| Type | Purpose |
|---|---|
PdfWidget | Abstract widget base — field name, rectangle, flags, optional /AA additional actions. |
PdfTextField | Single- or multi-line text input. Combs, password, multi-line, max length. |
PdfCheckBox | On/off checkbox; IsChecked default state. |
PdfRadioGroup / PdfRadioButton | Mutually-exclusive radio group with multiple PdfRadioButton children. |
PdfComboBox / PdfListBox | Choice fields. Sort, multi-select, commit-on-select-change. |
PdfPushButton | Click button with caption and PdfWidgetAction. |
PdfSignatureField | Empty /Sig placeholder for an external signing pass. |
PdfBarcodeField | 2D barcode field (§12.7.4.5) painted from a caller-supplied bool[,] module matrix. |
BarcodeSymbology | Enum: QRCode / DataMatrix / PDF417 / Code128 / Code39. |
PdfAdditionalActions | /AA trigger map: Keystroke / Format / Validate / Calculate / mouse events. |
PdfSignatureSeedValue / SeedValueFlags | Filter / sub-filter / digest / reasons / MDP constraints emitted as /SV. |
PdfFieldLock / PdfFieldLockAction | Static /Lock dict: All / Include / Exclude. |
FieldAlignment | Left / Center / Right alignment for field appearance streams. |
Pdf*Collection | Per-document widget enumerators (PdfTextFieldCollection, …) iterating across all pages. |
Encryption & signatures
All in JetsonPDF namespace; grouped here by purpose.
| Type | Purpose |
|---|---|
PdfEncryptionOptions | User / owner password, permissions, algorithm. Assign to doc.Encryption. |
PdfEncryptionAlgorithm | Enum: Aes128 (V4 R4) and Aes256 (V5 R6, PDF 2.0). |
PdfPermissions | Flags enum: Print / Modify / CopyContent / AddAnnots / FillForms / Accessibility / Assemble / PrintHigh. |
PdfSigner | Static. Sign(byte[], options) / Sign(input, output, options). Detached PKCS#7. |
PdfSignatureOptions | Certificate, reason, location, contact, field name, hash algorithm, reserved-bytes, optional DocMDP / FieldMDP. |
PdfDocMdpPermission | NoChanges / FormFilling / FormFillingAndAnnotations. |
PdfFieldMdpRestriction | Per-field MDP transform: All / Include / Exclude. |
PdfTimestamper / PdfTimestampOptions / PdfTimestampClient | RFC 3161 DocTimeStamp via caller-supplied or built-in HTTP TSA client. |
PdfDss | Static. AddSecurityStore writes /DSS + per-signature VRI for PAdES B-LTA. |
PdfDocumentSecurityStore / PdfVri | Document-level cert / CRL / OCSP store + per-signature VRI sub-dict. |
Namespace JetsonPDF.Reading — JetsonPDF.Reader.dll
Read-side DTOs. Everything starts with PdfReader.Load.
| Type | Purpose |
|---|---|
PdfReader | Static entry point. Load(string | Stream | byte[], password?) → ReadPdfDocument. |
ReadPdfDocument | Parsed document: Pages, Info, Outlines, PageLabels, NamedDestinations, PageLayout, PageMode, ViewerPreferences, OpenAction, Language, IsEncrypted, EncryptionAuthenticated, OutputIntents, Conformance, DocMdpPermission, CalculationOrder. |
ReadPdfPage | One page: dimensions, Items (text / vector / image / inline-image / form-XObject), annotations, widgets. |
PageItem + subclasses | PageTextItem, PagePathItem, PageImageItem, PageInlineImageItem, PageFormXObjectItem. |
ReadOutlineItem | Bookmark-tree node with title, destination, child list. |
ReadStructureTree / ReadStructureElement / ReadStructureAttributes | Tagged-PDF tree, recursively. AnnotationRefs resolves OBJR child refs. |
ReadOptionalContent | OCGs and the catalog /D default config. |
ReadOutputIntent | Output intent (PDF/A / PDF/X) with ICC profile and identifier. |
ReadSignature | Signature field metadata: signer, time, reason, MDP / FieldMDP, integrity status. |
ReadSignatureSeedValue / ReadFieldMdpRestriction | /SV and FieldMDP transform read-back. |
ReadDocumentSecurityStore / ReadVri | Catalog-level /DSS with VRI sub-dict (cert / CRL / OCSP). |
ReadAdditionalActions | Field /AA trigger map round-trip. |
ReadMeasure / ReadViewport / ReadNumberFormat / ReadCoordinateSystem | §12.9 / §12.10 measurement and geospatial DTOs. |
ReadTilingPattern | Tiling-pattern read-back with module matrix. |
BarcodeMetadata | Symbology + module matrix recovered from a barcode field. |
Namespace JetsonPDF.Wpf — JetsonPDF.Wpf.dll (net8.0-windows)
| Type | Purpose |
|---|---|
PdfToXamlConverter | Static. Convert(ReadPdfDocument, options?) → XAML string (a StackPanel of Canvas pages). |
PdfToXamlOptions | Knobs for the converter: page background, scale, image format, …. |
Base64ImageExtension | Markup extension {jetsonpdf:Base64Image} — decodes inline base64 image bytes without touching disk. |
StandardFontMap | WPF FontFamily ↔ PDF standard-14 mapping used by both converters. |
Sub-namespace JetsonPDF.Wpf.Authoring
| Type | Purpose |
|---|---|
XamlToPdfConverter | Static. Convert(string xaml, options?) → byte[] or (string, Stream, options?) overload. STA-only. |
XamlToPdfOptions | DPI / image quality / font fallback options for the authoring pipeline. |
Document | XAML root element <jetsonpdf:Document>: PageSize, Landscape, Title, Author, Pages collection. |
Page | Member of Document.Pages with optional per-page size/landscape overrides. |
PaginatedTable + PaginatedColumn | Multi-page table with auto-overflow and repeating headers; jetsonpdf:Pagination.HideOnOverflow attached prop. |
Form (attached props) | jetsonpdf:Form.FieldName + MaxLength / IsMultiline / IsPassword / Action — turn a TextBox/CheckBox/ComboBox/ListBox/Button into an AcroForm widget. |
PageNumberExtension / PageCountExtension | Markup extensions {jetsonpdf:PageNumber} / {jetsonpdf:PageCount}; resolve per page during authoring. |
VisualTreeEmitter | The walker that turns an arranged WPF visual tree into PDF drawing operators. Public for advanced extension scenarios. |