WebP je populární moderní formát obrázků poskytující vynikající bezztrátovou a ztrátovou kompresi obrázků na webu. Tento formát obrázku byl vyvinut společností Google a je určen jako náhrada za formáty souborů JPEG, PNG a GIF. Podporuje ztrátovou i bezeztrátovou kompresi, stejně jako animaci a průhlednost alfa. Jsou také populární, protože soubor WebP je obecně mnohem menší než tradiční JPEG, a proto se webové stránky načítají rychleji a poskytují uživatelům lepší zážitek. Mnoho konvenčních systémů však stále vyžaduje formáty rastrových obrázků pro účely ukládání a zpracování, proto máme požadavek na hromadnou konverzi WebP na JPG. V tomto článku tedy probereme podrobnosti o tom, jak programově převést formáty WebP na JPG, WebP na PNG a WebP na GIF.
WebP až JPG REST API
Naše řešení založené na REST Aspose.Imaging Cloud SDK for Java je spolehlivé rozhraní API pro zpracování a konverzi obrázků. Pomocí tohoto rozhraní API můžete ve své aplikaci implementovat možnosti zpracování obrazu (úpravy a transformace). Podporuje rastrové obrázky, soubory Photoshopu, metasoubory a další formáty, jako je formát WebP. Takže podle rozsahu tohoto článku použijeme toto API k převodu WebP na JPEG. Nyní, abychom mohli začít s využitím SDK, musíme přidat jeho odkaz do našeho java projektu zahrnutím následujících informací do pom.xml (projekt typu maven build).
<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>
Jakmile bude reference REST API přidána do projektu Java, získejte přihlašovací údaje klienta z Cloud Dashboard. Jinak si musíte nejprve zaregistrovat bezplatný účet a používat platnou e-mailovou adresu.
Převést WebP na JPEG v Javě
Pojďme diskutovat o podrobnostech, jak načíst a převést WebP do formátu JPG pomocí fragmentu kódu Java.
- Nejprve vytvořte objekt ImagingApi pomocí personalizovaných přihlašovacích údajů
- Za druhé, načtěte obrázek WebP pomocí metody readAllBytes(…) a předejte jej do pole byte[]
- Za třetí, vytvořte instanci UploadFileRequest poskytnutím obrázku WebP jako argumentu a nahrajte jej do cloudového úložiště pomocí metody uploadFile(…)
- Nyní vytvořte objekt ConvertImageRequest, který přebírá název obrázku WebP a formát JPG jako argumenty
- Zavolejte metodu convertImage(…) pro převod WebP do formátu JPEG. Výstup je vrácen jako tok odpovědí
- Nakonec uložte výsledný JPG na místní disk pomocí objektu FileOutputStream
// Získejte ClientID a ClientSecret z https://dashboard.aspose.cloud/
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// vytvořit Imaging objekt
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// načíst obrázek WebP z místního disku
File file1 = new File("WEBPSampleImage.webp");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// vytvořit objekt požadavku na nahrání souboru
UploadFileRequest uploadRequest = new UploadFileRequest("source.webp",imageStream,null);
// nahrajte obrázek WebP do cloudového úložiště
imageApi.uploadFile(uploadRequest);
// určete výstupní formát jako JPEG
String format = "jpg";
// Vytvořit objekt požadavku na konverzi obrázku
ConvertImageRequest convertImage = new ConvertImageRequest("source.webp", format, null, null);
// převést WebP na JPEG a vrátit výstup v toku odpovědí
byte[] resultantImage = imageApi.convertImage(convertImage);
// Uložte výsledný JPG na místní disk
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Converted.jpg");
fos.write(resultantImage);
fos.close();
Ukázkový obrázek WebP použitý ve výše uvedeném příkladu lze stáhnout z WEBPSampleImage.webp a výstup z Converted.jpg.
WebP až PNG v Javě
Tato část pojednává o podrobnostech, jak převést WebP do formátu PNG bez použití cloudového úložiště.
- Nejprve vytvořte objekt ImagingApi pomocí personalizovaných přihlašovacích údajů
- Za druhé, načtěte obrázek WebP pomocí metody readAllBytes(…) a předejte jej do pole byte[]
- Za třetí vytvořte objekt CreateConvertedImageRequest, který jako argumenty převezme název obrázku WebP a formát pNG.
- Nyní zavolejte metodu createConvertedImage(…) pro převod WebP na PNG. Výstup je vrácen jako tok odpovědí
- Nakonec uložte výsledný PNG na místní disk pomocí objektu FileOutputStream
// Získejte ClientID a ClientSecret z https://dashboard.aspose.cloud/
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// vytvořit Imaging objekt
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// načíst obrázek WebP z místního disku
File file1 = new File("WEBPSampleImage.webp");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// zadejte výstupní formát jako PNG
String format = "png";
// Vytvořit objekt požadavku na konverzi obrázku
CreateConvertedImageRequest convertRequest = new CreateConvertedImageRequest(imageStream,format,null,null);
// převést WebP na PNG a vrátit výstup v toku odpovědí
byte[] resultantImage = imageApi.createConvertedImage(convertRequest);
// Uložte výsledný PNG na místní disk
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Converted.png");
fos.write(resultantImage);
fos.close();
Poznámka:- Pokud potřebujeme uložit výsledný PNG na cloudové úložiště, předejte podrobnosti o cestě PNG při vytváření objektu CreateConvertedImageRequest. V tomto přístupu bude poslední krok pro uložení výstupního proudu na místní disk přeskočen.
WebP na GIF pomocí příkazů cURL
K REST API lze přistupovat také pomocí příkazů cURL, takže v této části provedeme převod WebP na GIF pomocí příkazů cURL. Nyní je nezbytným předpokladem vygenerování přístupového tokenu JWT (na základě přihlašovacích údajů klienta) pomocí následujícího příkazu.
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"
Po vygenerování JWT proveďte následující příkaz pro provedení převodu WebP na 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"
Závěr
Tento článek vysvětlil všechny potřebné podrobnosti o tom, jak převést WebP na JPEG, WebP na PNG a jak provést převod WebP na GIF pomocí REST API. Naučili jsme se kroky buď programově transformovat WebP na JPG, nebo převést webp na gif pomocí příkazů cURL. Důrazně vám doporučujeme prozkoumat Produktovou dokumentaci, která je úžasným zdrojem informací, abyste se dozvěděli o dalších zajímavých funkcích nabízených rozhraním API.
Můžete také zvážit testování funkcí API prostřednictvím SwaggerUI ve webovém prohlížeči a v případě, že potřebujete stáhnout a upravit zdrojový kód Cloud SDK, je k dispozici na GitHub (publikováno pod licencí MIT) . A konečně, v případě, že při používání API narazíte na nějaké problémy, můžete zvážit oslovení nás pro rychlé vyřešení prostřednictvím bezplatného fóra podpory produktů.
Související články
Další informace naleznete na následujících odkazech: