CharLS.Native .NET ist eine Adapterassembly, die Zugriff auf die native CharLS JPEG-LS C++-Implementierung für .NET-basierte Anwendungen bietet.
JPEG-LS (ISO-14495-1) ist ein verlustfreier/nahezu verlustfreier Komprimierungsstandard für Halbtonbilder.
Anmerkung: Mit dem CharLS .NET-Projekt wird eine reine C#-Implementierung bereitgestellt.
CharLS.Native kann Ihrem C#-Projekt über die Dotnet-Befehlszeile oder den NuGet-Paketmanager in Visual Studio hinzugefügt werden.
dotnet add package CharLS.Native
Das NuGet-Paket enthält vorgefertigte CharLS-DLLs für die x86-, x64- und ARM64-Ziele. Auf dem Zielsystem muss Microsoft Visual C++ 2015-2022 Redistributable (v14.42 oder neuer) installiert sein.
Eine vorgefertigte gemeinsam genutzte CharLS-Bibliothek kann mit dem Apt-Paketmanager installiert werden:
sudo apt install libcharls2
Eine vorgefertigte gemeinsam genutzte CharLS-Bibliothek kann mit dem Homebrew-Paketmanager installiert werden:
brew install team-charls/tap/charls
Im GitHub-Repository ist eine Beispielanwendung enthalten, die zeigt, wie gängige Bildtypen wie .bmp, .png und .jpg in .jls (JPEG-LS) konvertiert werden.
git clone --recurse-submodules
dotnet build && dotnet test && dotnet publish
um das Nuget-Paket zu erstellen. Das Erstellen des NuGet-Pakets mit signierten Windows-DLLs kann nur auf der Windows-Plattform mit Visual Studio 2022 oder mit Build-Tools für Visual Studio 2022 erfolgen. Zur Unterstützung der Codesignierung mit einem Codesignaturzertifikat, das auf einer Smartcard gespeichert ist, ist eine Windows-Befehlsdatei vorhanden verfügbar: create-signed-nuget-package.cmd
. Anweisungen:
create-signed-nuget-package.cmd certificate-thumb-print time-stamp-url
Alle DLLs und das NuGet-Paket selbst werden signiert.
Weitere Informationen zu JPEG-LS finden Sie in der README-Datei des C++ CharLS-Projekts. Dieses Repository enthält auch Anweisungen zum Erstellen der nativen gemeinsam genutzten C++-CharLS-Bibliothek aus dem Quellcode.