01 Dec to 08 Dec 2025: highlights of the new online resources that we published last week.
Article: https://docs.telerik.com/devtools/document-processing/knowledge-base/fix-invalid-license-watermark-and-framework-mismatch-telerik-document-processing
Summary: Learn how to diagnose and fix “Invalid product license” watermarks and framework mismatch errors when using Telerik Document Processing (PdfProcessing, WordsProcessing, SpreadProcessing). Ensure you aren’t mixing trial and commercial builds or .NET Framework binaries with .NET Standard/.NET binaries, and keep all Telerik.Documents.* and Telerik.Zip references on the same version aligned to your target framework. Reinstall from the correct NuGet feed, replace any legacy Telerik.Windows.Documents.* references, clear bin/obj and NuGet caches, then rebuild to remove the watermark and resolve load/runtime errors.
---------------------------------------------------------------------------------------------------------------------------------------------------------
24 Nov to 01 Dec 2025: highlights of the new online resources that we published last week.
Article: https://docs.telerik.com/devtools/document-processing/knowledge-base/registering-custom-font-variations-pdf-processing
Summary: Register custom font variations in RadPdfProcessing by mapping FontFamily, FontStyle, and FontWeight to specific TTF/OTF files via FontsRepository.RegisterFont, ensuring the correct face is embedded in your PDFs. The article explains the supported style/weight pairs (Normal/Bold and Normal/Italic) and shows how to route other weights like Light or SemiBold to those mappings using FontFileSource.
---------------------------------------------------------------------------------------------------------------------------------------------------------
10 Nov to 17 Nov 2025: highlights of the new online resources that we published last week.
Summary: This changelog provides versioned release notes for the Telerik Document Processing AI Coding Assistant, including dates, new features, enhancements, and fixes. Use it to track changes and compatibility, plan upgrades, and troubleshoot behavior across versions in your projects.
Article: https://docs.telerik.com/devtools/document-processing/knowledge-base/changing-date-format-exported-excel-blazor-grid
Summary: Explains how to change the date format in an Excel export from a Telerik UI for Blazor Grid by post-processing the generated workbook with Telerik Document Processing (SpreadProcessing). You handle the grid’s Excel export event, target DateTime columns or cells in the worksheet, and apply a CellValueFormat/NumberFormat (e.g., yyyy-MM-dd) so Excel displays consistent date values instead of locale-specific text or serial numbers.
Article: https://docs.telerik.com/devtools/document-processing/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/complete-context-question-processor
Summary: This article explains how to use the RadSpreadProcessing Gen‑AI Complete Context Question Processor to answer natural-language questions over a workbook using the full spreadsheet context (cells, evaluated formulas, named ranges, tables, charts, and pivot tables). It covers configuring LLM and embeddings providers, building the document context/index from a Workbook, and invoking the API to get answers with cell/range citations, plus options for scope control, retrieval depth, and token limits.
Article: https://docs.telerik.com/devtools/document-processing/knowledge-base/consistent-pdf-font-formatting
Summary: This article shows how to achieve consistent PDF font formatting when exporting with Telerik Document Processing (PdfProcessing/WordsProcessing). You register the complete font family (regular, bold, italic, bold-italic) via FontsRepository/FontsSettings, configure PdfExportSettings to embed fonts, and set explicit substitution/fallback fonts to avoid viewer-dependent faux styles and glyph fallback. These steps prevent mismatched fonts, weights, and glyphs across machines and PDF viewers.
Article: https://docs.telerik.com/devtools/document-processing/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/custom-partialcontextquestionprocessor
Summary: This article shows how to implement and register a custom PartialContextQuestionProcessor in RadSpreadProcessing GenAI Document Insights to control partial context extraction from spreadsheets. You define logic to select relevant worksheets, ranges, tables, or metadata, override the context-building methods, and configure InsightsOptions so only the needed cells are sent to the LLM.
Article: https://docs.telerik.com/devtools/document-processing/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/custom-partialcontextquestionprocessor
Summary: This article shows how to implement a custom PartialContextQuestionProcessor in Telerik Document Processing (RadWordsProcessing) to control document context extraction for question answering and to tailor LLM prompt composition and token limits. It details the overrides and wiring to register the processor in the Gen-AI Document Insights pipeline and use it with OpenAI or Azure OpenAI providers.
Article: https://docs.telerik.com/devtools/document-processing/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/custom-partialcontextquestionprocessor
Summary: This article shows you how to implement and register a custom PartialContextQuestionProcessor in RadPdfProcessing’s Gen AI–powered Document Insights to control which PDF segments are selected and sent to an LLM. You’ll learn how to plug in your own retrieval and prompt-building logic, tune context size and relevance filtering, and integrate the processor into the Document Insights workflow to tailor PDF question answering to your model and token budget.
Article: https://docs.telerik.com/devtools/document-processing/libraries/radpdfprocessing/features/digital-signature/external-digital-signing
Summary: RadPdfProcessing supports external digital signing of PDFs, letting you compute the signing hash for a SignatureField, send it to an HSM or remote key service, and then embed the returned CMS/PKCS#7 signature to finalize the document. The article details the two-phase workflow, required API calls, ByteRange handling, and supported hash algorithms (e.g., SHA-256) for integrating external signers.
Article: https://docs.telerik.com/devtools/document-processing/knowledge-base/fit-multiline-text-stamp-annotation-radpdfprocessing
Summary: This article explains how to render multiline, wrapped text inside a Telerik Document Processing RadPdfProcessing StampAnnotation by creating a custom appearance stream and drawing the text with FixedContentEditor. It covers measuring text widths, breaking lines to fit the annotation’s rectangle, configuring font/margins/alignment, and assigning the Normal appearance so the stamp renders correctly in PDF viewers.
Article: https://docs.telerik.com/devtools/document-processing/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/getting-started
Summary: This guide shows how to configure and use Gen AI Powered Document Insights in Telerik Document Processing (RadSpreadProcessing) to programmatically analyze workbook data and ask questions about spreadsheets. It covers setup steps—adding required packages, configuring an AI provider, and enabling insights for a workbook or worksheet—and demonstrates calling the API to return structured answers with references to cells and ranges. The article includes .NET code samples to initialize the service and run queries.
---------------------------------------------------------------------------------------------------------------------------------------------------------
29 Oct to 05 Nov 2025: highlights of the new online resources that we published last week.
Article: https://docs.telerik.com/devtools/document-processing/knowledge-base/alternating-row-color-in-pdf-tables
Summary: Implement alternating row colors (zebra striping) in PDF tables with Telerik RadPdfProcessing (PdfProcessing) in C# by setting row or cell background fills during table generation. Use the FixedContentEditor/Table API and the row index (e.g., row % 2) to differentiate header and data rows and apply consistent styling in a RadFixedDocument.
Article: https://docs.telerik.com/devtools/document-processing/knowledge-base/generate-pdf-with-headers-footers-from-separate-html-files
Summary: Learn how to generate a PDF with repeating headers and footers from separate HTML files using Telerik Document Processing (WordsProcessing) in C#. You import body, header, and footer HTML with HtmlFormatProvider into RadFlowDocument instances, copy the header/footer content into the target document’s Section.Headers/Footers, then export to PDF with PdfFormatProvider.
Article: https://docs.telerik.com/devtools/document-processing/getting-started/installation/generating-api-keys
Summary: This guide shows you how to generate and manage API keys in your Telerik account to authenticate against the private Telerik NuGet feed for installing Telerik Document Processing packages. You’ll create a key (with optional expiration), copy it, and configure it in nuget.config, Visual Studio, or the dotnet/nuget CLI for local development and CI/CD, including how to revoke or rotate keys when needed.
Article: https://docs.telerik.com/devtools/document-processing/knowledge-base/pdfprocessing-prevent-font-conversion-embedding-fonts
Summary: To stop Telerik Document Processing PdfProcessing from converting your text to a different font or to outlines, register your TrueType/OpenType fonts with FontsRepository (for example, via FontsRepository.RegisterFont) and enable embedding when you export the RadFixedDocument. The article shows the code you need to register and use custom fonts, how to control embedding via export settings, and what to do when a font’s licensing prevents embedding and triggers fallback or outline conversion.
Article: https://docs.telerik.com/devtools/document-processing/knowledge-base/read-folder-encrypted-archive
Summary: This article shows you how to read and extract a specific folder from a password‑protected ZIP using Telerik Document Processing ZipLibrary in .NET. You iterate archive entries that match the target folder path and provide decryption settings (password) when opening each entry to stream out the files, handling directory structure creation as needed.
Feel free to check them out and share your thoughts!
The Telerik Team
After upgrading the Telerik Document Processing libraries to version Q1 2025 the following error messages may occur:
* "The file or assembly cannot be loaded 'Telerik.Licensing.Runtime, Version=1.4.6.0, Culture=neutral, PublicKeyToken=token_here' or one of its dependencies. The system cannot find the specified file."
* "NU1101: Unable to find package Telerik.Licensing. No packages exist with this id in source(s): Telerik nuget. PackageSourceMapping is enabled, the following source(s) were not considered: Microsoft Visual Studio Offline Packages, nuget.org."

When previewing PDF documents using RadPdfView (Telerik UI for WPF), the logo positioned at the top-left corner of the page fails to render consistently across machines. While the rest of the document displays correctly, the logo either appears distorted or is missing entirely.
Environment:
RadPdfView (Telerik UI for WPF)Telerik.Windows.Documents.dll – Version 2023.1.315.45Telerik.Windows.Documents.Core.dll – Version 2023.1.307.40Symptoms:
Troubleshooting Steps Taken:
Temporary Workaround:
Using <wv2:WebView2> to preview the PDF resolves the issue, indicating that the problem is specific to RadPdfView’s rendering engine.
Request:
Please confirm whether this is a known issue with the specified Telerik versions and advise if a fix or recommended workaround is available to ensure consistent logo rendering in RadPdfView across platforms.
Note: Using .NET version 4.8

The contents of an uploaded .docx file is being cut-off when converted to .pdf file.
Code snippet:
var fileFormatProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Docx.DocxFormatProvider();
using (MemoryStream inputFileStream = new MemoryStream())
{
this.fileSystemService.GetFile(documentInfo, inputFileStream);
if (fileFormatProvider != null)
{
var document = fileFormatProvider.Import(inputFileStream);
using (MemoryStream output = new MemoryStream())
{
var pdfProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider();
pdfProvider.Export(document, output);
var newFile = new DocumentInfo()
{
NameWithPath = outputFileName,
DocumentLocation = documentInfo.DocumentLocation
};
this.fileSystemService.SaveFile(newFile, output);
}
}
Can someone confirm if this a Telerik side issue, or am I missing a setting or config?
Thanks!

Can someone help me figure out what is wrong here? I'm getting ad horribly vague Null exception.
var docxProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Docx.DocxFormatProvider();
var pdfProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider();
RadFlowDocument document = new RadFlowDocument();
byte[] docBytes = File.ReadAllBytes(path);
document = docxProvider.Import(docBytes); ERROR HERE
var resultBytes = pdfProvider.Export(document);
File.WriteAllBytes(resultPath, resultBytes);
The document i'm trying to load contains tables and images within the tables (jpeg barcodes)
I have verified that pretty much every other tool i use can read the file without issue.
The goal is ultimately to export the file as a PDF.
Error details:
{"Object reference not set to an instance of an object."}
at Telerik.Windows.Documents.Flow.FormatProviders.Docx.Model.Elements.Document.ParagraphPropertiesElement.OnAfterRead(IDocxImportContext context)firstly loading the document i have use
// Load the PDF document
var provider = new PdfFormatProvider();
var loadedDocument = provider.Import(inDocByte,null);
and after some functinality to export the document i have used below
Telerik.Documents.ImageUtils.ImagePropertiesResolver defaultImagePropertiesResolver = new Telerik.Documents.ImageUtils.ImagePropertiesResolver();
Telerik.Windows.Documents.Extensibility.FixedExtensibilityManager.ImagePropertiesResolver = defaultImagePropertiesResolver;
provider.Export(document, memoryStream, null);
outDocPdf = memoryStream.ToArray();
what was the problem can you tell me the solution for that exception
| Unable to cast object of type 'Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Types.PdfLiteralString' to type 'Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Types.PdfName'. |

