Viața noastră personală și oficială este cuprinsă de imagini raster. În timp ce folosim telefoane mobile, scanere, dispozitive de imagistică și diverse alte camere folosite pe o varietate de dispozitive, producem o cantitate imensă de date în termeni de imagini. Acum, în funcție de algoritmul de compresie, fiecare dispozitiv produce imagini în dimensiuni diferite, precum și în dimensiuni. Dar în cazul în care avem o cerință de a stoca imaginile (JPG, PNG, GIF, TIFF etc) în dimensiuni unificate, deci trebuie să redimensiona imaginile. Avem o multitudine de aplicații de redimensionare a fotografiilor disponibile pe piață, dar în cazul în care trebuie să redimensionăm imaginea online în vrac, o soluție programatică este întotdeauna o abordare viabilă. Prin urmare, în acest articol, vom discuta detaliile/pașii despre cum să dezvoltați redimensionarea imaginii folosind Java Cloud SDK.
Image Resize API
Pentru a redimensiona imaginea, vom folosi Aspose.Imaging Cloud SDK for Java. Datorită arhitecturii bazate pe REST, putem accesa API-ul pe orice platformă și putem dezvolta redimensionare foto. Pe lângă funcția de redimensionare online a imaginii, vă permite, de asemenea, să creați, să editați și să transformați fișiere imagine într-o varietate de formate de fișiere acceptate. Acum, pentru a începe, trebuie să adăugăm referința sa în proiectul java, incluzând următoarele informații în pom.xml (proiect de tip 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>
În cazul în care nu aveți un cont peste Aspose Cloud Dashboard, vă rugăm să creați un cont gratuit printr-o adresă de e-mail validă. Acum autentificați-vă utilizând contul nou creat și căutați/creați ID-ul clientului și Secretul clientului la Cloud Dashboard. Aceste detalii sunt necesare în scopuri de autentificare în secțiunile următoare.
Redimensionați imaginea în Java
Această secțiune explică pașii privind redimensionarea imaginii PNG. API-ul se așteaptă să încarce imaginea de pe unitatea locală, pe care trebuie să o transmitem direct imaginea în corpul solicitării. După operația de redimensionare png, putem salva imaginea actualizată pe Cloud Storage prin specificarea valorii parametrului outPath. Totuși, dacă nu specificăm valoarea, răspunsul conține o imagine transmisă în flux.
- Creați o instanță de ImagingApi pe baza acreditărilor personalizate ale clientului
- Citiți fișierul PNG din dosarul local folosind obiectul Fișier
- Creați o instanță byte[] și citiți toți octeții din fișier folosind metoda readAllBytes(…).
- Specificați noi dimensiuni ale imaginii folosind obiecte Integer
- Acum creați o instanță de CreateResizedImageRequest unde specificăm numele pentru imaginea rezultată
- În cele din urmă, redimensionați imaginea folosind metoda createResizedImage(…).
// Obțineți ClientID și ClientSecret de pe https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";
// creați obiectul Imaging
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// încărcați fișierul de pe unitatea locală
File f = new File("PinClipart.png");
// citiți conținutul imaginii PNG în matricea de octeți
byte[] bytes = Files.readAllBytes(f.toPath());
// noi dimensiuni pentru imaginea rezultată
int newWidth = 150;
int newHeight = 150;
// creați cererea de redimensionare a imaginii în timp ce specificați numele imaginii rezultate
CreateResizedImageRequest resizeRequest = new CreateResizedImageRequest(bytes, newWidth, newHeight, null, "Updated.png", null);
// redimensionați imaginea online și salvați rezultatul în stocarea în cloud
imageApi.createResizedImage(resizeRequest);
Redimensionați GIF folosind comenzile cURL
În timpul operației de redimensionare a imaginii, putem specifica și formatul actualizat pentru imagine. Deci, în această secțiune, vom redimensiona GIF și vom salva rezultatul în format JPG folosind comenzile cURL. Deci, ca o cerință prealabilă, trebuie să generăm mai întâi un token de acces JWT (pe baza acreditărilor clientului) în timp ce executăm următoarea comandă.
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"
Odată ce simbolul JWT a fost generat, vă rugăm să apelați ResizeImage API pentru a redimensiona imaginea și a salva rezultatul în format JPG pe unitatea locală (parametrul de format de fișier rezultat este opțional).
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"
Imaginea GIF sursă poate fi descărcată de pe winter.gif și imaginea rezultată din resultant.jpg.
Concluzie
Am învățat o abordare uimitoare de a redimensiona imaginea online folosind fragmentul de cod Java. De asemenea, ne-a lămurit cu privire la detalii despre cum să redimensionăm imaginea fără a pierde calitatea utilizând comenzile cURL. Vă rugăm să rețineți că puteți explora și capabilitățile API din browser-ul web în timp ce utilizați swagger API Reference. Acum, în afară de capabilitățile Picture Resizer, puteți explora și afla despre alte funcții interesante ale API din Product Documentation. Cu toate acestea, toate SDK-urile noastre Cloud sunt publicate sub licență MIT, așa că vă recomandăm să descărcați codul sursă complet de pe GitHub (pe care îl puteți modifica în funcție de cerințele dvs.). În cele din urmă, dacă întâmpinați probleme în timpul utilizării API-ului, vă recomandăm să ne contactați pentru o rezolvare rapidă prin intermediul forumul de asistență pentru produse.
Articole similare
Vă rugăm să vizitați următoarele link-uri pentru a afla mai multe despre: