[Release] GroupDocs.Conversion for .NET v26.10 – Per-Resource Control of External Resources and Safer Defaults

Dear GroupDocs customers,

We are pleased to announce the release of GroupDocs.Conversion for .NET v26.10. This release puts the external resources a document loads under your control: a new handler lets you allow, skip or supply each resource, and by default local files outside the document’s folder, UNC paths and scripts are no longer used. It also fixes conversions that ignored the requested output format or page selection, MHT and MHTML pages that showed their MIME source, several e-mail, archive, CAD, 3D and .NET Framework conversion failures, and moves to a patched System.Security.Cryptography.Pkcs.

Key New Features

Per-Resource Handler for External Resources: Implement the new IExternalResourceHandler interface and set it through the ExternalResourceHandler property of the load options. It is called for each resource a document asks to load, such as an image or a stylesheet, with the default decision already made, and can allow the resource, skip it or supply its content. The handler below also loads .jpg images from one trusted host:

public class TrustedJpegHandler : IExternalResourceHandler
{
    public void OnLoading(ExternalResourceLoadingArgs args)
    {
        Uri uri;
        if (Uri.TryCreate(args.Uri, UriKind.Absolute, out uri)
            && uri.Scheme == Uri.UriSchemeHttps
            && string.Equals(uri.Host, "cdn.example.com", StringComparison.OrdinalIgnoreCase)
            && uri.AbsolutePath.EndsWith(".jpg", StringComparison.OrdinalIgnoreCase))
        {
            args.Skipped = false;
        }
    }
}
WebLoadOptions loadOptions = new WebLoadOptions { ExternalResourceHandler = new TrustedJpegHandler() };
using (Converter converter = new Converter("sample.html", (LoadContext loadContext) => loadOptions))
{
    converter.Convert("converted.pdf", new PdfConvertOptions());
}

Running Trusted Scripts: Scripts in HTML, MHTML, XHTML and SVG documents no longer run by default. Set the new ExecuteScripts property of WebLoadOptions or SvgLoadOptions to true for documents you trust.

External Resource Control for XBRL and 3D: FinanceLoadOptions and ThreeDLoadOptions now have SkipExternalResources, WhitelistedResources and ExternalResourceHandler, like the other load options.

SVG Load Options: SVG and SVGZ documents now use SvgLoadOptions, which skips external resources by default.

Failed Items Reported: ConversionEvents.OnDocumentFailed is now also called for each archive entry, e-mail attachment, mailbox item or embedded file that cannot be loaded, with the item’s name and position, while the rest of the container still converts.

Major Improvements & Fixes

Conversions to spreadsheet, presentation, word-processing and image formats now write the requested format instead of always XLSX, PPTX, DOCX or a multi-frame TIFF.

Page selection now works for e-mail, web and multi-page TIFF to word-processing conversions, for Word Flat OPC documents, and for Project to PS and PCL.

MHT and MHTML pages now render instead of showing their MIME source when converted to images, PDF, XPS, TeX and word-processing formats.

VCF files now keep every contact and its characters when converted to Excel and other formats.

Watermarks are now applied when converting non-image documents to images and when converting CSV and TSV documents.

Fixed .NET Framework projects failing to load RuntimeInformation or ValueTuple, and EML, HTML and CAD conversions failing on .NET Framework 4.6.2 to 4.7.0.

System.Security.Cryptography.Pkcs is raised to 8.0.2 (10.0.13 on .NET 10) to address CVE-2026-84008 and CVE-2026-70162.

Also fixed: PST, OST, MBOX and archive items that stopped a conversion, PostScript with the run or file operator on .NET Framework, page-by-page conversion of PSD, PSB and AI documents, whole CAD drawings to TeX, XHTML with inline SVG, PDF, XPS and SVG to EPUB, Visio and SVG to spreadsheet, transparent backgrounds turning black in J2K, JP2, WMF and WMZ output, and the page count of Publisher documents.

:warning: Breaking Changes

External resources are handled more strictly by default: local files outside the document’s folder and UNC paths are no longer loaded, scripts no longer run, 3D models load material libraries, textures and buffers only from their own folder, and XSL-FO, Markdown, and HTML or e-mail to spreadsheet conversions follow the same rules. Content a document carries and local files inside its own folder still load.

WhitelistedResources entries must now be absolute URI prefixes, such as https://cdn.example.com/assets/ or file:///C:/assets/. Entries such as jpg or example.com make the load fail with InvalidLoadOptionsException.

An XBRL or inline XBRL document whose taxonomy lies outside its own folder now fails to load with InvalidLoadOptionsException. To convert a filing that references a remote taxonomy, allow external resources for it:

using (Converter converter = new Converter("filing.xbrl", (LoadContext loadContext) => new FinanceLoadOptions { SkipExternalResources = false }))
{
    converter.Convert("filing.xlsx", new SpreadsheetConvertOptions());
}

IResourceLoadingOptions has a new member, ExternalResourceHandler; only code that implements the interface itself must add it.

Useful Links

Full Release Notes – View the complete list of changes and technical details.

Release Blog Post – Highlights of v26.10.

Download from NuGet – Update your project to the latest version.

Direct Download – ZIP and MSI packages.

Migrating to v26.10 – What to change for the stricter external-resource defaults.

Skip Loading of External Resources – What loads by default, whitelist entries and their migration, deciding per resource with a handler and running scripts.

Network Access and Data Privacy – When the library accesses the network and how to run it offline.

Conversion Events – Including OnDocumentFailed for contained documents that cannot be loaded.

GitHub Examples – Sample projects, including new examples for loading resources from trusted locations, deciding per resource with a handler, running the scripts of a trusted HTML document and converting XBRL with a remote taxonomy.

Product Documentation – Explore guides and API references.

If your documents rely on remote images, local files outside their folder, scripts or remote XBRL taxonomies, or you set WhitelistedResources, please review the breaking changes above before upgrading.

As always, we value your feedback. Please let us know if you have any questions or feature requests for our upcoming releases!

Best regards,

The GroupDocs Team