svg в png

Перетворення SVG на PNG у Java

Зображення SVG помітні, тому що вони масштабовані та зберігають однакову якість, незалежно від розміру чи роздільної здатності екрана. Їх можна розробити з будь-якою роздільною здатністю та збільшити/зменшити розмір без шкоди для якості (або пікселізації). Але, оскільки зображення SVG базуються на точках і шляхах, а не на пікселях, вони не можуть відображати стільки деталей, скільки растрове зображення. Отже, якщо ми перетворимо зображення SVG на PNG, ці проблеми можна вирішити.

API перетворення SVG у PNG

У цій статті ми будемо використовувати Aspose.Imaging Cloud SDK для Java, який є API на основі REST, який пропонує можливості програмного редагування, обробки та трансформації растру, метафайлів, Photoshop у різні підтримувані формати. ]. Він також підтримує функцію онлайн-конвертації SVG у PNG. Тепер, щоб розпочати використання SDK, нам потрібно додати його посилання в наш проект Java, включивши наступну інформацію в pom.xml (проект типу збірки maven).

<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>

Тепер, щоб використовувати 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";

// створити об’єкт зображення
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

Зображення: конвертуйте svg у png онлайн-попередній перегляд

Збережіть 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, ви можете звернутися до нас через безкоштовний форум підтримки продуктів.

Схожі статті

Ми настійно рекомендуємо відвідати такі посилання, щоб дізнатися більше про: