There are 18 features, improvements, and bug fixes in this release. This update reinforces CAD conversion with layout‑level selection, per‑layout output (slides, worksheets, pages, SVG, etc.), and adds XAR and CAB as compression targets, as well as Mermaid MMD and Drawio as diagram sources/targets.
Co je nového v tomto vydání
| Klíč | Kategorie | Shrnutí |
|---|---|---|
| CONVERSIONNET-8437 | Funkce | Přidat formát souboru Drawio jako cíl konverze pro diagramové dokumenty |
| CONVERSIONNET-8442 | Funkce | Přidat formát souboru Mermaid MMD jako zdroj konverze pro diagramové dokumenty |
| CONVERSIONNET-8445 | Funkce | Přidat CAB jako cíl konverze pro kompresní dokumenty |
| CONVERSIONNET-8459 | Funkce | Přidat CadLayoutScope do CadLoadOptions pro konverzi modelového prostoru, papírových rozvržení nebo obojího |
| CONVERSIONNET-8464 | Funkce | Přidat XAR jako zdroj i cíl konverze pro kompresní dokumenty |
| CONVERSIONNET-8460 | Vylepšení | Převést každé CAD rozvržení na vlastní snímek, list, stránku Wordu, HTML/MHTML obrázek a SVG oblast |
| CONVERSIONNET-8461 | Vylepšení | Pojmenovat chybějící rozvržení, když výběr CAD rozvržení neodpovídá žádnému |
| CONVERSIONNET-8462 | Vylepšení | Nahlásit nenastavený LoadOptions.Format jako chybějící místo vyhození výjimky |
| CONVERSIONNET-8361 | Chyba | Tvary DOCX s obrysy jsou při konverzi do PDF vykresleny nesprávně |
| CONVERSIONNET-8396 | Chyba | Převod souboru Presentation do PDF vede k nekonzistentním záhlavím/patičkám |
| CONVERSIONNET-8399 | Chyba | Převod souboru Presentation s poškozenými souhrnnými odkazy vede k výjimce GroupDocsConversionException |
| CONVERSIONNET-8426 | Chyba | Konverze souboru DWG do PDF podle nastavení orientace listu na stránce |
| CONVERSIONNET-8427 | Chyba | Opravit NullReferenceException při konverzi CAD výkresů bez aktivního rozvržení |
| CONVERSIONNET-8428 | Chyba | Opravit dvojitou konverzi jednotek, když je pro CAD konverze nastaven explicitní rozměr stránky |
| CONVERSIONNET-8429 | Chyba | Opravit, že CAD na PDF/UA ignoruje CadLoadOptions |
| CONVERSIONNET-8430 | Chyba | Opravit, že CadDocumentInfo hlásí jednu stránku pro CAD dokumenty s více rozvrženími |
| CONVERSIONNET-8444 | Chyba | Problém s náhledem v linuxovém prostředí pro GroupDocs.Conversion |
| CONVERSIONNET-8467 | Chyba | EML na PDF: Výjimka nekompatibilních typů jednotek |
Změny veřejného API
⚠️ Zpětně nekompatibilní změny – Následující aktualizace mění stávající veřejné chování. Upravte svůj kód, aby nedocházelo k chybám za běhu.
1. LoadOptions.Format nyní vrací null místo vyhození výjimky, když není formát nastaven
Ovlivněné třídy: všechny 28 typizovaných load‑options (např., SpreadsheetLoadOptions, PdfLoadOptions, CadLoadOptions, …)
Co se změnilo
Čtení vlastnosti Format před přiřazením formátu dříve vyvolávalo výjimku. Nyní vrací null, což umožňuje jednoduchou kontrolu na null.
Příklad migrace
var loadOptions = new SpreadsheetLoadOptions();
if (loadOptions.Format == null)
{
// Nová cesta kódu – dříve nedosažitelná, protože getter vyhazoval výjimku.
}
Pokyny
Nahraďte jakýkoli try/catch kolem loadOptions.Format kontrolou na null. Nekontrolujte proti FileType.Unknown; správný test je == null.
2. Přesná validace CadLoadOptions.LayoutNames s podrobným hlášením chyb
Ovlivněná třída: CadLoadOptions
Co se změnilo
LayoutNames jsou nyní porovnávány přesně (rozlišuje se velikost písmen) s názvy rozvržení v kresbě. Pokud žádný neodpovídá, konverze selže s InvalidLoadOptionsException, která vypíše dostupná rozvržení a neodpovídající požadavek.
Příklad migrace
using GroupDocs.Conversion.Exceptions;
try
{
using var converter = new Converter("drawing.dwg",
ctx => new CadLoadOptions { LayoutNames = new[] { "layout1" } });
converter.Convert("out.pdf", new PdfConvertOptions());
}
catch (InvalidLoadOptionsException ex)
{
// Příklad zprávy:
// "No layout name in CadLoadOptions.LayoutNames matches this drawing, which carries
// Model, Layout1, Layout2. Requested: layout1. Names are matched exactly, so a name
// that differs only in case is a different name."
Console.WriteLine(ex.Message);
}
Pokyny
- Ujistěte se, že názvy rozvržení jsou napsány správně a odpovídají velikosti písmen použité v zdrojové kresbě.
- Pokud potřebujete jen podmnožinu rozvržení, uveďte přesné názvy; neodpovídající položky jsou ignorovány a odpovídající rozvržení jsou stále vykreslena.
3. CAD výkresy s více listy nyní vytvářejí jednu výstupní jednotku na list
Ovlivněné třídy: Converter, PresentationConvertOptions, PdfConvertOptions
Co se změnilo
Dříve převod kresby s více papírovými rozvrženími vedl k jednomu zploštělému obrázku/snímku. Nyní konverze vytváří samostatné výstupní jednotky (snímky, stránky atd.) pro každé rozvržení, velikost odvozenou z nastavení stránky rozvržení. Converter.GetDocumentInfo().PagesCount nyní vrací počet vytvořených jednotek.
Příklad migrace – převod
using var converter = new Converter("multi-layout.dwg");
// Tři listy dovnitř, tři snímky ven – dříve jeden zploštělý snímek.
converter.Convert("drawing.pptx", new PresentationConvertOptions());
Příklad migrace – dotaz na počet stránek
using var converter = new Converter("multi-layout.dwg");
int sheets = converter.GetDocumentInfo().PagesCount; // Vrátí 3 pro tři rozvržení
Pokyny
- Přizpůsobte následné zpracování (např. stránkování UI, pojmenování souborů) tak, aby zvládalo více výstupních souborů/stránek.
- Pro výkresy s jedním listem se chování nemění.
- Výjimkou je CAD → PDF/UA‑1, který stále vykresluje jedinou označenou stránku.
4. Nová vlastnost CadLoadOptions.LayoutScope pro explicitní řízení, které prostory jsou konvertovány
Ovlivněná třída: CadLoadOptions
Co se změnilo
LayoutScope umožňuje určit, zda načíst Model, Layouts nebo Both (výchozí).
- Když je nastaven
LayoutNames,LayoutScopese ignoruje, protože explicitní názvy mají přednost. - Výběr rozsahu, který nevrátí žádné listy u kresby, která alespoň jeden list obsahuje, nyní vyvolá
InvalidLoadOptionsExceptionmísto tichého načtení výchozích prostorů.
Příklad migrace – převod jen papírových rozvržení
using GroupDocs.Conversion;
using GroupDocs.Conversion.Options.Convert;
using GroupDocs.Conversion.Options.Load;
using var converter = new Converter("drawing.dwg",
ctx => new CadLoadOptions { LayoutScope = CadLayoutScope.Layouts });
converter.Convert("layouts.pdf", new PdfConvertOptions());
Pokyny
- Stávající kód, který se spoléhal na implicitní volbu backendu, bude i nadále fungovat, protože Both zůstává výchozím nastavením.
- Pro vyloučení modelového prostoru nebo jeho zahrnutí použijte
CadLayoutScope.ModelneboCadLayoutScope.Layouts. - Pokud jste dříve filtrovali rozvržení prázdným polem
LayoutNames, nahraďte tento vzor vhodnou hodnotouLayoutScope, aby při výběru bez listů došlo k jasné chybě.
Nové funkce
Pokročilá kontrola CAD rozvržení: Vyberte konkrétní CAD rozvržení, převádějte každé rozvržení na vlastní snímek, list, stránku, obrázek nebo SVG oblast a pomocí CadLayoutScope určete modelový prostor, papírová rozvržení nebo obojí. To poskytuje přesný výstup na úrovni rozvržení a respektuje nastavení specifické pro list, jako je orientace a velikost stránky.
Rozšířená podpora archivů: Formáty XAR a CAB jsou nyní k dispozici jak jako zdroj, tak jako cíl pro kompresní dokumenty, což umožňuje bezproblémovou konverzi tam a zpět.
Moderní interoperabilita diagramů: Soubory Mermaid MMD mohou být použity jako zdroje diagramů a soubory Drawio jsou podporovány jako cíle konverze, což usnadňuje integraci současných nástrojů pro tvorbu diagramů do vašich konverzních pipeline.
Kritická vylepšení stability: Opraveny selhání konverze EML → PDF, nesprávné vykreslování obrysů tvarů DOCX, hlavičky/patičky v prezentacích, poškozené souhrnné odkazy, generování náhledů v Linuxu a zpracování orientace listů DWG. Tyto opravy zvyšují spolehlivost napříč e‑mailem, kancelářskými aplikacemi, prezentacemi i CAD workflow.
Příklad kódu
using var converter = new Converter("multi-layout.dwg");
// Tři listy dovnitř, tři snímky ven – dříve jeden zploštělý snímek.
converter.Convert("drawing.pptx", new PresentationConvertOptions());
Jak získat aktualizaci
NuGet
Install-Package GroupDocs.Conversion -Version 26.8
GroupDocs.Conversion 26.8 na NuGet
Přímé stažení
V poznámkách k vydání nejsou uvedeny žádné přímé odkazy ke stažení.