Browse our Products

Aspose.PDF for .NET 26.5

Improvements and Changes

Changes in .NET Framework Package Support

Starting with Aspose.PDF for .NET 26.5, publication of the net40 compatibility package, Aspose.PDF for .NET Framework 4.0 (DLLs only), has resumed. This package was discontinued starting with Aspose.PDF for .NET 26.3.

The package has been republished in response to customer requests for .NET Framework 4.6.2 and .NET Framework 4.7 compatibility, tracked as PDFNET-62130 and PDFNET-62139.

Features and Enhancements

Marker-like PDF Chunking for AI and RAG Workflows

Aspose.PDF for .NET 26.5 introduces Marker-like PDF chunking for AI-driven document processing. This feature addresses issue PDFNET-60708 and enables splitting PDF documents into semantic DocumentChunk objects that can be used in Retrieval-Augmented Generation (RAG), semantic search, and vector indexing workflows.

The new API provides extension methods on Document:

MethodDescription
GetChunksAsyncConverts a PDF to Markdown and splits it into DocumentChunk objects.
IngestAsyncRuns the complete pipeline: chunks the document, generates embeddings, and upserts records into a vector store.

Chunking behavior can be configured with ChunkingOptions, including MaxChunkSize and OverlapSize. The ingestion pipeline is based on Microsoft.Extensions.AI and Microsoft.Extensions.VectorData abstractions, so it can be used with different embedding providers and vector stores.

Here is an example of how to get semantic chunks from a PDF document:

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static async Task GetDocumentChunks()
{
    var dataDir = RunExamples.GetDataDir_AsposePdf_AI();

    using (var document = new Aspose.Pdf.Document(dataDir + "RagGuide.pdf"))
    {
        var options = new Aspose.Pdf.AI.ChunkingOptions
        {
            MaxChunkSize = 512,
            OverlapSize = 50
        };

        var chunks = await document.GetChunksAsync(options, sourceId: "my-document");

        foreach (var chunk in chunks)
        {
            Console.WriteLine(string.Format("Chunk {0}: {1}", chunk.Index, chunk.Id));
            Console.WriteLine(chunk.Content);
        }
    }
}

For more details, see PDF Chunking and Embedding.

Signing with Certificate and TSA

Aspose.PDF for .NET 26.5 extends digital signing support for workflows that require certificate-based signatures together with a timestamp authority (TSA). This enhancement addresses issue PDFNET-62072 and adds new constructor overloads for PKCS7 and PKCS7Detached that accept TimestampSettings.

.NET Framework Compatibility Packages

Aspose.PDF for .NET 26.5 restores publication of the .NET Framework compatibility package and helps projects that target legacy .NET Framework versions use the current Aspose.PDF release line. This update addresses PDFNET-62130 for .NET Framework 4.6.2 and PDFNET-62139 for .NET Framework 4.7 package availability.

Other Notable Enhancements and Features

KeySummaryCategory
PDFNET-60708Introduce Marker-like PDF chunkingFeature
PDFNET-62072Signing with certificate and TSA using Aspose.PDFFeature
PDFNET-62130Make build for .NET Framework 4.6.2Enhancement
PDFNET-62139Request for .NET Framework 4.7, 26.4 DLL PackageEnhancement

Bug Fixing and Other Changes

