svg в png

Преобразование SVG в PNG в Java

Изображения SVG выделяются, потому что они масштабируются и сохраняют одинаковое качество, независимо от размера или разрешения экрана. Они могут быть созданы с любым разрешением и могут увеличиваться/уменьшаться без ущерба для качества (или пикселизации). Но поскольку изображения SVG основаны на точках и путях, а не на пикселях, они не могут отображать столько деталей, сколько растровое изображение. Итак, если мы преобразуем SVG в изображение PNG, эти проблемы можно решить.

API преобразования SVG в PNG

В этой статье мы собираемся использовать Aspose.Imaging Cloud SDK для Java, который представляет собой API на основе REST, предлагающий возможности программного редактирования, управления и преобразования растра, метафайлов, фотошопа в различные поддерживаемые форматы. ]. Он также поддерживает функцию онлайн-конвертации 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, вы можете обратиться к нам через бесплатный форум поддержки продукта.

Статьи по Теме

Мы настоятельно рекомендуем посетить следующие ссылки, чтобы узнать больше о: