Joint Photographic Experts Group (JPG/JPEG) und Portable Network Graphics (PNG) sind zwei beliebte Rasterbildformate, die im Internet verwendet werden. Im Gegensatz zu JPEG, das auf DCT-Komprimierung basiert, verwendet PNG die LZW-Komprimierung, die auch von den Formaten GIF und TIFF verwendet wird. Der größte Vorteil von PNG gegenüber JPEG besteht darin, dass die Komprimierung verlustfrei ist, d. h. es gibt keinen Qualitätsverlust bei jedem Öffnen und erneuten Speichern. PNG verarbeitet auch detaillierte, kontrastreiche Bilder gut. In diesem Artikel besprechen wir die Schritte zum Konvertieren von JPG bildern in das PNG-Format mithilfe der .NET REST API.
Bildverarbeitungs-API
Aspose.Imaging Cloud ist eines unserer führenden Produkte für die Bildformatverarbeitung. Es ermöglicht Ihnen, vorhandene Bildformate zuzuschneiden, zu spiegeln, zu skalieren, zu drehen, zu suchen, zu konvertieren und in Unterstützte Dateiformate zu exportieren. Die REST-Architektur ermöglicht es den Entwicklern, verschiedene Bildgebungsfunktionen in ihre Cloud-basierten Lösungen zu implementieren. Um unseren Kunden noch mehr zu helfen, haben wir Aspose.Imaging Cloud SDK für .NET auf der Aspose.Imaging REST API entwickelt, damit Sie alle erweiterten Bildbearbeitungsfunktionen in Ihren C# .NET-Anwendungen nutzen können.
Installation
Um das SDK nutzen zu können, müssen wir es zunächst über das System installieren. Es steht zum Download über NuGet und GitHub bereit. Um das SDK über NuGet zu installieren, führen Sie bitte den folgenden Befehl im Terminal aus:
nuget install Aspose.Imaging-Cloud
Oder führen Sie den folgenden Befehl im NuGet-Paket-Manager aus:
PM> Install-Package Aspose.Imaging-Cloud
Visual Studio-Ansatz
Ein anderer Ansatz ist die Installation direkt innerhalb von Visual Studio:
- Öffnen Sie den Projektmappen-Explorer.
- Erweitern Sie das Projekt und klicken Sie mit der rechten Maustaste auf den Ordner „Pakete“ in Ihrer Lösung.
- Wählen Sie die Option „NuGet-Pakete verwalten…“
- Klicken Sie auf die Registerkarte Durchsuchen und suchen Sie nach „Aspose.Imaging-Cloud“.
- Aktivieren Sie das Kontrollkästchen neben dem Aspose.Imaging-Cloud-Paket, wählen Sie auf der rechten Registerkarte die entsprechende Version aus und klicken Sie auf die Schaltfläche „Paket hinzufügen“.
Aspose.Cloud-Abonnement
Alle unsere APIs sind nur für autorisierte Personen zugänglich, sodass Datenintegrität und Datenschutz gewahrt bleiben. Darüber hinaus sind die im Cloud-Speicher gespeicherten Dateien mit dem über das Aspose.Cloud-Dashboard abonnierten Konto verknüpft. Der erste Schritt besteht daher darin, ein kostenloses Abonnementkonto zu erstellen, indem Sie das Aspose.Cloud-Dashboard besuchen. Wenn Sie ein GitHub oder Google-Konto haben, melden Sie sich einfach an. Andernfalls klicken Sie auf die Schaltfläche Neues Konto erstellen und geben Sie die erforderlichen Informationen ein. Melden Sie sich nun mit Ihren Anmeldeinformationen beim Dashboard an, erweitern Sie den Abschnitt „Anwendungen“ im Dashboard und scrollen Sie nach unten zum Abschnitt „Client-Anmeldeinformationen“, um die Details zu Client-ID und Client-Geheimnis anzuzeigen.
JPG zu PNG in C#
Bitte folgen Sie den unten angegebenen Schritten, um die Formatkonvertierung JPG in PNG innerhalb einer C# .NET-Anwendung durchzuführen.
- Erstellen Sie ein ImagingApi Objekt und übergeben Sie dabei die Client-ID und die Client-Geheimnisse als Argumente.
- Zweitens lesen Sie das JPEG bild vom lokalen Laufwerk und übergeben es als Argument an das UploadFileRequest Objekt
- Drittens rufen Sie die UploadFile(…)-Methode von ImagingApi auf, um die Datei in den Cloud-Speicher hochzuladen
- Erstellen Sie nun eine Instanz der Klasse ConvertImageRequest, die den Bildnamen und das resultierende Ausgabeformat als Argumente verwendet
- Rufen Sie dann die Methode ConvertImage(…) der Klasse ImagingApi auf, um den Konvertierungsvorgang zu starten
- Speichern Sie abschließend die Ausgabe des Streams mit File.Create auf dem lokalen Laufwerk (die benutzerdefinierte Methode wird unten beschrieben).
// Holen Sie sich die Client-ID von https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";
// Erstellen Sie eine Instanz von ImagingApi
ImagingApi imagingApi= new ImagingApi( clientSecret,clientID,"https://api.aspose.cloud/");
// Pfad des JPEG-Eingabebildes
string imageFile = "jpg-to-png.jpeg";
// Ausgabedateiformat
string format = "png";
// resultierender Dateiname
string resultantFile = "converted.png";
// Laden Sie die Datei vom lokalen Laufwerk
using (var file = System.IO.File.OpenRead("/Users/nshahbaz/Desktop/" + imageFile))
{
var uploadFileRequest = new UploadFileRequest(imageFile, file);
// Originaldokument in den Cloud-Speicher hochladen
imagingApi.UploadFile(uploadFileRequest);
}
try
{
// ImageRequest erstellen
var request = new ConvertImageRequest(imageFile, format, null, null);
// den Konvertierungsvorgang einleiten
Stream updatedImage = imagingApi.ConvertImage(request);
// Drucke eine Erfolgsmeldung, wenn die Konvertierung erfolgreich war
if (request != null && request.Equals("OK"))
{
Console.WriteLine("JPG successfully converted to PNG !");
Console.ReadKey();
}
// Rufen Sie die Methode auf, um die Ausgabe auf dem Systemlaufwerk zu speichern
saveToDisk(updatedImage, "/Users/nshahbaz/Desktop/"+resultantFile);
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
// Benutzerdefinierte Methode zum Speichern von Steam Objekten als Dateiinstanz
public static void saveToDisk(Stream responseStream, String resultantFile)
{
var fileStream = File.Create(resultantFile);
responseStream.Seek(0, SeekOrigin.Begin);
responseStream.CopyTo(fileStream);
fileStream.Close();
}
cURL-Befehl zur Konvertierung von JPEG in PNG
Die REST-Architektur der Cloud-APIs ermöglicht uns den Zugriff darauf auch über Befehlszeilenterminals. Aus Sicherheitsgründen müssen Sie jedoch zunächst ein JSON Web Token (JWT) basierend auf den vom Aspose.Cloud-Dashboard abgerufenen ClientID und ClientSecret-Details generieren. Führen Sie bitte den folgenden Befehl im Terminal aus, um das JWT-Token zu generieren.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4ccf1790-accc-41e9-8d18-a78dbb2ed1aa&client_secret=caac6e3d4a4724b2feb53f4e460eade3" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Sobald wir das JWT-Token haben, besteht der nächste Schritt darin, die API ConvertImage aufzurufen, um die Konvertierung von JPG in PNG durchzuführen.
curl -X GET "https://api.aspose.cloud/v3.0/imaging/jpg-to-png.jpeg/convert?format=png" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-o converted.png
Anforderungs-URL
https://api.aspose.cloud/v3.0/imaging/jpg-to-png.jpeg/convert?format=png
Abschluss
Wir haben Aspose.Imaging Cloud API zur Konvertierung von JPEG bildern in das PNG-Format erkundet. Wir haben die Prozesse der Dateikonvertierung mit C# .NET-Code sowie die Konvertierung mit den cURL-Befehlen kennengelernt. Beachten Sie auch, dass das Cloud SDK unter einer MIT-Lizenz vertrieben wird und sein vollständiger Quellcode über GitHub zum Download bereitsteht. Falls Sie bei der Verwendung der API auf ein Problem stoßen oder Fragen haben, können Sie sich gerne über das Kostenlose Produktsupportforum an uns wenden.
Verwandte Artikel
Wir empfehlen Ihnen auch, die folgenden Links zu besuchen, um mehr zu erfahren über