Személyes és hivatalos életünket raszteres képek ölelik fel. A mobiltelefonok, szkennerek, képalkotó eszközök és különféle egyéb eszközökben használt kamerák használata közben hatalmas mennyiségű adatot állítunk elő képek formájában. Mostantól a tömörítési algoritmustól függően minden eszköz különböző méretekben és méretekben állítja elő a képeket. De abban az esetben, ha a képeket (JPG, PNG, GIF, TIFF stb.) egységes méretben kell tárolnunk, képek átméretezése. Rengeteg fotóátméretező alkalmazás áll rendelkezésünkre a piacon, de ha tömegesen kell átméreteznünk a képet online, egy programozott megoldás mindig járható megoldás. Ezért ebben a cikkben megvitatjuk a képátméretező Java Cloud SDK használatával történő fejlesztésének részleteit/lépéseit.
Image Resize API
A kép átméretezéséhez az [Aspose.Imaging Cloud SDK for Java] alkalmazást 17 fogjuk használni. REST alapú architektúrájának köszönhetően bármilyen platformon elérhetjük az API-t és fejleszthetjük a fényképátméretezőt. A kép online átméretezése mellett lehetővé teszi képfájlok létrehozását, szerkesztését és különféle támogatott fájlformátumokra való átalakítását is. Most az induláshoz hozzá kell adnunk a hivatkozását a java projekthez az alábbi információkkal a pom.xml-ben (maven build típusú projekt).
<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>
Ha nem rendelkezik Aspose Cloud Dashboard fiókkal, hozzon létre egy ingyenes fiókot érvényes e-mail címmel. Most jelentkezzen be az újonnan létrehozott fiókkal, és keresse meg/hozza létre az ügyfél-azonosítót és az ügyféltitkot a Cloud Dashboard oldalon. Ezek az adatok hitelesítési célból szükségesek a következő szakaszokban.
Kép átméretezése Java nyelven
Ez a rész a PNG-kép átméretezésének lépéseit ismerteti. Az API elvárja, hogy betöltse a képet a helyi meghajtóról, amelyre közvetlenül a kérés törzsében kell átadnunk a képet. A png átméretezése után az outPath paraméter értékének megadásával a frissített képet menthetjük a Cloud Storage-ra. Ha azonban nem adjuk meg az értéket, a válasz streamelt képet tartalmaz.
- Hozzon létre egy ImagingApi példányt személyre szabott ügyfél-hitelesítő adatok alapján
- PNG-fájl olvasása helyi mappából a File objektum segítségével
- Hozzon létre byte[] példányt, és olvassa be az összes bájtot a fájlból a readAllBytes(…) metódussal
- Adjon meg új képméreteket egész objektumokkal
- Most hozzon létre egy CreateResizedImageRequest példányt, ahol megadjuk az eredményül kapott kép nevét
- Végül méretezze át a képet a createResizedImage(…) metódussal
// Szerezze be a ClientID-t és a ClientSecret-et a https://dashboard.aspose.cloud/ webhelyről
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";
// hozzon létre képalkotó objektumot
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// fájl betöltése a helyi meghajtóról
File f = new File("PinClipart.png");
// olvassa be a PNG-kép tartalmát bájttömbbe
byte[] bytes = Files.readAllBytes(f.toPath());
// új dimenziók az eredményül kapott képhez
int newWidth = 150;
int newHeight = 150;
// hozzon létre kép átméretezési kérelmet, miközben megadja az eredményül kapott kép nevét
CreateResizedImageRequest resizeRequest = new CreateResizedImageRequest(bytes, newWidth, newHeight, null, "Updated.png", null);
// átméretezheti a képet online, és mentheti a kimenetet a felhőalapú tárhelyen
imageApi.createResizedImage(resizeRequest);
Méretezze át a GIF-et a cURL parancsokkal
A kép átméretezése során a kép frissített formátumát is megadhatjuk. Tehát ebben a részben átméretezzük a GIF-et, és a kimenetet JPG formátumban mentjük a cURL parancsok segítségével. Tehát előfeltételként először létre kell hoznunk egy JWT hozzáférési tokent (az ügyfél hitelesítő adatai alapján), miközben végrehajtjuk a következő parancsot.
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"
A JWT token létrehozása után hívja a ResizeImage API-t a kép átméretezéséhez, és a kimenetet JPG formátumban mentse a helyi meghajtóra (az eredményül kapott fájlformátum paraméter nem kötelező).
curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/winter.gif/resize?newWidth=200&newHeight=200&format=JPG" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-o "resultant.jpg"
A forrás GIF kép letölthető a winter.gif oldalról, az eredmény pedig a resultant.jpg oldalról.
Következtetés
Elképesztő megközelítést tanultunk a kép online átméretezésére Java kódrészlet segítségével. Arról is felvilágosított bennünket, hogyan lehet átméretezni a képet a minőség romlása nélkül a cURL parancsokkal. Felhívjuk figyelmét, hogy a swagger API Reference használata közben a webböngészőn belül is felfedezheti az API-képességeket. A Picture Resizer képességein kívül most a Termékdokumentációból fedezheti fel és ismerkedhet meg az API egyéb izgalmas funkcióival. Mindazonáltal minden Cloud SDK-nk MIT-licenc alatt van közzétéve, ezért érdemes lehet letölteni a teljes forráskódot a GitHub oldalról (amelyet igényei szerint módosíthat). Végül, ha bármilyen problémát észlel az API használata során, megfontolhatja, hogy felkeressen minket egy ingyenes terméktámogatási fórumon keresztüli gyors megoldás érdekében.
kapcsolódó cikkek
Kérjük, látogasson el az alábbi linkekre, ha többet szeretne megtudni erről: