Wir freuen uns, die Veröffentlichung der neuen Hauptversion 12.0 des VintaSoft Imaging .NET SDK bekannt zu geben. und zugehörige Funktionen wie Annotation, PDF, JBIG2, JPEG2000, Document Cleanup, OCR, DICOM, Forms Processing und Office-Plug-ins.
Die wichtigste Neuerung dieser Version ist die plattformübergreifende Unterstützung für Windows, Linux und macOS in .NET 6, .NET 5 und .NET Core 3.1.
Das VintaSoft Imaging .NET SDK ist ein .NET SDK zur Bild- und Dokumentenverarbeitung. Es umfasst eine Vielzahl von Algorithmen, die größtenteils in C# geschrieben und plattformunabhängig sind. Eine Ausnahme bilden die Algorithmen für die Arbeit mit zweidimensionalen Grafiken - frühere SDK-Versionen nutzten hierfür die Microsoft-Bibliothek System.Drawing.Common.
Die Bibliothek System.Drawing.Common bietet eine gute Performance und ist nur unter Windows lauffähig.
Mit .NET Core versuchte Microsoft, eine plattformübergreifende Version der System.Drawing.Common-Bibliothek zu entwickeln. Wir gingen davon aus, diese Version zu einem späteren Zeitpunkt nutzen zu können und somit die plattformübergreifende Unterstützung im VintaSoft Imaging .NET SDK zu realisieren.
Anfang 2022 gab Microsoft leider bekannt, die Entwicklung einer plattformübergreifenden Version der System.Drawing.Common-Bibliothek einzustellen. Die Bibliothek ist nun ausschließlich für Windows verfügbar, und Entwicklern wird empfohlen, für die Arbeit mit zweidimensionalen Grafiken auf Drittanbieterbibliotheken zurückzugreifen. Weitere Details finden Sie im Artikel "System.Drawing.Common wird nur unter Windows unterstützt"
"System.Drawing.Common wird nur unter Windows unterstützt".
Wir begannen umgehend mit eigenen Tests von 2D-Grafikbibliotheken von Drittanbietern, nachdem wir festgestellt hatten, dass wir die System.Drawing.Common-Bibliothek nicht für die Entwicklung einer plattformübergreifenden SDK-Version verwenden konnten. Unsere Tests zeigten schnell, dass Googles SkiaSharp-Bibliothek eine schnelle und professionelle Lösung für die Arbeit mit zweidimensionalen Grafiken darstellt.
Wir haben alle Algorithmen für die Arbeit mit 2D-Grafiken vollständig überarbeitet, und schließlich begann das SDK, 2D-Grafiken mithilfe der Zeichen-Engine (Klasse Vintasoft.Imaging.Drawing.DrawingEngine) zu zeichnen und verwendete nicht mehr direkt die Bibliothek System.Drawing.Common.
In Version 12.0 haben wir zwei Zeichen-Engines für Windows, Linux und macOS entwickelt.
Die erste ist eine plattformübergreifende Zeichen-Engine, die auf der SkiaSharp-Bibliothek für Windows, Linux und macOS basiert. Diese Zeichen-Engine befindet sich in der Assembly Vintasoft.Imaging.Drawing.Skia.dll.
Die zweite ist eine Zeichen-Engine, die auf System.Drawing.Common basiert und nur für Windows verfügbar ist. Die Zeichen-Engine befindet sich in der Assembly Vintasoft.Imaging.Gdi.dll.
Das SDK benötigt keine Zeichen-Engine, wenn es nicht mit 2D-Grafiken arbeitet und/oder keinen Text zeichnet. Beispielsweise benötigt das SDK keine Zeichen-Engine, um ein Rasterbild (TIFF, PNG, JPEG, DICOM usw.) aus einer Datei zu laden oder Metadaten eines Bildes abzurufen.
Das SDK benötigt eine Zeichen-Engine, wenn es mit 2D-Grafiken arbeitet und/oder Text darstellt. Beispielsweise benötigt das SDK eine Zeichen-Engine zum Rendern von PDF-, DOCX- und XLSX-Seiten sowie zum Drehen oder Skalieren von Bildern.
Im Allgemeinen muss eine Zeichen-Engine ausgewählt und mit dem SDK verbunden werden. Dies ist sehr einfach. Wenn Sie eine reine Windows-Anwendung erstellen, fügen Sie Ihrer Anwendung einen Verweis auf die Assembly Vintasoft.Imaging.Gdi.dll hinzu. Wenn Sie eine Anwendung für Windows, Linux und macOS erstellen, fügen Sie Ihrer Anwendung einen Verweis auf die Assembly Vintasoft.Imaging.Drawing.Skia.dll und das NuGet-Paket SkiaSharp 2.88.0 hinzu.
Unsere Funktions-, Regressions- und technischen Tests haben gezeigt, dass das SDK unter .NET 6 auf Windows 10, Ubuntu Desktop 20.04.3 und macOS 12 "Monterey" identisch funktioniert.
Die zweite wichtige Neuerung dieser Version ist die Möglichkeit, PDF-, DOCX- und XLSX-Dokumente im Web-Bildbetrachter als Vektorgrafiken darzustellen.
Früher renderte der Web-Bildbetrachter für jede Zoomstufe separate Kacheln der Seite. Jetzt rendert er die Dokumentseite als SVG-Inhalt und skaliert diesen Vektorinhalt bei Bedarf, um das Dokument in einer neuen Zoomstufe anzuzeigen. Durch die Verwendung von Vektor-Rendering wurde die Anzeigegeschwindigkeit im Webbrowser deutlich erhöht und die Belastung des Webservers erheblich reduziert (der Webserver rendert die Seite jetzt nur noch einmal, zuvor mussten die Kacheln mehrfach gerendert werden).
Die Vektordarstellung im Web-Bildbetrachter kann mit der Funktion Vintasoft.Imaging.UI.WebImageViewerJS.set_UseVectorRendering aktiviert/deaktiviert werden.
Hier ist ein Screenshot der Demo-Anwendung "VintaSoft Web Document Viewer Demo", der die Einstellungen des Web-Bildbetrachters mit aktivierter Vektordarstellung zeigt:
Sie können die Vektordarstellung im Web-Bildbetrachter schnell mit der VintaSoft ASP.NET Core Document Viewer Demo testen:
https://demos.vintasoft.com/AspNetCoreDocumentViewerDemo/
Weitere Informationen zur Version 12.0 des VintaSoft Imaging .NET SDK finden Sie hier:
https://www.vintasoft.com/de/vsimaging-dotnet-history.html