KeySummaryCategory
PDFNET-40928PDF to TIFF: conversion taking long processing timeBug
PDFNET-40914HTML(RTL) to PDF: RTL text is rendering incorrectlyBug
PDFNET-42123PDF to DOCX: images are rendering incorrectlyBug
PDFNET-40899XPS to PDF: incorrect Z-index of imageBug
PDFNET-40883HTML to PDF: some Chines characters render incorretlyBug
PDFNET-62036Deterioration of compliance with the Pdf/UA standard when merging documents.Bug
PDFNET-61703Fix Badly formed XML comment IgnoreDestinationTokens RtfParserBug
PDFNET-62032PDF to DOCX: Highlight annotation still obscures textBug
PDFNET-41597BookMark navigation is broken while importing bookmark form xmlBug
PDFNET-41594Multiline Textbox Auto Font SizeBug
PDFNET-41590When TextSegment.Text is set to empty string “”, the code is hanging and takes more and more of memory.Bug
PDFNET-41586System.StackOverflowException while opening PDF fileBug
PDFNET-41584TextExtraction hangs for specific PDF fileBug
PDFNET-41577Accessing PDF page throws Cross reference table or cross refference stream not foundBug
PDFNET-41574Page numbers symbols($p,$P) issue in FooterBug
PDFNET-41566Setting value of ComboBoxField for existing options leads to double encoded valueBug
PDFNET-41559PDF to DOCX - Contents missing in resultant fileBug
PDFNET-41557AddStamp method consumes all available system memoryBug
PDFNET-41544PdfViewer: characters are missing in resultant print outBug
PDFJAVA-45528PDF to HTML - CSS not applying properly when generated from HTMLBug
PDFNET-41534HtmlFragment is not rendering hyperlinkBug
PDFNET-62039Pdf A-1A compliance lost and form corrupted after saveBug
PDFNET-41784PDF to PDFA: Semi-transparency is lost when converting to PDF/ABug
PDFNET-58863XFA form to Standard form conversion loses formattingBug
PDFNET-41747PDF to PDFA: conversion time issueBug
PDFNET-41746PDF to PDFA: text overlappingBug
PDFNET-41685Filling PDF does not respect field formattingBug
PDFNET-41676PDF to PDFA3b: corrupt the documentBug
PDFJAVA-37340PDF to DOCX conversion performance issueBug
PDFNET-41657PDF to Excel - Table image is being ignoredBug
PDFNET-41626Problem setting a transparent background for a text stamp.Bug
PDFNET-41852Processing of corrupt FilesBug
PDFNET-43421TIFF to PDF - Resultant PDF is too largeBug
PDFNET-41798Calculated form field returns empty valueBug
PDFNET-41796PDF to PDFA: text rendering issueBug
PDFNET-41792Merging corrupted PDF documentBug
PDFNET-62142PdfFileEditor.Extract throws NullReferenceException when extracting all pagesBug
PDFNET-59981Multiple issues with PS documentBug
PDFNET-40178Extended rights of PDF form are not being preservedBug
PDFNET-60174PDF to TIFF: Some characters are not rendered in the output filesBug
PDFNET-59727System.NullReferenceException when using PdfFormat.ZUGFeRDBug
PDFNET-50406Unable to convert PDF to PDF/A-1bBug

Documentation Updates

The PDF Chunking and Embedding article has been added to describe how to split PDF documents into semantic chunks and generate vector embeddings for RAG pipelines and semantic search.

Public API and Backward Incompatible Changes

Added APIs

  • Type: Aspose.Pdf.AI.ChunkingOptions
  • Type: Aspose.Pdf.AI.DocumentChunk
  • Type: Aspose.Pdf.AI.DocumentExtensions
  • Method: Aspose.Pdf.AI.ChunkingOptions.#ctor System.Void
  • Method: Aspose.Pdf.AI.ChunkingOptions.Validate System.Void
  • Method: Aspose.Pdf.AI.DocumentChunk.#ctor(System.String,System.String,System.Int32,System.String) System.Void
  • Method: Aspose.Pdf.AI.DocumentChunk.GetVectorDefinition(System.Int32) Microsoft.Extensions.VectorData.VectorStoreCollectionDefinition
  • Method: Aspose.Pdf.Forms.PKCS7.#ctor(Aspose.Pdf.TimestampSettings) System.Void
  • Method: Aspose.Pdf.Forms.PKCS7Detached.#ctor(Aspose.Pdf.TimestampSettings) System.Void
  • Method: Aspose.Pdf.LowCode.TimestampOptions.#ctor System.Void
  • Property: Aspose.Pdf.AI.ChunkingOptions.MaxChunkSize System.Int32
  • Property: Aspose.Pdf.AI.ChunkingOptions.OverlapSize System.Int32
  • Property: Aspose.Pdf.AI.DocumentChunk.Content System.String
  • Property: Aspose.Pdf.AI.DocumentChunk.Context System.String
  • Property: Aspose.Pdf.AI.DocumentChunk.Embedding System.Nullable
  • Property: Aspose.Pdf.AI.DocumentChunk.Id System.String
  • Property: Aspose.Pdf.AI.DocumentChunk.Index System.Int32
  • Property: Aspose.Pdf.AI.DocumentChunk.Metadata System.Collections.Generic.IDictionary
  • Field: Aspose.Pdf.AI.ChunkingOptions.DefaultMaxChunkSize System.Int32
  • Field: Aspose.Pdf.AI.ChunkingOptions.DefaultOverlapSize System.Int32
  • Field: Aspose.Pdf.AI.ChunkingOptions.MaximumChunkSize System.Int32
  • Field: Aspose.Pdf.AI.ChunkingOptions.MinimumChunkSize System.Int32

Removed APIs

No removings.

Backward Incompatible Changes

No changes.