GroupDocs.Conversion for .NET 26.9 Release Notes
There are 17 features, improvements, and bug fixes in this release.
This release adds new GIS formats (KMZ and GeoJSON Text Sequence as sources, GML and OSM XML as targets) and new compression formats (Apple Archive as source and target, ALZ and WIM as sources), brings GIS conversion to .NET Framework, and converts presentations to a self-contained HTML slideshow. It also applies each frame’s own page size and resolution when converting multi-page TIFF, limits evaluation mode to 10 conversions per process, and removes the API members that were marked obsolete in earlier versions.
Full list of changes in this release
| Key | Category | Summary |
|---|---|---|
| CONVERSIONNET-8488 | Feature | Add WIM as a conversion source for compression documents |
| CONVERSIONNET-8491 | Feature | Add Apple Archive (AAR) as a conversion source and target for compression documents |
| CONVERSIONNET-8494 | Feature | Add ALZ as a conversion source for compression documents |
| CONVERSIONNET-8508 | Feature | Add GeoJSON Text Sequence as a conversion source for GIS documents |
| CONVERSIONNET-8510 | Feature | Add KMZ as a conversion source for GIS documents |
| CONVERSIONNET-8511 | Feature | Add GIS conversion support to the net462 target framework |
| CONVERSIONNET-8512 | Feature | Add GML and OSM XML as conversion targets for GIS documents |
| CONVERSIONNET-8529 | Feature | Convert a presentation to a self-contained HTML slideshow |
| CONVERSIONNET-8519 | Improvement | Apply each frame’s own page size and resolution when converting multi-page TIFF to PDF |
| CONVERSIONNET-8520 | Improvement | Apply the frame’s own page size and resolution when converting a multi-page TIFF page by page |
| CONVERSIONNET-8521 | Improvement | Apply each frame’s own page size and resolution when converting a multi-page TIFF to tagged PDF |
| CONVERSIONNET-8523 | Improvement | Limit evaluation mode to 10 conversions per process |
| CONVERSIONNET-8561 | Improvement | Remove the obsolete converter listener, fluent handler stages and page size properties |
| CONVERSIONNET-8388 | Bug | PPTX to PDF: double underline and double strikethrough emit NaN coordinates on Linux |
| CONVERSIONNET-8515 | Bug | Converting a PDF with more than 4 pages fails in evaluation mode |
| CONVERSIONNET-8516 | Bug | Trial pages limit is not applied when converting PDF to Web |
| CONVERSIONNET-8522 | Bug | Return the correct page count for a multi-page TIFF |
Major Features
Expanded GIS conversion: KMZ and GeoJSON Text Sequence can now be loaded, and GML and OSM XML can now be produced, so every supported GIS source converts to GeoJSON, GML, GPX, KML, OSM and TopoJSON. GIS conversion is now also available on .NET Framework 4.6.2.
New compression formats: Apple Archive (AAR) can be read and written; ALZ and WIM archives can be read and converted to any supported archive format.
Presentation to HTML slideshow: a presentation can be converted to a single self-contained HTML file that plays as a slideshow with its transitions and animations. Fonts, images, audio, video, styles and the slideshow scripts are embedded in the file; the jQuery and anime.js libraries load from a CDN.
Accurate multi-page TIFF handling: each TIFF frame keeps its own page size and resolution when converting to PDF, to tagged PDF and page by page, and the correct page count is reported.
Evaluation limit: without a license, a process can run 10 conversions; the trial page limit is now also applied when converting PDF to Web.
Public API and backward incompatible changes
⚠️ Breaking changes
- The members that were marked obsolete in earlier versions are removed; code that still uses them no longer compiles. See 1. Removed obsolete members.
- In evaluation mode (no license applied), a process can run at most 10 conversions; the 11th throws
EvaluationLimitReachedException. See 2. Evaluation-mode conversion limit.
1. Removed obsolete members
The members announced as obsolete in version 26.6 are removed:
| Removed | Replacement |
|---|---|
IConverterListener and ConverterSettings.Listener | ConversionEvents OnConversionStarted / OnConversionProgress / OnConversionCompleted |
ConverterSettings.OnConversionFailed | ConversionEvents.OnDocumentFailed |
ConverterSettings.OnConversionByPageFailed | ConversionEvents.OnPageFailed |
ConverterSettings.OnCompressionCompleted | ConversionEvents.OnCompressionCompleted |
Fluent .OnCompressionCompleted(...) after .Compress(...) (IConversionCompressResultCompleted) | FluentConverter.WithEvents(e => e.OnCompressionCompleted = ...) |
Fluent interfaces IConversionHandlerSetup, IConversionHandlerFailed, IConversionHandlerCompleted | IConversionHandlersStage |
Fluent interfaces IConversionByPageHandlerSetup, IConversionByPageHandlerFailed, IConversionByPageHandlerCompleted | IConversionByPageHandlersStage |
CadConvertOptions.PageSize / PageWidth / PageHeight | CadConvertOptions.SizeSettings (PageSizeOptions) |
EBookConvertOptions.PageSize / PageWidth / PageHeight | EBookConvertOptions.SizeSettings (PageSizeOptions) |
In the fluent API, WithOptions(...) now returns IConversionHandlersStage (or IConversionByPageHandlersStage for page-by-page conversion). Chained calls such as .WithOptions(...).OnConversionCompleted(...).OnConversionFailed(...).Convert() compile unchanged.
Page size is now set only through SizeSettings:
var options = new CadConvertOptions
{
SizeSettings = new PageSizeOptions { PageWidth = 800, PageHeight = 600 }
};
2. Evaluation-mode conversion limit
Without a valid license, a process can run at most 10 conversions. Every call to Converter.Convert(...) counts as one conversion — any overload, the fluent API, and calls that fail — regardless of how many output files it produces. Converter.GetDocumentInfo() and Converter.IsDocumentPasswordProtected() do not count. The count belongs to the running process; restarting the application starts it again. Once a valid license is applied, conversions are no longer counted or limited.
The 11th conversion throws EvaluationLimitReachedException (derived from GroupDocsConversionException) with the message:
You are using GroupDocs.Conversion in evaluation mode: the limit of 10 documents converted per process has been reached. Get a free 30-day temporary license to remove all evaluation limits: https://purchase.groupdocs.com/temporary-license/
Apply a License or a Metered key before the first conversion to remove the limit:
License license = new License();
license.SetLicense("GroupDocs.Conversion.lic");
using (Converter converter = new Converter("sample.docx"))
{
converter.Convert("converted.pdf", new PdfConvertOptions());
}
Code that runs without a license can handle the limit:
try
{
using (Converter converter = new Converter("sample.docx"))
{
converter.Convert("converted.pdf", new PdfConvertOptions());
}
}
catch (EvaluationLimitReachedException ex)
{
Console.WriteLine(ex.Message);
}
3. Slideshow output for presentation-to-HTML conversion
The new WebConvertOptions.SlideShow property (default false) converts a presentation — PPT, PPTX, PPTM, PPS, PPSX, PPSM, POT, POTX, POTM, ODP, OTP or FODP — to a single self-contained HTML file (Html or Htm) that plays as a slideshow. Existing conversions are unchanged unless SlideShow is set to true.
using (Converter converter = new Converter("presentation.pptx"))
{
WebConvertOptions options = new WebConvertOptions { SlideShow = true };
converter.Convert("slideshow.html", options);
}
With SlideShow = true, contradictory options throw InvalidConvertOptionsException before the conversion starts:
| Option | Message |
|---|---|
UsePdf = true | WebConvertOptions.SlideShow cannot be combined with UsePdf: converting through PDF discards the slideshow. |
Format is MHT or MHTML | WebConvertOptions.SlideShow supports only Html and Htm output, not mht. (or mhtml) |
Watermark is set | WebConvertOptions.SlideShow does not support watermarks. |
Zoom other than 100 | WebConvertOptions.SlideShow does not support Zoom. |
A slideshow is one navigable document, so the page-by-page Convert overloads throw System.NotSupportedException with the message Saving a presentation slideshow page by page is not supported.
4. New file types
| Type | New members |
|---|---|
| CompressionFileType | Aar, Alz, Wim |
| GisFileType | GeoJsonSeq, Kmz |
| Document info | AarDocumentInfo, AlzDocumentInfo, WimDocumentInfo — each exposes the archive’s ContentTree |
using (Converter converter = new Converter("assets.zip"))
{
CompressionConvertOptions options = new CompressionConvertOptions { Format = CompressionFileType.Aar };
converter.Convert("assets.aar", options);
}
Updated documentation
- Migration notes – migrating to 26.9 and the removed obsolete members
- Conversion events – event registration without the removed members
- Convert presentations – converting a presentation to video
- Convert archive formats – Apple Archive, ALZ and WIM
- Convert to GIS formats – GML and OSM XML targets, KMZ and GeoJSON Text Sequence sources
- Install GroupDocs.Conversion for .NET – one package for .NET Framework and .NET
- Convert to CAD, eBook, PDF and Word processing with advanced options – page size, orientation and margin settings