resize Image

Id-daqs tal-Immaġni TIFF billi tuża Java

Waħda mill-karatteristiċi prominenti tal-fajls TIFF hija l-kapaċitajiet tagħha li taħżen immaġini multipli (kull wieħed ikollu kanali multipli) bħala frejms sekwenzjali f’munzell ta’ ħin jew z-munzell ta’ immaġini. Issa f’dan l-artikolu, se nispjegaw il-passi biex jiġi estratt qafas TIFF, tibdilha fid-daqs u ssejvjah separatament fuq ħażna. L-operazzjoni online ta’ immaġni b’daqs ġdid taħseb għal dimensjonijiet ġodda (wisa’ u għoli) filwaqt li ssalva l-Qafas TIFF aġġornat.

Resize Image API

Aspose.Imaging Cloud SDK għal Java hija s-soluzzjoni tagħna bbażata fuq REST li tippermettilek teditja, timmanipula u tittrasforma b’mod programmatiku immaġini raster, Metafiles, u Photoshop għal varjetà ta’ Formats Sostnuti. Joffri wkoll il-karatteristika li timmanipula immaġini TIFF, fejn nistgħu anke naħdmu fuq frejms TIFF individwali. Issa, sabiex tibda bl-użu tal-SDK, irridu nżidu r-referenza tagħha fi proġett Java. Allura, jekk jogħġbok żid id-dettalji li ġejjin fil-pom.xml tal-proġett tat-tip maven build.

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

Il-pass li jmiss huwa li tikseb il-kredenzjali tal-klijent minn Cloud Dashboard u jekk m’għandekx kont fuq Aspose Cloud Dashboard, jekk jogħġbok oħloq kont b’xejn billi tuża indirizz elettroniku validu.

Resize Image Online f’Java

F’din it-taqsima, se nużaw GetImageFrame API biex niżviluppaw ir-resizer tal-istampa TIFF tagħna. Se ntellgħu wkoll l-immaġni fil-ħażna tas-sħab u wara li naġġornaw il-parametri tal-immaġni, l-immaġni modifikata tiġi rritornata bħala fluss ta ‘rispons. Jekk jogħġbok innota li l-API tippermettilek li tirreġġa’ d-daqs tar-ritratti bl-ingrossa jew tibdel id-daqs ta’ qafas TIFF speċifiku biss billi tuża l-parametru saveOtherFrames.

  • L-ewwelnett, oħloq oġġett ta ‘ImagingApi billi tuża kredenzjali personalizzati tal-klijent
  • It-tieni nett, aqra l-kontenut tal-ewwel immaġini TIFF billi tuża l-metodu readAllBytes (…) u erġa ’lura lill-firxa tal-byte[]
  • It-tielet, oħloq eżempju tal-klassi UploadFileRequest fejn ngħaddu l-isem tal-immaġni TIFF
  • Issa ittella l-ewwel immaġni TIFF fil-ħażna tas-sħab billi tuża l-metodu uploadFile (…)
  • Il-pass li jmiss huwa li tispeċifika l-indiċi tal-qafas TIFF, dimensjonijiet ġodda ta ‘għoli u wisa’ u indiċi partikolari tal-qafas tiff
  • Issa oħloq oġġett ta ‘GetImageFrameRequest fejn ngħaddu l-isem tal-immaġini TIFF tad-dħul u l-proprjetajiet definiti hawn fuq
  • Sejħa l-metodu getImageFrame(…) tal-klassi ImagingAPI biex tikseb il-qafas TIFF speċifikat
  • Fl-aħħarnett, issalva l-qafas estratt għal drive lokali billi tuża l-oġġett FileOutputStream
// Ikseb ClientID u ClientSecret minn https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";

// toħloq oġġett ta 'Immaġini
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);

// tagħbija l-ewwel immaġni TIFF mis-sistema lokali
File file1 = new File("TiffSampleImage.tif");
byte[] imageStream = Files.readAllBytes(file1.toPath());
			
// toħloq oġġett ta' talba għall-upload tal-fajl
UploadFileRequest uploadRequest = new UploadFileRequest("input.tiff",imageStream,null);
// ittella l-ewwel immaġni TIFF fil-ħażna tal-Cloud
imageApi.uploadFile(uploadRequest);

Integer frameId = 0; // Frame number inside TIFF
// wisa' u għoli ġodda tal-qafas estratt
Integer newWidth = 400;
Integer newHeight = 600;

// Riżultat li jinkludi biss il-qafas speċifikat mhux frejms oħra
Boolean saveOtherFrames = false;

// Oħloq oġġett ta 'talba biex jiġi estratt tiff frames ibbażat fuq dettalji speċifikati
GetImageFrameRequest getImageFrameRequest = new GetImageFrameRequest("input.tiff", frameId, newWidth, newHeight,
                    null, null, null, null, null, saveOtherFrames, null, null);

// il-qafas estratt jiġi rritornat bħala fluss ta 'rispons
byte[] updatedImage = imageApi.getImageFrame(getImageFrameRequest);

// Ħlief qafas TIFF estratt fuq ħażna lokali
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Extracted-TIFF.tiff");
fos.write(updatedImage);
fos.close();
resize tiff frame

Resize TIFF Frame Preview

L-istampi TIFF tal-kampjun użati fl-eżempju ta’ hawn fuq jistgħu jitniżżlu minn TiffSampleImage.tiff.

Naqqas id-Daqs tal-Immaġni billi tuża Kmandi tal-cURL

Minħabba l-arkitettura REST tal-API, jista ‘jkollu aċċess għaliha permezz ta’ kmandi tal-cURL. Allura f’din it-taqsima, se niddiskutu d-dettalji dwar kif tnaqqas id-daqs tal-immaġini jew estratt il-qafas tiff b’dimensjonijiet partikolari, billi tuża l-kmandi tal-cURL. Issa, l-ewwel pass huwa li tiġġenera token ta ‘aċċess JWT (ibbażat fuq kredenzjali tal-klijent) billi tuża l-kmand li ġej.

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"

Wara l-ġenerazzjoni tat-token JWT, irridu nwettqu l-kmand li ġej biex nibdew id-daqs tal-qafas TIFF.

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

Konklużjoni

Dan l-artikolu pprovda dettalji sempliċi iżda tal-għaġeb dwar kif tibdel id-daqs tal-immaġni (TIFF) billi tuża Java. Dan it-tutorja spjega wkoll il-passi kollha biex tibdel id-daqs tal-qafas TIFF billi tuża l-kmandi tal-cURL. Jekk jogħġbok innota li għażla oħra biex jiġu ttestjati l-kapaċitajiet tal-API hija permezz SwaggerUI fi ħdan web browser. Ukoll, jekk inti interessat li timmodifika l-kodiċi tas-sors tal-SDK, jista ‘jitniżżel minn GitHub, peress li huwa ppubblikat taħt il-liċenzja MIT.

Madankollu, id-Dokumentazzjoni tal-Prodott hija sors aqwa ta’ informazzjoni biex titgħallem id-dettalji kollha meħtieġa dwar karatteristiċi eċċitanti oħra tal-API. Fl-aħħar nett, f’każ li tiltaqa’ ma’ kwistjonijiet waqt li tuża l-API, tista ’tikkunsidra li tavviċina lilna għal riżoluzzjoni rapida permezz tal-forum ta’ appoġġ tal-prodott b’xejn.

Artikoli Relatati

Jekk jogħġbok żur il-links li ġejjin biex titgħallem aktar dwar: