Es gibt 18 Funktionen, Verbesserungen und Fehlerbehebungen in diesem Release. Dieses Update stärkt die CAD‑Konvertierung mit Layout‑Auswahl auf Ebene, pro‑Layout‑Ausgabe (Folien, Arbeitsblätter, Seiten, SVG usw.) und fügt XAR und CAB als Komprimierungsziele sowie Mermaid MMD und Drawio als Diagramm‑Quellen/Ziele hinzu.
Was ist neu in dieser Version
| Key | Kategorie | Zusammenfassung |
|---|---|---|
| CONVERSIONNET-8437 | Feature | Drawio‑Dateiformat als Konvertierungsziel für Diagrammdokumente hinzufügen |
| CONVERSIONNET-8442 | Feature | Mermaid MMD‑Dateiformat als Konvertierungsquelle für Diagrammdokumente hinzufügen |
| CONVERSIONNET-8445 | Feature | CAB als Konvertierungsziel für Komprimierungsdokumente hinzufügen |
| CONVERSIONNET-8459 | Feature | CadLayoutScope zu CadLoadOptions hinzufügen, um Modellbereich, Papierlayouts oder beides zu konvertieren |
| CONVERSIONNET-8464 | Feature | XAR als Konvertierungsquelle und -ziel für Komprimierungsdokumente hinzufügen |
| CONVERSIONNET-8460 | Improvement | Jedes CAD‑Layout in eine eigene Folie, Arbeitsblatt, Word‑Seite, HTML/MHTML‑Bild und SVG‑Region konvertieren |
| CONVERSIONNET-8461 | Improvement | Fehlende Layouts benennen, wenn eine CAD‑Layout‑Auswahl nichts trifft |
| CONVERSIONNET-8462 | Improvement | Ein nicht gesetztes LoadOptions.Format als nicht vorhanden melden, anstatt eine Ausnahme zu werfen |
| CONVERSIONNET-8361 | Bug | DOCX‑Formen mit Konturen werden beim Konvertieren zu PDF falsch gerendert |
| CONVERSIONNET-8396 | Bug | Konvertieren einer Präsentationsdatei zu PDF führt zu inkonsistenten Kopf‑/Fußzeilen |
| CONVERSIONNET-8399 | Bug | Konvertieren einer Präsentationsdatei mit defekten Zusammenfassungslinks führt zu GroupDocsConversionException |
| CONVERSIONNET-8426 | Bug | DWG‑Datei‑zu‑PDF‑Konvertierung nach Seitenausrichtungseinstellungen |
| CONVERSIONNET-8427 | Bug | NullReferenceException beim Konvertieren von CAD‑Zeichnungen ohne aktives Layout beheben |
| CONVERSIONNET-8428 | Bug | Doppelte Einheitumrechnung beheben, wenn für CAD‑Konvertierungen eine explizite Seitengröße festgelegt ist |
| CONVERSIONNET-8429 | Bug | CAD‑zu‑PDF/UA korrigieren, das CadLoadOptions ignoriert |
| CONVERSIONNET-8430 | Bug | CadDocumentInfo korrigieren, das bei CAD‑Dokumenten mit mehreren Layouts nur eine Seite meldet |
| CONVERSIONNET-8444 | Bug | Problem mit Miniaturansicht in Linux‑Umgebung für GroupDocs.Conversion |
| CONVERSIONNET-8467 | Bug | EML zu PDF: Ausnahme wegen inkompatibler Einheitstypen |
Änderungen der öffentlichen API
⚠️ Rückwärtsinkompatible Änderungen – Die folgenden Updates ändern das bestehende öffentliche Verhalten. Passen Sie Ihren Code entsprechend an, um Laufzeitfehler zu vermeiden.
1. LoadOptions.Format gibt jetzt null zurück, anstatt eine Ausnahme zu werfen, wenn das Format nicht gesetzt ist
Betroffene Klassen: alle 28 typisierten Load‑Options (z. B. SpreadsheetLoadOptions, PdfLoadOptions, CadLoadOptions, …)
Was geändert wurde
Das Auslesen der Eigenschaft Format, bevor ein Format zugewiesen wurde, löste früher eine Ausnahme aus. Jetzt wird null zurückgegeben, sodass ein einfacher Null‑Check ausreicht.
Migrationsbeispiel
var loadOptions = new SpreadsheetLoadOptions();
if (loadOptions.Format == null)
{
// Neuer Code‑Pfad – vorher unerreichbar, weil der Getter eine Ausnahme geworfen hat.
}
Hinweis
Ersetzen Sie jedes try/catch rund um loadOptions.Format durch einen Null‑Check. Vergleichen Sie nicht mit FileType.Unknown; der korrekte Test lautet == null.
2. Exakte Übereinstimmung bei CadLoadOptions.LayoutNames mit detaillierter Fehlermeldung
Betroffene Klasse: CadLoadOptions
Was geändert wurde
LayoutNames werden jetzt exakt (Groß‑/Kleinschreibung beachtend) mit den Layout‑Namen der Zeichnung abgeglichen. Stimmen keine Namen überein, schlägt die Konvertierung mit einer InvalidLoadOptionsException fehl, die die verfügbaren Layouts und die fehlerhafte Anforderung auflistet.
Migrationsbeispiel
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)
{
// Beispielnachricht:
// "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);
}
Hinweis
- Stellen Sie sicher, dass Layout‑Namen korrekt geschrieben und in derselben Schreibweise wie in der Quellzeichnung angegeben sind.
- Wenn nur ein Teil der Layouts benötigt wird, geben Sie exakt die gewünschten Namen an; nicht passende Einträge werden ignoriert, passende Layouts werden dennoch gerendert.
3. CAD‑Zeichnungen mit mehreren Blättern erzeugen jetzt eine Ausgabeeinheit pro Blatt
Betroffene Klassen: Converter, PresentationConvertOptions, PdfConvertOptions
Was geändert wurde
Früher führte das Konvertieren einer Zeichnung mit mehreren Paper‑Space‑Layouts zu einem einzigen flachgelegten Bild/Slide. Jetzt werden separate Ausgabeeinheiten (Folien, Seiten usw.) für jedes Layout erzeugt, wobei die Größe der jeweiligen Layout‑Seiteneinrichtung entspricht. Converter.GetDocumentInfo().PagesCount gibt die Anzahl der erzeugten Einheiten zurück.
Migrationsbeispiel – Konvertierung
using var converter = new Converter("multi-layout.dwg");
// Drei Blätter rein, drei Folien raus – vorher eine flachgelegte Folie.
converter.Convert("drawing.pptx", new PresentationConvertOptions());
Migrationsbeispiel – Abfrage der Seitenzahl
using var converter = new Converter("multi-layout.dwg");
int sheets = converter.GetDocumentInfo().PagesCount; // Gibt 3 für drei Layouts zurück
Hinweis
- Passen Sie nachgelagerte Verarbeitung (z. B. UI‑Paginierung, Dateinamen) an, um mehrere Ausgabedateien/Seiten zu unterstützen.
- Für Zeichnungen mit nur einem Blatt bleibt das Verhalten unverändert.
- Die Ausnahme ist CAD → PDF/UA‑1, das weiterhin eine einzelne getaggte Seite rendert.
4. Neue Eigenschaft CadLoadOptions.LayoutScope zur expliziten Steuerung, welche Bereiche konvertiert werden
Betroffene Klasse: CadLoadOptions
Was geändert wurde
LayoutScope ermöglicht die Angabe, ob Model, Layouts oder Both (Standard) geladen werden sollen.
- Wenn
LayoutNamesgesetzt ist, wirdLayoutScopeignoriert, weil explizite Namen Vorrang haben. - Führt die Auswahl eines Scopes zu keinen Blättern, obwohl die Zeichnung mindestens ein Blatt enthält, wird jetzt eine
InvalidLoadOptionsExceptiongeworfen, anstatt stillschweigend die Standardbereiche zu rendern.
Migrationsbeispiel – nur Paper‑Space‑Layouts konvertieren
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());
Hinweis
- Existierender Code, der sich auf die implizite Backend‑Auswahl verlässt, funktioniert weiterhin, da Both nach wie vor Standard ist.
- Um den Modellbereich auszuschließen oder ausschließlich zu verwenden, setzen Sie
LayoutScopeaufCadLayoutScope.Modelbzw.CadLayoutScope.Layouts. - Wenn Sie zuvor versucht haben, Layouts zu filtern, indem Sie ein leeres
LayoutNames‑Array übergeben haben, ersetzen Sie dieses Muster durch einen geeignetenLayoutScope‑Wert, um bei fehlenden Blättern eine klare Fehlermeldung zu erhalten.
Neue Funktionen
Erweiterte CAD‑Layout‑Steuerung: Wählen Sie gezielt CAD‑Layouts aus, konvertieren Sie jedes Layout in eine eigene Folie, ein Arbeitsblatt, eine Seite, ein Bild oder einen SVG‑Bereich und bestimmen Sie mit CadLayoutScope, ob Modellbereich, Papier‑Layouts oder beides verwendet werden sollen. Das liefert präzise, pro‑Layout‑Ausgaben und berücksichtigt blattspezifische Einstellungen wie Ausrichtung und Seitengröße.
Erweiterte Archiv‑Unterstützung: Die Formate XAR und CAB stehen jetzt sowohl als Quelle als auch als Ziel für Komprimierungsdokumente zur Verfügung, sodass Sie nahtlos zwischen diesen Archivtypen konvertieren können.
Moderne Diagramm‑Interoperabilität: Mermaid MMD‑Dateien können als Diagramm‑Quellen verwendet werden, und Drawio‑Dateien werden als Konvertierungsziele unterstützt, wodurch die Integration zeitgemäßer Diagramm‑Tools in Ihre Konvertierungspipelines erleichtert wird.
Kritische Stabilitätsverbesserungen: Fehlerbehebungen für EML → PDF, DOCX‑Formen‑Konturen, Präsentations‑Kopf‑/Fußzeilen und defekte Zusammenfassungslinks, Linux‑Thumbnail‑Erstellung sowie DWG‑Blatt‑Ausrichtungs‑Handling. Diese Fixes erhöhen die Zuverlässigkeit in E‑Mail-, Office‑, Präsentations‑ und CAD‑Workflows.
Code‑Beispiel
using var converter = new Converter("multi-layout.dwg");
// Drei Blätter rein, drei Folien raus – vorher eine flachgelegte Folie.
converter.Convert("drawing.pptx", new PresentationConvertOptions());
Wie Sie das Update erhalten
NuGet
Install-Package GroupDocs.Conversion -Version 26.8
GroupDocs.Conversion 26.8 auf NuGet
Direkter Download
Keine direkten Download‑Links sind in den Release‑Notes angegeben.