svg in png

Converti SVG in PNG in Java

Le immagini SVG sono importanti perché sono scalabili e mantengono la stessa qualità, indipendentemente dalle dimensioni o dalla risoluzione dello schermo. Possono essere progettati a qualsiasi risoluzione e possono aumentare o diminuire le dimensioni senza danneggiare la qualità (o essere pixelati). Tuttavia, poiché le immagini SVG sono basate su punti e percorsi, quindi invece che su pixel, non possono visualizzare tanti dettagli come un’immagine raster. Quindi, se convertiamo l’immagine SVG in PNG, questi problemi possono essere risolti.

API di conversione da SVG a PNG

In questo articolo, utilizzeremo Aspose.Imaging Cloud SDK for Java che è un’API basata su REST che offre le funzionalità per modificare, manipolare e trasformare in modo programmatico raster, metafile, photoshop in una varietà di Formati supportati. Supporta anche la funzione per convertire SVG in PNG online. Ora, per iniziare con l’utilizzo dell’SDK, dobbiamo aggiungere il suo riferimento nel nostro progetto Java includendo le seguenti informazioni in pom.xml (maven build type project).

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

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

Ora, per utilizzare l’API, abbiamo bisogno delle nostre credenziali client personalizzate. Possono essere facilmente ottenuti se sei già registrato su Aspose Cloud Dashboard. Altrimenti, registra un account gratuito tramite un indirizzo email valido e ottieni le tue credenziali cliente.

Converti SVG in PNG in Java

La nostra API di elaborazione delle immagini è in grado di convertire PNG in SVG e SVG in PNG con linee di codice minime. Quindi in questa sezione discuteremo tutti i dettagli per convertire SVG in PNG usando Java.

  • Prima di tutto, creiamo un oggetto della classe ImagingApi dove passiamo le credenziali del client come argomento
  • In secondo luogo, leggi il contenuto dell’immagine SVG utilizzando il metodo readAllBytes(…) e restituiscilo all’array byte[]
  • Quindi crea un’istanza di UploadFileRequest passando il nome SVG e caricala nell’archivio cloud utilizzando il metodo uploadFile(…)
  • Ora creiamo un oggetto di ConvertImageRequest, dove passiamo il nome SNG di input e il formato risultante come “PNG”
  • Chiama il metodo convertImage(…) per avviare la conversione da SVG a PNG. L’output viene quindi restituito come flusso di risposta
  • Infine, salva il PNG risultante sull’unità locale utilizzando l’oggetto FileOutputStream
// Ottieni ClientID e ClientSecret da https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";

// creare un oggetto Imaging
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);

// caricare l'immagine SVG dal sistema locale
File file1 = new File("File_Extension Icons.svg");
byte[] imageStream = Files.readAllBytes(file1.toPath());
			
// creare un oggetto di richiesta di caricamento file
UploadFileRequest uploadRequest = new UploadFileRequest("input.svg",imageStream,null);
// caricare l'immagine SVG nell'archivio cloud
imageApi.uploadFile(uploadRequest);

// specificare il formato di output dell'immagine
String format = "PNG";

// Crea oggetto richiesta di conversione immagine
ConvertImageRequest convertImage = new ConvertImageRequest("input.svg", format, null, null);
// convertire SVG in PNG e restituire l'immagine nel flusso di risposta
byte[] resultantImage = imageApi.convertImage(convertImage);

// Salva l'immagine PNG nella memoria locale
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Converted.png");
fos.write(resultantImage);
fos.close();

L’immagine SVG di input utilizzata nell’esempio precedente può essere scaricata da FileExtension Icons.svg.

svg in png

Immagine: - converti svg in png Anteprima online

Salva SVG come PNG usando i comandi cURL

Poiché Aspose.Imaging Cloud è sviluppato secondo l’architettura REST, è possibile accedervi facilmente tramite i comandi cURL. Quindi in questa sezione salveremo SVG come PNG usando i comandi cURL. Ora, il primo passaggio consiste nel generare un token di accesso JWT (basato sulle credenziali del client) utilizzando il seguente comando.

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"

Una volta generato il token JWT, esegui il seguente comando per salvare SVG come immagine PNG.

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

Conclusione

Alla fine di questo articolo, abbiamo appreso i dettagli su come convertire SVG in PNG utilizzando Java. Allo stesso tempo, abbiamo anche esplorato un’opzione per convertire SVG in PNG utilizzando i comandi cURL. Inoltre, se desideri ottenere il codice sorgente dell’SDK e modificarlo in base alle tue esigenze, può essere scaricato da GitHub (i nostri Cloud SDK sono sviluppati con licenza MIT). Tieni presente che un’altra opzione per testare le straordinarie funzionalità dell’API è tramite SwaggerUI all’interno del browser web.

Tuttavia, la documentazione del prodotto è un meraviglioso archivio di articoli che spiegano altre interessanti funzionalità dell’API. Infine, in caso di problemi durante l’utilizzo dell’API, puoi prendere in considerazione l’idea di contattarci tramite il forum di supporto del prodotto gratuito.

articoli Correlati

Consigliamo vivamente di visitare i seguenti link per saperne di più su: