pildi suurust muutma

Muutke TIFF-pildi suurust Java abil

Üks TIFF-failide silmapaistvamaid omadusi on nende võime salvestada mitu pilti (igaühel on mitu kanalit) järjestikuste kaadritena aja- või z-kujuliste virnana. Nüüd selles artiklis selgitame samme TIFF raami ekstraktimiseks, selle suuruse muutmiseks ja eraldi salvestusruumi salvestamiseks. Pildi suuruse muutmise võrguoperatsioon võimaldab uusi mõõtmeid (laius ja kõrgus), salvestades samal ajal värskendatud TIFF-raami.

Resize Image API

Aspose.Imaging Cloud SDK for Java on meie REST-põhine lahendus, mis võimaldab teil programmiliselt redigeerida, manipuleerida ja muuta rasterpilte, metafaile ja Photoshopi mitmesugusteks toetatud vorminguteks. Samuti pakub see TIFF-piltide manipuleerimise funktsiooni, kus saame isegi töötada üksikute TIFF-kaadritega. Nüüd peame SDK kasutamise alustamiseks lisama selle viite Java projekti. Seega lisage maven build tüüpi projekti faili pom.xml järgmised üksikasjad.

<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>

Järgmine samm on hankida kliendi mandaadid saidilt Cloud Dashboard ja kui teil pole Aspose Cloud Dashboardi kontot, looge tasuta konto, kasutades kehtivat e-posti aadressi.

Pildi suuruse muutmine Internetis Javas

Selles jaotises kasutame GetImageFrame API-t, et arendada oma TIFF-pildi suuruse muutjat. Laadime pildi üles ka pilvesalvestusse ja peale pildi parameetrite uuendamist saadetakse muudetud pilt vastusevoos tagasi. Pange tähele, et API võimaldab teil muuta fotode suurust hulgi või muuta ainult konkreetse TIFF-kaadri suurust, kasutades parameetrit saveOtherFrames.

  • Esiteks looge isikupärastatud kliendimandaatide abil ImagingApi objekt
  • Teiseks lugege esimese TIFF-kujutise sisu, kasutades meetodit readAllBytes (…) ja tagastage see massiivi bait[]
  • Kolmandaks looge UploadFileRequest klassi eksemplar, kuhu edastame TIFF-pildi nime
  • Nüüd laadige üles esimene TIFF-pilt pilvesalvestusse, kasutades uploadFile(…) meetodit
  • Järgmine samm on määrata TIFF-kaadri indeks, uued kõrguse ja laiuse mõõtmed ning konkreetne tiff-kaadri indeks
  • Nüüd looge GetImageFrameRequesti objekt, kuhu edastame sisestatud TIFF-pildi nime ja ülaltoodud atribuudid
  • Määratud TIFF-kaadri saamiseks helistage ImagingAPI klassi meetodile getImageFrame(…).
  • Lõpuks salvestage ekstraktitud raam kohalikule draivile, kasutades objekti FileOutputStream
// Hankige ClientID ja ClientSecret saidilt https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";

// luua pildiobjekt
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);

// laadige esimene TIFF-pilt kohalikust süsteemist
File file1 = new File("TiffSampleImage.tif");
byte[] imageStream = Files.readAllBytes(file1.toPath());
			
// luua faili üleslaadimise taotluse objekt
UploadFileRequest uploadRequest = new UploadFileRequest("input.tiff",imageStream,null);
// laadige esimene TIFF-pilt pilvmällu üles
imageApi.uploadFile(uploadRequest);

Integer frameId = 0; // Frame number inside TIFF
// uus väljavõetud raami laius ja kõrgus
Integer newWidth = 400;
Integer newHeight = 600;

// Tulemuseks on ainult määratud raami kaasamine, mitte muud kaadrid
Boolean saveOtherFrames = false;

// Looge tiff-kaadrite eraldamiseks määratud üksikasjade põhjal päringuobjekt
GetImageFrameRequest getImageFrameRequest = new GetImageFrameRequest("input.tiff", frameId, newWidth, newHeight,
                    null, null, null, null, null, saveOtherFrames, null, null);

// eraldatud kaader tagastatakse vastusevoos
byte[] updatedImage = imageApi.getImageFrame(getImageFrameRequest);

// Salvestage ekstraheeritud TIFF-raam kohalikku salvestusruumi
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Extracted-TIFF.tiff");
fos.write(updatedImage);
fos.close();
muutke tiff-raami suurust

TIFF-raami eelvaate suuruse muutmine

Ülaltoodud näites kasutatud TIFF-i näidiskujutisi saab alla laadida saidilt TiffSampleImage.tiff.

Vähendage pildi suurust cURL-i käskude abil

Tänu API REST-arhitektuurile pääseb sellele juurde ka cURL-i käskude kaudu. Nii et selles jaotises käsitleme üksikasju selle kohta, kuidas cURL-i käske kasutades pildi suurust vähendada või teatud mõõtmetega tiff-kaadrit eraldada. Nüüd on esimene samm järgmise käsu abil JWT juurdepääsuluba genereerimine (kliendi mandaatide alusel).

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"

Pärast JWT märgi genereerimist peame TIFF-kaadri suuruse muutmiseks täitma järgmise käsu.

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

Järeldus

See artikkel pakub lihtsaid, kuid hämmastavaid üksikasju pildi (TIFF) suuruse muutmise kohta Java abil. Selles õpetuses on selgitatud ka kõiki samme TIFF-raami suuruse muutmiseks cURL-i käskude abil. Pange tähele, et API-võimaluste testimiseks on veel üks võimalus veebibrauseris SwaggerUI kaudu. Samuti, kui olete huvitatud SDK lähtekoodi muutmisest, saate selle alla laadida saidilt GitHub, kuna see on avaldatud MIT-i litsentsi alusel.

Sellegipoolest on tootedokumentatsioon suurepärane teabeallikas, et õppida kõiki vajalikke üksikasju API muude põnevate funktsioonide kohta. Lõpuks, kui teil tekib API kasutamisel probleeme, võite meie poole pöörduda kiire lahenduse leidmiseks tasuta tootetoe foorumi kaudu.

seotud artiklid

Lisateabe saamiseks külastage järgmisi linke: