fotoattēla dublikāts

Atrodiet attēlu dublikātus, izmantojot Java Cloud SDK

JPG attēls ir populārs formāts drukāšanai un rediģēšanai. Turklāt tas ir populārs attēlu formāts fotoattēlu un citu attēlu kopīgošanai internetā un starp mobilo un datoru lietotājiem. Nelielais JPG attēlu faila izmērs ļauj saglabāt tūkstošiem attēlu nelielā atmiņas vietā. Tagad, tā kā saspiešana ir zaudēta, tas nozīmē, ka noteikta nevajadzīga informācija tiek neatgriezeniski izdzēsta. No otras puses, lielākā PNG priekšrocība salīdzinājumā ar JPEG ir tā, ka saspiešana notiek bez zudumiem, kas nozīmē, ka kvalitāte nezaudē katru reizi, kad tas tiek atvērts un vēlreiz saglabāts. PNG arī labi apstrādā detalizētus, augsta kontrasta attēlus. Tagad šajā rakstā mēs apspriedīsim informāciju par to, kā konvertēt JPG uz PNG, izmantojot Java Cloud SDK.

Image Conversion API

Mūsu uz REST balstītā API piedāvā iespējas izveidot, rediģēt un pārveidot attēlu failus dažādos atbalstītos failu formātos. Tagad, lai Java lietojumprogrammā ieviestu funkciju, lai ielādētu un pārveidotu jpg par png caurspīdīgu, mums ir jāizmanto Aspose.Imaging Cloud SDK for Java, jo tas ir Cloud API iesaiņojums. Tātad nākamais solis ir pievienot atsauci java projektā, iekļaujot šādu informāciju maven build tipa projekta failā pom.xml.

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

Kad JDK atsauce ir pievienota projektam, nākamais svarīgais solis ir izveidot bezmaksas kontu, izmantojot Aspose Cloud Dashboard. Vienkārši reģistrējieties bezmaksas izmēģinājuma versijai, izmantojot derīgu e-pasta adresi. Tagad piesakieties, izmantojot jaunizveidoto kontu, un vietnē Cloud Dashboard atrodiet/izveidojiet klienta ID un klienta noslēpumu. Šī informācija ir nepieciešama autentifikācijas nolūkos nākamajās sadaļās.

Pārvērtiet JPG uz PNG Java

Tagad apspriedīsim sīkāku informāciju par to, kā JPG konvertēt uz PNG, izmantojot Java koda fragmentu. Lai veiktu konvertēšanu, mums ir divas API, lai pārveidotu attēlu citā formātā:

GET API paredz, ka mēs vispirms augšupielādēsim attēlu pakalpojumā Cloud Storage un pēc tam nodosim tā nosaukumu API URL. Pēc attēla parametru atjaunināšanas API atbildē atgriež atjaunināto attēlu. Ja vēlaties saglabāt atjaunināto attēlu mākoņkrātuvē, jums tas ir jādara, kā parādīts tālāk norādītajos piemēros.

No otras puses, izsaucot otro POST API, varat tieši nosūtīt attēlu pieprasījuma pamattekstā. Tas arī ļauj saglabāt atjaunināto attēlu mākoņkrātuvē, norādot parametra OutPath vērtību. Tomēr, ja nenorādīsiet vērtību, atbilde satur straumētu attēlu.

  • Izveidojiet ImagingApi gadījumu, pamatojoties uz jūsu personalizētajiem klienta akreditācijas datiem
  • Lasiet visus JPG failus no vietējās mapes, izmantojot objektu File []
  • Atkārtojiet failus masīvā un sasniedziet atsevišķa attēla saturu baitu [] instancē
  • Tagad izveidojiet CreateConvertedImageRequest objektu, kur mēs norādām izvades attēla formātu kā PNG
  • Izsauciet metodi createConvertedImage(…), kas saglabā JPG kā PNG un atgriež rezultātu kā atbildes straumi.
  • Visbeidzot saglabājiet PNG failu vietējā diskdzinī, izmantojot FileOutputStream objektu
// Iegūstiet ClientID un ClientSecret no https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";

// izveidot attēlveidošanas objektu
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);

File directory = new File("/Users/");
//Iegūstiet visus failus no mapes
File[] allFiles = directory.listFiles();
if (allFiles == null || allFiles.length == 0) {
    throw new RuntimeException("No files present in the directory: " + directory.getAbsolutePath());
}

//Šeit iestatiet nepieciešamos attēlu paplašinājumus.
List<String> supportedImageExtensions = Arrays.asList("jpg","jpeg");

int counter =0;
//Filtrēts JPG attēlu failu saraksts
List<File> acceptedImages = new ArrayList<>();

// Atkārtojiet katru attēla failu, kas nolasīts no vietējās mapes			 
for (File file : allFiles) {
    //Parsējiet faila paplašinājumu
    String fileExtension = file.getName().substring(file.getName().lastIndexOf(".") + 1);
	
    //Pārbaudiet, vai paplašinājums ir iekļauts atbalstīto attēlu paplašinājumos
    if (supportedImageExtensions.stream().anyMatch(fileExtension::equalsIgnoreCase)) {
	//Pievienojiet attēlu filtrētajam sarakstam
	acceptedImages.add(file);
                  
    // lasīt JPG attēlu saturu
    byte[] bytes = Files.readAllBytes(acceptedImages.get(counter).toPath());
    
    // izveidot attēla konvertēšanas pieprasījumu ar iegūto formātu kā PNG
    CreateConvertedImageRequest request = new CreateConvertedImageRequest(bytes, "PNG", null, null);
    
    // konvertējiet JPG uz PNG un atgrieziet iegūto failu atbildes straumē
    byte[] exportedImage = imageApi.createConvertedImage(request);
    
    // Saglabājiet eksportēto attēlu vietējā krātuvē
    FileOutputStream fos = new FileOutputStream(directory + "/"+file.getName().replaceFirst("[.][^.]+$", "")+".png");
    fos.write(exportedImage);
    fos.close();
    }
}

Mainiet JPG uz PNG, izmantojot cURL komandas

Tā kā mēs varam piekļūt REST API, izmantojot komandas cURL, tāpēc šajā sadaļā mēs pētām sīkāku informāciju, lai JPG pārveidotu par PNG caurspīdīgu. Tagad kā priekšnoteikums mums vispirms ir jāģenerē JWT piekļuves marķieris (pamatojoties uz klienta akreditācijas datiem), vienlaikus izpildot šo komandu.

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"

Tagad mēs izmantosim ConvertImage API zvanu, un tas sagaida, ka ievades JPG jau būs pieejams mākoņa krātuvē. Tagad, lūdzu, izpildiet šo komandu, lai mainītu JPG uz PNG.

curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/image1.jpg/convert?format=PNG" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-o Converted.png

Secinājums

Šajā rakstā ir sniegta pārsteidzoša informācija par to, kā mēs varam pārveidot JPG uz PNG, izmantojot Java koda fragmentu. Tāpat mēs esam apsprieduši darbības, lai JPG pārveidotu par PNG caurspīdīgu, izmantojot cURL komandas. Lūdzu, ņemiet vērā, ka Produkta dokumentācija ir lieliska vieta, kur uzzināt par citām aizraujošām funkcijām, ko piedāvā API. Ja jums ir jāizmēģina šīs API pārlūkprogrammā, lūdzu, mēģiniet izmantot swagger API atsauci.

Priekšpēdējais, lūdzu, ņemiet vērā, ka visi mūsu mākoņa SDK ir publicēti saskaņā ar MIT licenci, tāpēc varat apsvērt iespēju lejupielādēt visu avota kodu no GitHub un pārveidot to atbilstoši savām prasībām. Visbeidzot, ja saskaraties ar problēmām, izmantojot API, varat vērsties pie mums, lai ātri atrisinātu to, izmantojot bezmaksas produktu atbalsta forumu.

Saistītie raksti

Lūdzu, apmeklējiet šīs saites, lai uzzinātu vairāk par: