Die Scalable Vector Graphics (SVG) definiert vektorbasierte Grafiken für das Web. SVG ist ein XML-basiertes Vektorbildformat für zweidimensionale Grafiken mit Unterstützung für Interaktivität und Animation. Dieses Format ist beliebt für die Darstellung zweidimensionaler Bilder im Internet, wo Bilder auf jede beliebige Größe skaliert werden können. Wenn wir jedoch SVG in PNG konvertieren müssen, um eine verlustfreie Komprimierung zu erreichen, bei der Details und Qualität nicht verloren gehen, ist Aspose.Imaging Cloud eine praktikable Lösung.
In diesem Artikel erfahren Sie, wie Sie SVG online in PNG konvertieren.
Bildkonvertierungs-API
Aspose.Imaging Cloud ist unsere Programmierlösung für Bildverarbeitungsanforderungen. Sie können Vorgänge wie Größenänderung, Zuschneiden, Drehen, Skalieren, Spiegeln, Suchen und Exportieren von Bildern in verschiedene unterstützte Formate durchführen. Um unseren Benutzern die Arbeit noch weiter zu erleichtern, haben wir programmiersprachenspezifische SDKs erstellt und im Rahmen dieses Artikels werden wir Aspose.Imaging Cloud SDK für .NET verwenden. Besuchen Sie jetzt den folgenden Link, um mehr über So installieren Sie Aspose.Cloud SDKs zu erfahren.
Konvertieren Sie SVG in PNG in C#
Befolgen Sie die nachstehenden Anweisungen, um ein bereits im Cloud-Speicher verfügbares SVG bild in das PNG-Format zu konvertieren.
- Der erste Schritt besteht darin, eine Instanz von ImagingApi zu erstellen und dabei die ClientID und ClientSecret-Details als Argumente zu übergeben.
- Zweitens laden Sie das SVG bild mit der UploadFile(..)-Methode von ImagingApi in den Cloud-Speicher hoch.
- Drittens: Erstellen Sie eine Instanz der Klasse ConvertImageRequest, und übergeben Sie dabei den Namen des Eingabe-SVG und das resultierende Format als Argumente.
- Rufen Sie nun die Methode ConvertImage(..) auf, um den Konvertierungsvorgang durchzuführen. Das resultierende PNG wird als Stream-Instanz zurückgegeben.
- Rufen Sie abschließend die benutzerdefinierte Methode mit File.Create auf, um die Stream-Instanz als Datei auf einem lokalen Laufwerk zu speichern.
// Vollständige Beispiele finden Sie unter https://github.com/aspose-imaging-cloud/aspose-imaging-cloud-dotnet
// Holen Sie sich die Client-Anmeldeinformationen von https://dashboard.aspose.cloud/
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";
// Erstellen Sie ein Objekt von DiagramApi
ImagingApi imagingApi = new ImagingApi(clientSecret,clientID, "https://api.aspose.cloud/");
// Name der SVG-Eingabedatei
String inputFileName = "trashloader2.svg";
// resultierendes Dateiformat
String newFormat = "png";
// Name der Ausgabedatei
String newFileName = "Converted.png";
try
{
// Laden Sie die Datei vom lokalen Laufwerk
using (var inputStream = System.IO.File.OpenRead(@"C:\Users\shahbnay\Downloads\" + inputFileName))
{
// Datei-Upload-Anforderung erstellen
UploadFileRequest request = new UploadFileRequest(inputFileName, inputStream);
// Datei in den Standard-Cloud-Speicher hochladen
imagingApi.UploadFile(request);
// Erstellen Sie eine Instanz für die Bildkonvertierung
var response = new ConvertImageRequest(inputFileName,newFormat);
// Starten Sie den Bildkonvertierungsvorgang
var responseStream = imagingApi.ConvertImage(response);
// Speichern Sie die Stream-Instanz als Datei auf dem lokalen Speicher
saveToDisk(responseStream, @"C:\Users\shahbnay\Downloads\" + newFileName);
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
static void saveToDisk(Stream responseStream, String resultantFile)
{
var fileStream = File.Create(resultantFile);
responseStream.Seek(0, SeekOrigin.Begin);
responseStream.CopyTo(fileStream);
fileStream.Close();
}
Zu Ihrer Information können die im obigen Beispiel verwendeten Beispielbilder von trashloader2.svg und Converted.png heruntergeladen werden.
SVG zu PNG mit cURL-Befehlen
In diesem Abschnitt führen wir die Konvertierung von SVG in PNG mithilfe von cURL-Befehlen durch. Der erste Schritt besteht darin, ein JWT-Zugriffstoken basierend auf den Clientanmeldeinformationen zu generieren. Führen Sie bitte den folgenden Befehl aus, um eines 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"
Führen Sie nun den folgenden cURL-Befehl aus, um SVG in PNG zu konvertieren. Das Ergebnis wird als Antwortstream zurückgegeben und kann auf einem lokalen Laufwerk gespeichert werden.
curl -X GET "https://api.aspose.cloud/v3.0/imaging/trashloader2.svg/convert?format=png" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-o Converted.png
Falls Sie ein SVG bild konvertieren müssen, das als nullindizierter Multipart-/Formulardateninhalt oder als Rohtextstream übergeben wird.
curl -X POST "https://api.aspose.cloud/v3.0/imaging/convert?format=png" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-H "Content-Type: multipart/form-data" \
-d {"imageData":{}} \
-o Converted.png
Abschluss
Wir haben die Bildkonvertierungsfunktionen der Aspose.Imaging Cloud API besprochen. Der besondere Schwerpunkt lag auf der Konvertierung von SVG in PNG mithilfe eines C# .NET-Codeausschnitts. Gleichzeitig haben wir die Details zum Speichern von SVG in PNG mithilfe von cURL-Befehlen besprochen. Bitte beachten Sie, dass auf die API auch über die Swagger-Schnittstelle zugegriffen werden kann und Sie die API im Webbrowser testen können. Die Cloud SDKs werden jedoch unter einer MIT-Lizenz entwickelt, sodass ein vollständiger Quellcode von GitHub heruntergeladen werden kann.
Falls bei der Verwendung der API Probleme auftreten oder Sie Fragen dazu haben, können Sie uns gerne über das kostenlose Produkt-Support-Forum kontaktieren.
Links zum Thema
Wir empfehlen Ihnen, die folgenden Links zu besuchen, um mehr zu erfahren über: