WebP — популярный современный формат изображений, обеспечивающий превосходное сжатие без потерь и с потерями для изображений в Интернете. Этот формат изображения разработан Google и предназначен для замены форматов файлов JPEG, PNG и GIF. Он поддерживает сжатие как с потерями, так и без потерь, а также анимацию и альфа-прозрачность. Они также популярны, потому что файл WebP, как правило, намного меньше, чем традиционный JPEG, и, следовательно, веб-сайты загружаются быстрее и предоставляют пользователям лучший опыт. Тем не менее, многим традиционным системам по-прежнему требуются форматы растровых изображений для хранения и обработки, поэтому нам необходимо выполнить массовое преобразование WebP в JPG. Итак, в этой статье мы собираемся обсудить детали того, как программно конвертировать форматы WebP в JPG, WebP в PNG и WebP в GIF.
- WebP в JPG REST API
- Преобразование WebP в JPEG в Java
- WebP в PNG в Java
- WebP в GIF с помощью команд cURL
WebP в JPG REST API
Наше решение на основе REST Aspose.Imaging Cloud SDK для Java представляет собой надежный API для обработки и преобразования изображений. С помощью этого API вы можете реализовать возможности обработки изображений (редактирование и преобразование) в своем приложении. Он поддерживает растровые изображения, файлы Photoshop, метафайлы и другие форматы, такие как формат WebP. Итак, в рамках этой статьи мы собираемся использовать этот API для преобразования WebP в JPEG. Теперь, чтобы начать использовать 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>
После добавления ссылки на REST API в проект Java получите учетные данные клиента на Cloud Dashboard. В противном случае вам необходимо сначала зарегистрировать бесплатную учетную запись, используя действующий адрес электронной почты.
Преобразование WebP в JPEG в Java
Давайте подробно обсудим, как загрузить и преобразовать WebP в формат JPG с помощью фрагмента кода Java.
- Во-первых, создайте объект ImagingApi, используя персонализированные учетные данные.
- Во-вторых, загрузите изображение WebP с помощью метода readAllBytes(…) и перейдите в массив byte[]
- В-третьих, создайте экземпляр UploadFileRequest, предоставив изображение WebP в качестве аргумента, и загрузите его в облачное хранилище с помощью метода uploadFile(…)
- Теперь создайте объект ConvertImageRequest, который принимает имя изображения WebP и формат JPG в качестве аргументов.
- Вызовите метод convertImage(…) для преобразования WebP в формат JPEG. Вывод возвращается как поток ответа
- Наконец, сохраните полученный JPG на локальный диск, используя объект FileOutputStream.
// Получите ClientID и ClientSecret с https://dashboard.aspose.cloud/
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// создать объект изображения
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// загрузить изображение WebP с локального диска
File file1 = new File("WEBPSampleImage.webp");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// создать объект запроса загрузки файла
UploadFileRequest uploadRequest = new UploadFileRequest("source.webp",imageStream,null);
// загрузить изображение WebP в облачное хранилище
imageApi.uploadFile(uploadRequest);
// указать выходной формат как JPEG
String format = "jpg";
// Создать объект запроса преобразования изображения
ConvertImageRequest convertImage = new ConvertImageRequest("source.webp", format, null, null);
// конвертировать WebP в JPEG и возвращать вывод в потоке ответа
byte[] resultantImage = imageApi.convertImage(convertImage);
// Сохраните полученный JPG на локальный диск
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Converted.jpg");
fos.write(resultantImage);
fos.close();
Образец изображения WebP, использованный в приведенном выше примере, можно загрузить из WEBPSampleImage.webp, а выходные данные — из Converted.jpg.
WebP в PNG в Java
В этом разделе обсуждаются подробности о том, как преобразовать формат WebP в формат PNG без использования облачного хранилища.
- Сначала создайте объект ImagingApi, используя персонализированные учетные данные.
- Во-вторых, загрузите изображение WebP с помощью метода readAllBytes(…) и перейдите в массив byte[]
- В-третьих, создайте объект CreateConvertedImageRequest, который принимает имя изображения WebP и формат PNG в качестве аргументов.
- Теперь вызовите метод createConvertedImage(…) для преобразования WebP в PNG. Вывод возвращается как поток ответа
- Наконец, сохраните полученный PNG на локальный диск, используя объект FileOutputStream.
// Получите ClientID и ClientSecret с https://dashboard.aspose.cloud/
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// создать объект изображения
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// загрузить изображение WebP с локального диска
File file1 = new File("WEBPSampleImage.webp");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// указать формат вывода как PNG
String format = "png";
// Создать объект запроса преобразования изображения
CreateConvertedImageRequest convertRequest = new CreateConvertedImageRequest(imageStream,format,null,null);
// конвертировать WebP в PNG и возвращать вывод в поток ответа
byte[] resultantImage = imageApi.createConvertedImage(convertRequest);
// Сохраните полученный PNG на локальный диск
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Converted.png");
fos.write(resultantImage);
fos.close();
Примечание. Если нам нужно сохранить полученный PNG в облачном хранилище, передайте сведения о пути PNG при создании объекта CreateConvertedImageRequest. При таком подходе последний шаг по сохранению выходного потока на локальный диск будет пропущен.
WebP в GIF с помощью команд cURL
Доступ к REST API также можно получить с помощью команд cURL, поэтому в этом разделе мы собираемся выполнить преобразование WebP в GIF с помощью команд 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 выполните следующую команду, чтобы выполнить преобразование WebP в GIF.
curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/WEBPSampleImage.webp/convert?format=GIF" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-o "Converted,gif"
Заключение
В этой статье описаны все необходимые сведения о том, как преобразовать WebP в JPEG, WebP в PNG и как выполнить преобразование WebP в GIF с помощью REST API. Мы узнали, как программно преобразовать WebP в JPG или преобразовать webp в gif с помощью команд cURL. Мы настоятельно рекомендуем вам ознакомиться с Документацией по продукту, которая является отличным источником информации о других интересных функциях, предлагаемых API.
Вы также можете протестировать функции API через SwaggerUI в веб-браузере, и если вам нужно загрузить и изменить исходный код Cloud SDK, он доступен на GitHub (опубликовано по лицензии MIT) . Наконец, если вы обнаружите какие-либо проблемы при использовании API, вы можете обратиться к нам за быстрым решением через бесплатный форум поддержки продукта.
Статьи по Теме
Пожалуйста, перейдите по следующим ссылкам, чтобы узнать больше о: