Skip to content

v26.9.0

Latest

Choose a tag to compare

@aspose-dl aspose-dl released this 01 Sep 11:01

Aspose.PDF FOSS for .NET v26.9.0

A rendering and cross-platform release: the software renderer closes the remaining transparency, colour and image-sampling gaps, the image, font and asset paths that used to need Windows now run everywhere, and the API gains a byte-level file repair facade, date fields, hide actions and the standard structure-type vocabulary.

New APIs

  • PdfFileSanitization (Facades): repairs files too damaged to open - trims waste before %PDF- and after the final %%EOF, rebuilds a broken cross-reference table and trailer by re-scanning the indirect objects - without parsing the file into a Document.
  • DateField: a text field presenting a date with a popup JavaScript calendar (DateFormat, DateTime Value, Init(page)); EmptyValueException when a required value is left empty.
  • HideAction (/S /Hide) sets or clears the hidden flag of its target annotations; Actions.Next chains are live and submit targets chain.
  • Tagged PDF: ruby and warichu inline elements (RubyRB/RT/RPElement, WarichuWT/WPElement) and the StructureTypeStandard / StructureTypeCategory role set (ISO 32000-1 Tables 333-337) behind StructureElement.StructureType.
  • Path (Drawing): a shape composed of other shapes whose outlines join one path painted once, so the region a line and two arcs enclose fills as a whole.
  • Typed exceptions: FontEmbeddingException (licence flags forbid embedding; Document.DisableFontLicenseVerifications, GetLastFontEmbeddingError()), SignatureLengthMismatchException (Signature.AvoidEstimatingSignatureLength), MissingOptionalDependencyException with PrintingOptionalDependencyGuard naming the package to add.
  • Signature verification honours ValidationOptions.CheckCertificateChain: the chain is built from the embedded certificates plus the machine and per-user intermediate and root stores.
  • Form export: FieldExportingData.AppearanceImageData captures a widget appearance's image XObjects; PageCollectionExtensions for pagination / Bates stamping over a page collection.

Rendering

  • Dash patterns on software strokes; annotation appearances rotate with the page; a DPI render keeps the requested resolution; a page pinned to a non-proportional canvas stretches to fill it.
  • Transparency: soft masks (matte un-premultiply, backdrop colour resolved in its own space, groups composited through the mask active at their Do), isolated vs non-isolated knockout, colour-key /Mask, indexed images with soft masks, partial-alpha scanline fill.
  • Colour: overprinted subtractive images tint instead of knocking out; bare sh through multi-spot ink spaces over a real backdrop; single-colorant DCT images through their tint transform; function-based shadings paint.
  • Images: minified images are box-averaged, sub-pixel-thin images still paint a one-pixel sliver, inline images and image masks honour a mirrored CTM, tiling-pattern tile ranges follow the cell bbox; both renderers sample on the pixel-corner grid.

Text and fonts

  • Horizontal scaling stretches glyphs and advances; a negative font size or scale flips the glyph axes; a text matrix scaling the axes differently squeezes the glyphs; vertical CMaps stack CID glyphs down the column.
  • A simple font with no resolvable program draws in a substitute face; an uncovered CJK radical falls back to its unified-ideograph glyph; fallback chains find their faces by name; system font stores that nest their faces are enumerated.
  • Whole-paragraph re-flow on replace (WholeWordsHyphenation); AddPageBreak no longer cuts a text line.

Cross-platform

  • Managed BMP reader, managed baseline JPEG encoder (ImageStamp.Quality, 1-bit IsBlackWhite embed) and managed TIFF paths; bilevel sources recognised by content and by a TIFF's own depth.
  • Glyph recognition, redaction (covered pixels destroyed) and image colour-type sampling work off Windows.
  • HTML import: Windows-authored asset paths and a saved page's resources resolve case-blind off Windows; file: URIs with POSIX-absolute paths; CRLF markup.

Documents, metadata and PDF/A

  • A PDF 2.0 save moves the descriptive Info text into XMP and mirrors all eight Info entries; Info text outside Latin-1 is written as UTF-16BE; parsed XMP structs stay live dictionaries.
  • PDF/A conversion refuses a live-signed file; a document this instance just UA-converted is exempt from the untagged-content scan; an identity-encoded .notdef reference is reported once per font.
  • A compressed object survives its object stream going missing; every BDC with an inline dictionary surfaces its properties; a stream-backed embedded file stamps its /Params dates with the embed time.

Forms, annotations and facades

  • A field is the collection of its widgets; a placed merged field carries the widget identity; JSON import routes each child to its own widget.
  • Line-measure round trip through XFDF; the highlight face materialises at add time; XFA compound picture clauses format through their quoted affixes and null alternative.
  • PdfFileEditor keeps a concatenation of tagged documents tagged; PdfFileSignature removes signatures on the live document when bound to one; a page reports the watermark it has even where its image cannot be built.

Converters and generator

  • HTML to PDF: RTL lines seat on the body box's right edge and are measured in the presentation forms they are drawn in; the doctype lead-paragraph and HTML5 first-block collapse are one rule; pre-wrap labels, bordered form containers, class-width letters, fact sheets and portal exports lay out on measured geometry.
  • PDF to Markdown: heading numeration detection recognises arabic and roman prefixes. Comparison: the diff Operation / EditOperationsOrder enums live in Aspose.Pdf.Comparison.
  • Generator: paragraphs on a /Rotate page lay out in the media frame and paint upright; the footer band stacks top-down below the body margin; class-width form letters lay out on their declared body width.

Documentation and housekeeping

  • README capabilities, API tables (20 new types, 915 public types in all) and Scope-and-Limitations brought up to date; every in-repo guide re-verified against the public API.
  • No source file over 1,000 lines; optional Sonar C# analysis (-p:RunSonarAnalyzer=true).

NuGet: Aspose.PDF.FOSS 26.9.0

dotnet add package Aspose.PDF.FOSS --version 26.9.0

Licensed under MIT. Some features are incomplete and the public API may change between releases.