svg zu png

Konvertieren Sie SVG in PNG in Java

Eines der herausragenden Merkmale von SVG-Bildern ist, dass sie skalierbar sind. Die SVGs behalten die gleiche Qualität, unabhängig von der Bildschirmauflösung oder -größe. Sie können es also in jeder Auflösung entwerfen, und es wird vergrößert oder verkleinert, ohne die Qualität zu beeinträchtigen oder verpixelt zu werden. Beim Vergleich mit Rasterbildern müssen Sie von Anfang an wissen, welche Größe Sie möchten, sonst riskieren Sie, dass das Bild zu groß oder zu klein wird. Da SVGs jedoch auf Punkten und Pfaden statt auf Pixeln basieren, können sie nicht so viele Details anzeigen wie Standardbildformate. Wenn wir also SVG in das PNG-Format konvertieren, können diese Probleme gelöst werden.

SVG-zu-PNG-Konvertierungs-API

In diesem Artikel verwenden wir Aspose.Imaging Cloud SDK for Java, eine REST-basierte API, die die Möglichkeit bietet, Raster, Metadateien und Photoshop programmgesteuert zu bearbeiten, zu manipulieren und in eine Vielzahl von [unterstützten Formaten] umzuwandeln]6 . Es unterstützt auch die Funktion zum Online-Konvertieren von SVG in PNG. Um nun mit der SDK-Nutzung zu beginnen, müssen wir seine Referenz in unserem Java-Projekt hinzufügen, indem wir die folgenden Informationen in pom.xml (Maven-Build-Typ-Projekt) einfügen.

<repositories> 
    <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>http://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>

<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-imaging-cloud</artifactId>
        <version>22.4</version>
    </dependency>
</dependencies>

Wenn wir uns bereits bei Aspose Cloud Dashboard registriert haben, beziehen Sie bitte Ihre Client-Anmeldeinformationen von Cloud Dashboard. Andernfalls müssen Sie zuerst ein kostenloses Konto registrieren und dabei eine gültige E-Mail-Adresse verwenden.

Konvertieren Sie SVG in PNG in Java

Die Bildverarbeitungs-API kann PNG in SVG sowie SVG in PNG mithilfe von Java-Code-Snippets konvertieren.

  • Erstellen Sie zunächst ein ImagingApi-Objekt mit personalisierten Client-Anmeldeinformationen
  • Lesen Sie zweitens den Inhalt des SVG-Bildes mit der readAllBytes(…)-Methode und übergeben Sie ihn an das byte[]-Array
  • Erstellen Sie dann eine Instanz von UploadFileRequest, während Sie den SVG-Namen übergeben, und laden Sie sie mit der Methode uploadFile(…) in den Cloud-Speicher hoch
  • Erstellen Sie nun ein Objekt von ConvertImageRequest, in dem wir das Eingabe-SNG und das resultierende Bildformat als PNG angeben
  • Rufen Sie die Methode convertImage(…) auf, um SVG in das PNG-Format zu konvertieren, und das Ergebnis wird als Antwortstream zurückgegeben
  • Speichern Sie schließlich das resultierende PNG mit dem FileOutputStream-Objekt auf dem lokalen Laufwerk
// Holen Sie sich ClientID und ClientSecret von https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";

// Imaging-Objekt erstellen
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);

// SVG-Bild vom lokalen System laden
File file1 = new File("File_Extension Icons.svg");
byte[] imageStream = Files.readAllBytes(file1.toPath());
			
// Datei-Upload-Anforderungsobjekt erstellen
UploadFileRequest uploadRequest = new UploadFileRequest("input.svg",imageStream,null);
// Laden Sie das SVG-Bild in den Cloud-Speicher hoch
imageApi.uploadFile(uploadRequest);

// Geben Sie das Ausgabeformat des Bildes an
String format = "PNG";

// Anforderungsobjekt für Bildkonvertierung erstellen
ConvertImageRequest convertImage = new ConvertImageRequest("input.svg", format, null, null);
// Konvertieren Sie SVG in PNG und geben Sie das Bild im Antwortstrom zurück
byte[] resultantImage = imageApi.convertImage(convertImage);

// Speichern Sie das PNG-Bild im lokalen Speicher
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Converted.png");
fos.write(resultantImage);
fos.close();

Das im obigen Beispiel verwendete SVG-Eingabebild kann von FileExtension Icons.svg heruntergeladen werden.

svg zu png

Bild: - Online-Vorschau von SVG in PNG konvertieren

Speichern Sie SVG als PNG mit cURL-Befehlen

Die Aspose.Imaging Cloud wurde gemäß der REST-Architektur entwickelt, sodass wir Bilder mit cURL-Befehlen als PNG speichern können. Der erste Schritt besteht nun darin, mit dem folgenden Befehl ein JWT-Zugriffstoken (basierend auf Client-Anmeldeinformationen) zu generieren.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Führen Sie nach der Generierung des JWT-Tokens den folgenden Befehl aus, um SVG in das PNG-Format zu konvertieren.

curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/input.svg/convert?format=PNG" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-o Resultant.png

Fazit

Wir haben die Details erfahren, wie wir SVG mit Java-Code-Snippet in PNG konvertieren können. Gleichzeitig haben wir eine Möglichkeit untersucht, SVG mit cURL-Befehlen in PNG umzuwandeln. Wenn Sie den Quellcode des SDK ändern möchten, können Sie ihn außerdem von GitHub herunterladen (alle unsere Cloud-SDKs werden unter MIT-Lizenz entwickelt). Außerdem besteht eine der Möglichkeiten, die vielversprechenden Funktionen der API zu testen, über SwaggerUI im Webbrowser.

Nichtsdestotrotz ist die Produktdokumentation eine erstaunliche Informationsquelle, um mehr über andere aufregende Funktionen der API zu erfahren. Falls Sie bei der Verwendung der API auf Probleme stoßen, können Sie sich für eine schnelle Lösung kostenlos an uns wenden Produkt-Support-Forum.

In Verbindung stehende Artikel

Bitte besuchen Sie die folgenden Links, um mehr darüber zu erfahren: