Выявы SVG прыкметныя, таму што яны маштабуюцца і захоўваюць аднолькавую якасць, незалежна ад памеру або раздзялення экрана. Іх можна распрацаваць у любой раздзяляльнасці, і яны могуць павялічваць/памяншаць памер без шкоды для якасці (або пікселізацыі). Але, паколькі выявы SVG заснаваныя на кропках і шляхах, а не на пікселях, яны не могуць адлюстроўваць столькі дэталяў, колькі растравы малюнак. Такім чынам, калі мы пераўтворым выяву SVG у PNG, гэтыя праблемы можна вырашыць.
- API пераўтварэння SVG у PNG
- Пераўтварыце SVG у PNG у Java
- Захавайце SVG як PNG з дапамогай каманд cURL
API пераўтварэння SVG у PNG
У гэтым артыкуле мы збіраемся выкарыстоўваць Aspose.Imaging Cloud SDK для Java, які заснаваны на REST API і прапануе магчымасці праграмнага рэдагавання, маніпулявання і пераўтварэння растраў, метафайлаў, Photoshop у розныя падтрымоўваныя фарматы. ]. Ён таксама падтрымлівае функцыю канвертавання SVG у PNG онлайн. Цяпер, каб пачаць выкарыстоўваць SDK, нам трэба дадаць спасылку на яго ў наш праект Java, уключыўшы наступную інфармацыю ў pom.xml (праект тыпу зборкі 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>
Цяпер, каб выкарыстоўваць API, нам патрэбны персаналізаваныя ўліковыя дадзеныя кліента. Іх можна лёгка атрымаць, калі вы ўжо зарэгістраваны на Aspose Cloud Dashboard. У адваротным выпадку зарэгіструйце бясплатны ўліковы запіс праз сапраўдны адрас электроннай пошты і атрымайце ўліковыя дадзеныя кліента.
Пераўтварыце SVG у PNG у Java
Наш API апрацоўкі малюнкаў здольны пераўтвараць PNG у SVG і SVG у PNG з мінімальнымі радкамі кода. Такім чынам, у гэтым раздзеле мы абмяркуем усе дэталі пераўтварэння SVG у PNG з дапамогай Java.
- Перш за ўсё, стварыце аб’ект класа ImagingApi, дзе мы перадаем уліковыя дадзеныя кліента ў якасці аргумента
- Па-другое, прачытайце змесціва выявы SVG з дапамогай метаду readAllBytes(…) і вярніце яго ў масіў byte[]
- Затым стварыце асобнік UploadFileRequest, перадаючы імя SVG, і загрузіце яго ў воблачнае сховішча з дапамогай метаду uploadFile(…)
- Цяпер стварыце аб’ект ConvertImageRequest, дзе мы перадаем назву ўваходнага SNG і выніковы фармат як “PNG”
- Выклічце метад convertImage(…), каб пачаць пераўтварэнне SVG у PNG. Затым вывад вяртаецца як паток адказу
- Нарэшце, захавайце атрыманы PNG на лакальны дыск з дапамогай аб’екта FileOutputStream
// Атрымайце ClientID і ClientSecret з https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";
// стварыць аб'ект Imaging
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// загрузіць малюнак SVG з лакальнай сістэмы
File file1 = new File("File_Extension Icons.svg");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// стварыць аб'ект запыту загрузкі файла
UploadFileRequest uploadRequest = new UploadFileRequest("input.svg",imageStream,null);
// загрузіць выяву SVG у воблачнае сховішча
imageApi.uploadFile(uploadRequest);
// задайце фармат вываду выявы
String format = "PNG";
// Стварыць аб'ект запыту пераўтварэння выявы
ConvertImageRequest convertImage = new ConvertImageRequest("input.svg", format, null, null);
// канвертаваць SVG у PNG і вяртаць малюнак у патоку адказу
byte[] resultantImage = imageApi.convertImage(convertImage);
// Захаваць выяву PNG у лакальным сховішчы
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Converted.png");
fos.write(resultantImage);
fos.close();
Уваходны малюнак SVG, выкарыстаны ў прыведзеным вышэй прыкладзе, можна спампаваць з FileExtension Icons.svg.
Захавайце SVG як PNG з дапамогай каманд cURL
Паколькі Aspose.Imaging Cloud распрацавана ў адпаведнасці з архітэктурай REST, таму да яго можна лёгка атрымаць доступ праз каманды cURL. Такім чынам, у гэтым раздзеле мы захаваем SVG як PNG з дапамогай каманд cURL. Цяпер першым крокам з’яўляецца стварэнне маркера доступу JWT (на аснове ўліковых дадзеных кліента) з дапамогай наступнай каманды.
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"
Пасля стварэння токена JWT выканайце наступную каманду, каб захаваць SVG як выяву 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
Заключэнне
У канцы гэтага артыкула мы даведаліся падрабязнасці аб тым, як мы можам канвертаваць SVG ў PNG з дапамогай Java. У той жа час мы таксама вывучылі магчымасць пераўтварэння SVG у PNG з дапамогай каманд cURL. Акрамя таго, калі вы хочаце атрымаць зыходны код SDK і змяніць яго ў адпаведнасці з вашымі патрабаваннямі, яго можна загрузіць з GitHub (нашы Cloud SDK распрацаваны па ліцэнзіі MIT). Калі ласка, звярніце ўвагу, што іншы варыянт тэставання дзіўных функцый API - праз SwaggerUI у вэб-браўзеры.
Тым не менш, Дакументацыя па прадукту з’яўляецца цудоўным сховішчам артыкулаў, якія тлумачаць іншыя цікавыя асаблівасці API. Нарэшце, калі вы сутыкнецеся з праблемай пры выкарыстанні API, вы можаце звярнуцца да нас праз бясплатны форум падтрымкі прадукту.
Звязаныя артыкулы
Мы настойліва раім наведаць наступныя спасылкі, каб даведацца больш пра: