A TIFF-fájlok egyik kiemelkedő tulajdonsága, hogy képes több képet (mindegyik több csatornával) szekvenciális képkockákként tárolni egy idő- vagy z-veremben. Ebben a cikkben elmagyarázzuk a TIFF keret kibontásának, átméretezésének és külön tárolóra mentésének lépéseit. A kép átméretezése online művelet új méreteket (szélesség és magasság) biztosít, miközben menti a frissített TIFF-keretet.
- Kép API átméretezése
- Kép átméretezése online Java nyelven
- Csökkentse a képméretet a cURL parancsokkal
Kép API átméretezése
Az Aspose.Imaging Cloud SDK for Java a REST alapú megoldásunk, amely lehetővé teszi a raszterképek, metafájlok és Photoshop programozott szerkesztését, kezelését és átalakítását különféle támogatott formátumokra. A TIFF-képek manipulálására is lehetőséget kínál, ahol akár az egyes TIFF-kockákon is dolgozhatunk. Most az SDK használatának megkezdéséhez hozzá kell adnunk a hivatkozását egy Java projekthez. Tehát kérjük, adja hozzá a következő adatokat a maven build típusú projekt pom.xml fájljához.
<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>
A következő lépés az ügyfél hitelesítő adatainak beszerzése a Cloud Dashboard webhelyről, és ha nem rendelkezik Aspose Cloud Dashboard fiókkal, hozzon létre egy ingyenes fiókot érvényes e-mail címmel.
Kép átméretezése online Java nyelven
Ebben a részben a GetImageFrame API-t fogjuk használni a TIFF képátméretező fejlesztéséhez. A képet felhőtárhelyre is feltöltjük, és a képparaméterek frissítése után a módosított kép visszakerül válaszfolyamban. Felhívjuk figyelmét, hogy az API lehetővé teszi a fényképek tömeges átméretezését, vagy csak egy adott TIFF-keret átméretezését a saveOtherFrames paraméter segítségével.
- Először is hozzon létre egy ImagingApi objektumot személyre szabott ügyfél-hitelesítő adatok segítségével
- Másodszor olvassa be az első TIFF-kép tartalmát a readAllBytes(…) metódussal, és térjen vissza a byte[] tömbbe
- Harmadszor, hozzon létre egy példányt az UploadFileRequest osztályból, ahol átadjuk a TIFF-kép nevét
- Most töltse fel az első TIFF-képet a felhőtárhelyre az uploadFile(…) módszerrel
- A következő lépés a TIFF keretindex, az új magassági és szélességi méretek, valamint az adott tiff keretindex meghatározása
- Most hozzon létre egy GetImageFrameRequest objektumot, ahol átadjuk a bemeneti TIFF kép nevét és a fenti tulajdonságokat
- Hívja meg az ImagingAPI osztály getImageFrame(…) metódusát a megadott TIFF-keret beszerzéséhez
- Végül mentse a kibontott keretet a helyi meghajtóra a FileOutputStream objektum segítségével
// 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";
// Képalkotó objektum létrehozása
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// töltse be az első TIFF-képet a helyi rendszerről
File file1 = new File("TiffSampleImage.tif");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// fájlfeltöltési kérelem objektum létrehozása
UploadFileRequest uploadRequest = new UploadFileRequest("input.tiff",imageStream,null);
// töltse fel az első TIFF-képet a felhőtárhelyre
imageApi.uploadFile(uploadRequest);
Integer frameId = 0; // Frame number inside TIFF
// a kihúzott keret új szélessége és magassága
Integer newWidth = 400;
Integer newHeight = 600;
// Az eredmény csak a megadott keretet tartalmazza, más kereteket nem
Boolean saveOtherFrames = false;
// Hozzon létre egy kérelem objektumot a tiff-keretek kibontásához a megadott részletek alapján
GetImageFrameRequest getImageFrameRequest = new GetImageFrameRequest("input.tiff", frameId, newWidth, newHeight,
null, null, null, null, null, saveOtherFrames, null, null);
// a kivont keret válaszfolyamban kerül visszaadásra
byte[] updatedImage = imageApi.getImageFrame(getImageFrameRequest);
// A kibontott TIFF-keret mentése a helyi tárhelyre
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Extracted-TIFF.tiff");
fos.write(updatedImage);
fos.close();
A fenti példában használt TIFF-mintaképek letölthetők a TiffSampleImage.tiff webhelyről.
Csökkentse a képméretet a cURL parancsokkal
Az API REST architektúrájának köszönhetően cURL parancsokkal is elérhető. Tehát ebben a részben a képméret csökkentésének vagy adott méretű tiff-keret kinyerésének részleteit tárgyaljuk a cURL parancsok segítségével. Most az első lépés egy JWT hozzáférési jogkivonat létrehozása (az ügyfél hitelesítő adatai alapján) a következő paranccsal.
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 generálása után a következő parancsot kell végrehajtanunk a TIFF keret átméretezéséhez.
curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/input.tiff/frames/0?newWidth=400&newHeight=600&saveOtherFrames=false" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>"
-o ResizedFrame.tiff
Következtetés
Ez a cikk egyszerű, de lenyűgöző részleteket tartalmaz a kép (TIFF) Java használatával történő átméretezéséről. Ez az oktatóanyag a TIFF-keret cURL-parancsok segítségével történő átméretezésének lépéseit is ismerteti. Kérjük, vegye figyelembe, hogy egy másik lehetőség az API-képességek tesztelésére a SwaggerUI segítségével egy webböngészőn belül. Továbbá, ha módosítani szeretné az SDK forráskódját, letöltheti a GitHub oldalról, mivel az MIT licenc alatt van közzétéve.
Mindazonáltal a Termékdokumentáció elképesztő információforrás az API egyéb izgalmas funkcióinak minden szükséges részletének megismeréséhez. Végül, ha az API használata során problémákba ütközik, megfontolhatja, hogy felkeressen minket a gyors megoldás érdekében az ingyenes terméktámogatási fórumon.
kapcsolódó cikkek
Kérjük, látogasson el az alábbi linkekre, ha többet szeretne megtudni erről: