Slike SVG so vidne, ker so prilagodljive in ohranjajo enako kakovost, ne glede na velikost ali ločljivost zaslona. Lahko so oblikovani v kateri koli ločljivosti in se lahko povečajo/zmanjšajo, ne da bi pri tem poškodovali kakovost (ali pikselizirali). Ker pa slike SVG temeljijo na točkah in poteh, torej namesto na slikovnih pikah, ne morejo prikazati toliko podrobnosti kot rastrska slika. Torej, če sliko SVG pretvorimo v PNG, lahko te težave rešimo.
API za pretvorbo SVG v PNG
V tem članku bomo uporabili Aspose.Imaging Cloud SDK for Java, ki je API, ki temelji na REST in ponuja zmožnosti za programsko urejanje, manipulacijo in pretvorbo rastra, metadatotek, photoshopa v različne podprte formate. ]. Podpira tudi funkcijo za pretvorbo SVG v PNG na spletu. Zdaj, če želimo začeti z uporabo SDK, moramo dodati njegovo referenco v naš projekt Java, tako da vključimo naslednje informacije v pom.xml (projekt vrste gradnje maven).
<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>
Za uporabo API-ja potrebujemo prilagojene poverilnice odjemalca. Preprosto jih lahko dobite, če ste že registrirani na Aspose Cloud Dashboard. V nasprotnem primeru registrirajte brezplačen račun prek veljavnega e-poštnega naslova in pridobite poverilnice svoje stranke.
Pretvorite SVG v PNG v Javi
Naš API za obdelavo slik je sposoben pretvoriti PNG v SVG in SVG v PNG z minimalnimi vrsticami kode. V tem razdelku bomo razpravljali o vseh podrobnostih pretvorbe SVG v PNG z uporabo Jave.
- Najprej ustvarite objekt razreda ImagingApi, kjer kot argument posredujemo poverilnice odjemalca
- Drugič, preberite vsebino slike SVG z metodo readAllBytes(…) in jo vrnite v niz byte[]
- Nato ustvarite primerek UploadFileRequest, medtem ko posredujete ime SVG, in ga naložite v shrambo v oblaku z uporabo metode uploadFile(…).
- Zdaj ustvarite objekt ConvertImageRequest, kjer posredujemo vhodno ime SNG in nastalo obliko kot “PNG”
- Pokličite metodo convertImage(…), da sprožite pretvorbo SVG v PNG. Izhod se nato vrne kot odzivni tok
- Končno shranite nastali PNG na lokalni pogon z uporabo predmeta FileOutputStream
// Pridobite ClientID in ClientSecret na https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";
// ustvari slikovni objekt
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// naloži sliko SVG iz lokalnega sistema
File file1 = new File("File_Extension Icons.svg");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// ustvari objekt zahteve za nalaganje datoteke
UploadFileRequest uploadRequest = new UploadFileRequest("input.svg",imageStream,null);
// naložite sliko SVG v shrambo v oblaku
imageApi.uploadFile(uploadRequest);
// določite izhodni format slike
String format = "PNG";
// Ustvari predmet zahteve za pretvorbo slike
ConvertImageRequest convertImage = new ConvertImageRequest("input.svg", format, null, null);
// pretvorite SVG v PNG in vrnite sliko v odzivnem toku
byte[] resultantImage = imageApi.convertImage(convertImage);
// Shrani sliko PNG v lokalno shrambo
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Converted.png");
fos.write(resultantImage);
fos.close();
Vhodno sliko SVG, uporabljeno v zgornjem primeru, lahko prenesete iz FileExtension Icons.svg.
Shranite SVG kot PNG z ukazi cURL
Ker je Aspose.Imaging Cloud razvit v skladu z arhitekturo REST, je do njega enostavno dostopen prek ukazov cURL. V tem razdelku bomo torej shranili SVG kot PNG z uporabo ukazov cURL. Zdaj je prvi korak ustvarjanje žetona dostopa JWT (na podlagi poverilnic odjemalca) z uporabo naslednjega ukaza.
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"
Ko je žeton JWT ustvarjen, izvedite naslednji ukaz, da shranite SVG kot sliko 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
Zaključek
Na koncu tega članka smo se naučili podrobnosti o tem, kako lahko pretvorimo SVG v PNG z uporabo Jave. Hkrati smo raziskali tudi možnost pretvorbe SVG v PNG z uporabo ukazov cURL. Poleg tega, če želite pridobiti izvorno kodo SDK in jo spremeniti glede na svoje zahteve, jo lahko prenesete iz GitHub (naši SDK-ji v oblaku so razviti pod licenco MIT). Upoštevajte, da je druga možnost za preizkušanje izjemnih funkcij API-ja prek SwaggerUI v spletnem brskalniku.
Kljub temu je Dokumentacija izdelka čudovito skladišče člankov, ki pojasnjujejo druge vznemirljive funkcije API-ja. Nazadnje, v primeru, da med uporabo API-ja naletite na kakršne koli težave, se lahko obrnete na nas prek brezplačnega foruma za podporo izdelkom.
povezani članki
Zelo priporočamo, da obiščete naslednje povezave, če želite izvedeti več o: