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.

TypePurpose
PdfDocumentTop-level document. Configure metadata, encryption, conformance flags, then call AddPage and Save.
PdfPageOne page. Drawing surface for text, images, paths, annotations, widgets, and tagged content blocks.
PageSizeReadonly record struct in points. Built-ins: Letter, Legal, Tabloid, A3, A4, A5.
PdfFontFont handle for drawing — one of the standard 14 (FontFamily + FontStyle) or an EmbeddedFontFace.
FontFamily / FontStyleEnums covering the standard 14 (Helvetica / Times / Courier / Symbol / ZapfDingbats) and Regular / Bold / Italic / BoldItalic.
EmbeddedFontFaceLoads TTF / OTF (CFF1) bytes for embedding. Subsetting happens at save time.
PdfType3Font / PdfType3GlyphBuilderProcedural fonts: glyphs drawn as content streams. Auto-emits /ToUnicode.
PdfImageRaster image XObject. Construct via FromFile, FromJpeg, FromPng; same instance dedups across pages.
PdfImageMask1-bit stencil mask for use as an image's /Mask or via DrawImageMask.
PdfFormXObjectReusable content stream for headers, watermarks, logos — drawn via page.DrawForm.
PdfPathVector path with full PDF path operators: move, line, curve, close, fill rule, dashes, joins.
PdfColorColour value — Rgb, Cmyk, Gray factories, plus named constants.
PdfColorSpace + subclassesPdfCalGrayColorSpace, PdfCalRgbColorSpace, PdfLabColorSpace, PdfSeparationColorSpace, PdfDeviceNColorSpace.
PdfShading + subclassesPdfAxialShading, PdfRadialShading, PdfFunctionBasedShading for gradients and procedural fills.
PdfTilingPatternTiling pattern XObject (PaintType 1 coloured / 2 uncoloured); fill paths/text via the pattern colour space.
PdfTransparencyGroupBlock-scoped transparency group with opacity and blend mode.
PdfOptionalContentGroup / PdfLayerScopeLayered content (OCGs); toggleable visibility in viewers.
PdfStructureElement / PdfStructureAttributesTagged-PDF structure tree elements with attribute bundles.
PdfOutline / PdfOutlineTree / PdfOutlineItemBookmark tree for the document /Outlines dict.
PdfPageLayout / PdfPageMode / PdfViewerPreferencesCatalog-level viewer presentation settings.
PdfMeasure + subclassesPdfRectilinearMeasure (/RL), PdfGeospatialMeasure (/GEO) and PdfNumberFormat.
PdfCoordinateSystemEPSG / WKT projection paired with PdfGeospatialMeasure.
PdfViewportPer-page viewport tying a region of the page to a measurement system.
PdfLinearizerStatic rewriter; takes any PDF and re-emits it in ISO Annex F fast-web-view form.
PdfIncrementalUpdaterAppend-only edits to an existing PDF without rewriting unchanged bytes.
PdfConformanceFlags enum: PDF/A-1b, 2A/2B, 3A/3B, PDF/UA-1, UA-2.
PdfConformanceValidatorStatic validator; doc.Validate() shorthand returns IReadOnlyList<PdfConformanceIssue>.
PdfConformanceIssue / PdfConformanceSeverityOne issue from validation: code, message, severity (Error / Warning).
PdfConformanceExceptionThrown by Save when ThrowOnConformanceError is set and validation fails.
PdfEmbeddedFileEmbedded file stream — the body of a /Filespec.
PdfAssociatedFile / PdfAfRelationshipCatalog / page / annotation /AF entries with relationship enum (Source / Data / Alternative / Supplement / EncryptedPayload / FormData / Schema / Unspecified).
PdfPieceInfoEntryEditor metadata round-trip via the page /PieceInfo dict.
PdfIccProfileICC profile blob attached to images / colour spaces.

Namespace JetsonPDF.Annotations

Every annotation subtype shipped. Add via page.AddAnnotation(...) or convenience helpers like page.AddLink(...).

TypePurpose
PdfAnnotationAbstract base — rectangle, page link, contents, colour, flags.
PdfLinkAnnotationClickable rectangle — URI, GoTo, GoToR, Launch, Hide, SetOCGState, ImportData, Sound actions.
PdfTextMarkupAnnotation + PdfTextMarkupKindHighlight / Underline / StrikeOut / Squiggly with quad-point geometry. Uses PdfQuad.OverText for accurate ascent/descent.
PdfFreeTextAnnotationFree-floating text annotation with optional callout, justification, font.
PdfGeometricAnnotation + subclassesPdfLineAnnotation, PdfSquareAnnotation, PdfCircleAnnotation, PdfPolygonAnnotation, PdfPolyLineAnnotation, PdfInkAnnotation.
PdfLineEndingLine-ending style enum (Square, Circle, Diamond, OpenArrow, ClosedArrow, …).
PdfStampAnnotationRubber-stamp annotation with user-supplied or built-in icon name.
PdfCaretAnnotationEditorial caret marker.
PdfFileAttachmentAnnotation + PdfFileAttachmentIconEmbedded-file marker; carries a PdfEmbeddedFile + filespec.
PdfPopupAnnotationPopup window for a parent markup annotation's notes.
PdfSoundAnnotationSound clip annotation; raw PCM with sample rate / channels metadata.
PdfRedactionAnnotationRedaction 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.

TypePurpose
PdfWidgetAbstract widget base — field name, rectangle, flags, optional /AA additional actions.
PdfTextFieldSingle- or multi-line text input. Combs, password, multi-line, max length.
PdfCheckBoxOn/off checkbox; IsChecked default state.
PdfRadioGroup / PdfRadioButtonMutually-exclusive radio group with multiple PdfRadioButton children.
PdfComboBox / PdfListBoxChoice fields. Sort, multi-select, commit-on-select-change.
PdfPushButtonClick button with caption and PdfWidgetAction.
PdfSignatureFieldEmpty /Sig placeholder for an external signing pass.
PdfBarcodeField2D barcode field (§12.7.4.5) painted from a caller-supplied bool[,] module matrix.
BarcodeSymbologyEnum: QRCode / DataMatrix / PDF417 / Code128 / Code39.
PdfAdditionalActions/AA trigger map: Keystroke / Format / Validate / Calculate / mouse events.
PdfSignatureSeedValue / SeedValueFlagsFilter / sub-filter / digest / reasons / MDP constraints emitted as /SV.
PdfFieldLock / PdfFieldLockActionStatic /Lock dict: All / Include / Exclude.
FieldAlignmentLeft / Center / Right alignment for field appearance streams.
Pdf*CollectionPer-document widget enumerators (PdfTextFieldCollection, …) iterating across all pages.

Encryption & signatures

All in JetsonPDF namespace; grouped here by purpose.

TypePurpose
PdfEncryptionOptionsUser / owner password, permissions, algorithm. Assign to doc.Encryption.
PdfEncryptionAlgorithmEnum: Aes128 (V4 R4) and Aes256 (V5 R6, PDF 2.0).
PdfPermissionsFlags enum: Print / Modify / CopyContent / AddAnnots / FillForms / Accessibility / Assemble / PrintHigh.
PdfSignerStatic. Sign(byte[], options) / Sign(input, output, options). Detached PKCS#7.
PdfSignatureOptionsCertificate, reason, location, contact, field name, hash algorithm, reserved-bytes, optional DocMDP / FieldMDP.
PdfDocMdpPermissionNoChanges / FormFilling / FormFillingAndAnnotations.
PdfFieldMdpRestrictionPer-field MDP transform: All / Include / Exclude.
PdfTimestamper / PdfTimestampOptions / PdfTimestampClientRFC 3161 DocTimeStamp via caller-supplied or built-in HTTP TSA client.
PdfDssStatic. AddSecurityStore writes /DSS + per-signature VRI for PAdES B-LTA.
PdfDocumentSecurityStore / PdfVriDocument-level cert / CRL / OCSP store + per-signature VRI sub-dict.

Namespace JetsonPDF.Reading JetsonPDF.Reader.dll

Read-side DTOs. Everything starts with PdfReader.Load.

TypePurpose
PdfReaderStatic entry point. Load(string | Stream | byte[], password?)ReadPdfDocument.
ReadPdfDocumentParsed document: Pages, Info, Outlines, PageLabels, NamedDestinations, PageLayout, PageMode, ViewerPreferences, OpenAction, Language, IsEncrypted, EncryptionAuthenticated, OutputIntents, Conformance, DocMdpPermission, CalculationOrder.
ReadPdfPageOne page: dimensions, Items (text / vector / image / inline-image / form-XObject), annotations, widgets.
PageItem + subclassesPageTextItem, PagePathItem, PageImageItem, PageInlineImageItem, PageFormXObjectItem.
ReadOutlineItemBookmark-tree node with title, destination, child list.
ReadStructureTree / ReadStructureElement / ReadStructureAttributesTagged-PDF tree, recursively. AnnotationRefs resolves OBJR child refs.
ReadOptionalContentOCGs and the catalog /D default config.
ReadOutputIntentOutput intent (PDF/A / PDF/X) with ICC profile and identifier.
ReadSignatureSignature field metadata: signer, time, reason, MDP / FieldMDP, integrity status.
ReadSignatureSeedValue / ReadFieldMdpRestriction/SV and FieldMDP transform read-back.
ReadDocumentSecurityStore / ReadVriCatalog-level /DSS with VRI sub-dict (cert / CRL / OCSP).
ReadAdditionalActionsField /AA trigger map round-trip.
ReadMeasure / ReadViewport / ReadNumberFormat / ReadCoordinateSystem§12.9 / §12.10 measurement and geospatial DTOs.
ReadTilingPatternTiling-pattern read-back with module matrix.
BarcodeMetadataSymbology + module matrix recovered from a barcode field.

Namespace JetsonPDF.Wpf JetsonPDF.Wpf.dll (net8.0-windows)

TypePurpose
PdfToXamlConverterStatic. Convert(ReadPdfDocument, options?) → XAML string (a StackPanel of Canvas pages).
PdfToXamlOptionsKnobs for the converter: page background, scale, image format, ….
Base64ImageExtensionMarkup extension {jetsonpdf:Base64Image} — decodes inline base64 image bytes without touching disk.
StandardFontMapWPF FontFamily ↔ PDF standard-14 mapping used by both converters.

Sub-namespace JetsonPDF.Wpf.Authoring

TypePurpose
XamlToPdfConverterStatic. Convert(string xaml, options?)byte[] or (string, Stream, options?) overload. STA-only.
XamlToPdfOptionsDPI / image quality / font fallback options for the authoring pipeline.
DocumentXAML root element <jetsonpdf:Document>: PageSize, Landscape, Title, Author, Pages collection.
PageMember of Document.Pages with optional per-page size/landscape overrides.
PaginatedTable + PaginatedColumnMulti-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 / PageCountExtensionMarkup extensions {jetsonpdf:PageNumber} / {jetsonpdf:PageCount}; resolve per page during authoring.
VisualTreeEmitterThe walker that turns an arranged WPF visual tree into PDF drawing operators. Public for advanced extension scenarios.

See the API in use →