SVG kuvat ovat näkyviä, koska ne ovat skaalautuvia ja niiden laatu on sama, koosta tai näytön resoluutiosta riippumatta. Ne voidaan suunnitella millä tahansa resoluutiolla, ja niiden kokoa voidaan suurentaa/pienentää vahingoittamatta laatua (tai pikseloimatta). Mutta koska SVG-kuvat perustuvat pisteisiin ja polkuihin, pikseleiden sijaan ne eivät voi näyttää yhtä paljon yksityiskohtia kuin rasterikuva. Joten jos muunnamme SVG-kuvan PNG-kuvaksi, nämä ongelmat voidaan ratkaista.
- SVG-PNG-muunnossovellusliittymä
- Muunna SVG PNG: ksi Javassa
- Tallenna SVG PNG-muodossa käyttämällä cURL-komentoja
SVG-PNG-muunnossovellusliittymä
Tässä artikkelissa aiomme käyttää Aspose.Imaging Cloud SDK for Java -sovellusta, joka on REST-pohjainen API, joka tarjoaa ominaisuudet ohjelmallisesti muokata, käsitellä ja muuntaa rasteria, metatiedostoja, Photoshopia useisiin tuettuun muotoon. Se tukee myös ominaisuutta SVG:n muuntamiseen PNG-muotoon verkossa. Nyt, jotta voimme aloittaa SDK:n käytön, meidän on lisättävä sen viite Java-projektiimme sisällyttämällä seuraavat tiedot pom.xml-tiedostoon (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>
Tarvitsemme nyt henkilökohtaiset asiakastunnistetietomme voidaksemme käyttää API:ta. Saat ne helposti, jos olet jo rekisteröitynyt Aspose Cloud Dashboardiin. Muussa tapauksessa rekisteröi ilmainen tili kelvollisen sähköpostiosoitteen kautta ja hanki asiakastunnuksesi.
Muunna SVG PNG: ksi Javassa
Kuvankäsittelysovellusliittymämme pystyy muuttamaan PNG:n SVG:ksi ja SVG:n PNG:ksi minimaalisilla koodiriveillä. Joten tässä osiossa aiomme keskustella kaikista yksityiskohdista SVG:n muuntamiseksi PNG:ksi Javalla.
- Luo ensin ImagingApi-luokan objekti, jossa välitämme asiakkaan tunnistetiedot argumenttina
- Toiseksi lue SVG-kuvan sisältö readAllBytes(…) -menetelmällä ja palauta se byte[]-taulukkoon
- Luo sitten UploadFileRequest-esiintymä välittämällä SVG-nimi ja lähetä se pilvitallennustilaan UploadFile(…) -menetelmällä
- Luo nyt ConvertImageRequest-objekti, jossa välitämme syötetyn SNG-nimen ja tuloksena olevan muodon muodossa “PNG”.
- Kutsu convertImage(…)-menetelmä aloittaaksesi SVG:stä PNG-muunnos. Lähtö palautetaan sitten vastausvirtana
- Tallenna lopuksi tuloksena oleva PNG paikalliselle asemalle FileOutputStream-objektin avulla
// Hanki ClientID ja ClientSecret osoitteesta https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";
// luoda kuvantamisobjektia
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// lataa SVG-kuva paikallisesta järjestelmästä
File file1 = new File("File_Extension Icons.svg");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// luo tiedostojen latauspyyntöobjekti
UploadFileRequest uploadRequest = new UploadFileRequest("input.svg",imageStream,null);
// lataa SVG-kuva pilvitallennustilaan
imageApi.uploadFile(uploadRequest);
// määritä kuvan tulostusmuoto
String format = "PNG";
// Luo kuvan muunnospyyntöobjekti
ConvertImageRequest convertImage = new ConvertImageRequest("input.svg", format, null, null);
// muuntaa SVG:n PNG-muotoon ja palauttaa kuvan vastausvirrassa
byte[] resultantImage = imageApi.convertImage(convertImage);
// Tallenna PNG-kuva paikalliseen tallennustilaan
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Converted.png");
fos.write(resultantImage);
fos.close();
Yllä olevassa esimerkissä käytetty SVG-tulokuva voidaan ladata osoitteesta FileExtension Icons.svg.
Tallenna SVG PNG-muodossa käyttämällä cURL-komentoja
Kuten Aspose.Imaging Cloud on kehitetty REST-arkkitehtuurin mukaan, joten siihen pääsee helposti cURL-komennoilla. Joten tässä osiossa aiomme tallentaa SVG:n PNG-muodossa käyttämällä cURL-komentoja. Nyt ensimmäinen vaihe on luoda JWT-käyttöoikeustunnus (perustuu asiakkaan tunnistetietoihin) käyttämällä seuraavaa komentoa.
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"
Kun JWT-tunnus on luotu, suorita seuraava komento tallentaaksesi SVG-tiedoston PNG-kuvana.
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
Johtopäätös
Tämän artikkelin loppuun mennessä olemme oppineet yksityiskohtia siitä, kuinka voimme muuntaa SVG: n PNG: ksi Javalla. Samaan aikaan olemme myös tutkineet mahdollisuutta muuntaa SVG PNG:ksi cURL-komentojen avulla. Lisäksi, jos haluat hankkia SDK-lähdekoodin ja muokata sitä tarpeidesi mukaan, voit ladata sen GitHubista (Cloud SDK:mme on kehitetty MIT-lisenssillä). Huomaa, että toinen vaihtoehto API:n hämmästyttävien ominaisuuksien testaamiseen on verkkoselaimen SwaggerUI kautta.
Siitä huolimatta Tuotedokumentaatio on loistava arkisto artikkeleista, jotka selittävät API:n muita jännittäviä ominaisuuksia. Lopuksi, jos kohtaat ongelmia sovellusliittymän käytössä, voit harkita ottamista meihin ilmaisen tuotetukifoorumin kautta.
Aiheeseen liittyvät artikkelit
Suosittelemme tutustumaan seuraaviin linkkeihin saadaksesi lisätietoja: