ako extrahovať obrázok tiff

Ako extrahovať obrázky zo súborov TIFF

TIFF z TIF je skratka pre Tag Image File Format a patrí medzi obľúbené rastrové grafické obrázky, ktoré často používajú grafici, vydavateľský priemysel a fotografi. TIFF sa líši od JPEG, GIF a PNG, pretože ide o „nekomprimovaný“ formát a dokáže uložiť oveľa viac obrazových údajov ako ich náprotivky JPEG. Teraz je jednou z prominentných vlastností súborov TIFF jeho schopnosť ukladať viacero obrázkov (každý má viacero kanálov) ako sekvenčné snímky v časovom alebo z-zásobníku obrázkov. V tomto článku teda preskúmame podrobnosti o tom, ako extrahovať snímky z obrázkov TIFF s viacerými snímkami pomocou Java Cloud SDK.

API na spracovanie obrazu TIFF

Vytvorili sme rozhranie API na spracovanie obrázkov, ktoré ponúka možnosti úpravy, manipulácie a transformácie rastra, metasúborov, photoshopu a iných podporovaných formátov do rôznych formátov súborov. Keď už hovoríme o manipulácii s obrázkami TIFF, API je veľmi schopné spracovať obrázky TIFF. Takže podľa rozsahu tohto článku budeme používať Aspose.Imaging Cloud SDK for Java, čo je obal okolo REST API. Prvým krokom pri využívaní jeho schopností je teda pridanie jeho referencie do projektu java zahrnutím nasledujúcich informácií do pom.xml (projekt typu zostavy maven).

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

Ďalším krokom je získanie podrobností o prihlasovacích údajoch klienta z Cloud Dashboard a ak nemáte účet cez Aspose Cloud Dashboard, vytvorte si bezplatný účet prostredníctvom platnej e-mailovej adresy. Teraz sa prihláste pomocou novo vytvoreného účtu a vyhľadajte/vytvorte ID klienta a tajný kľúč klienta na paneli Aspose Cloud Dashboard.

Ako extrahovať obrázok TIFF v jazyku Java

Poďme preskúmať podrobnosti o tom, ako extrahovať obrázky zo súborov tiff pomocou útržku kódu Java. Upozorňujeme, že rozhranie API vám tiež umožňuje zmeniť veľkosť, orezať a otáčať. Okrem toho jeden z boolovských parametrov saveOtherFrames vám umožňuje určiť, či výsledok bude zahŕňať všetky ostatné snímky alebo len konkrétny rámec.

  • Najprv vytvorte objekt ImagingApi na základe personalizovaných poverení klienta
  • Po druhé, prečítajte si obsah prvého obrázka TIFF pomocou metódy readAllBytes(…) a prejdite do poľa byte[]
  • Po tretie, vytvorte inštanciu triedy UploadFileRequest, kde zadáme názov TIFF cez cloudové úložisko
  • Teraz nahrajte prvý obrázok TIFF do cloudového úložiska pomocou metódy uploadFile(…).
  • Ďalším krokom je špecifikovať index TIFF rámca, výšku a šírku extrahovaného rámca, pôvod extrakcie a určiť, či chcete extrahovaný rám v konkrétnom uhle
  • Teraz vytvorte objekt GetImageFrameRequest, kde špecifikujeme vstupný TIFF obrázok a vyššie definované vlastnosti
  • Ak chcete získať rámec TIFF, zavolajte metódu getImageFrame(…) ImagingAPI
  • Uložte extrahovaný rámec na lokálny disk pomocou objektu FileOutputStream
// Získajte ClientID a ClientSecret z https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";

// vytvoriť Imaging objekt
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);

// načítať prvý obrázok TIFF z lokálneho systému
File file1 = new File("DeskewSampleImage.tif");
byte[] imageStream = Files.readAllBytes(file1.toPath());
			
// vytvoriť objekt žiadosti o nahranie súboru
UploadFileRequest uploadRequest = new UploadFileRequest("input.tiff",imageStream,null);
// nahrajte prvý obrázok TIFF do cloudového úložiska
imageApi.uploadFile(uploadRequest);

Integer frameId = 0; // Frame number inside TIFF
// nová šírka a výška extrahovaného rámu
Integer newWidth = 1000;
Integer newHeight = 1400;

// pôvod na spustenie extrakcie rámca
Integer x = 10;
Integer y = 10;

// obdĺžniková oblasť na extrahovanie rámu
Integer rectWidth = 900;
Integer rectHeight = 800;

// zadajte uhol otočenia pre extrahovaný rám TIFF
String rotateFlipMethod = "Rotate90FlipY";
// Výsledkom bude zahrnutie iba špecifikovaného rámca, nie iných rámov
Boolean saveOtherFrames = false;

// Vytvorte objekt požiadavky na extrahovanie snímok tiff na základe špecifikovaných podrobností
GetImageFrameRequest getImageFrameRequest = new GetImageFrameRequest("input.tiff", frameId, newWidth, newHeight,
                    x, y, rectWidth, rectHeight, null, saveOtherFrames, null, null);

// extrahovaný rámec sa vráti v toku odpovedí
byte[] updatedImage = imageApi.getImageFrame(getImageFrameRequest);

// Uložte extrahovaný rámec TIFF na lokálnom úložisku
FileOutputStream fos = new FileOutputStream("/Users/s4/Documents/" + "Extracted-TIFF.tiff");
fos.write(updatedImage);
fos.close();
extrahovať tiff rám

Získajte ukážku snímok TIFF

Vzorové obrázky TIFF použité vo vyššie uvedenom príklade si môžete stiahnuť z DeskewSampleImage.tif.

Spracovanie obrázkov TIFF pomocou príkazov cURL

Ďalším pohodlným spôsobom prístupu k REST API je pomocou príkazov cURL. Keďže Aspose.Imaging Cloud je založený na architektúre REST, môžeme tiež extrahovať snímky tiff pomocou príkazov cURL. Predpokladom tejto aktivity je vygenerovanie prístupového tokenu JWT (na základe poverení klienta) pomocou nasledujúceho príkazu.

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"

Po vygenerovaní tokenu JWT musíme vykonať nasledujúci príkaz na extrahovanie snímky TIFF.

curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/first.tiff/frames/0?newWidth=1000&newHeight=1200&x=10&y=10&rectWidth=800&rectHeight=800&saveOtherFrames=false" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-o ExtractedFrame.tiff

Záver

V tomto bode sme sa naučili všetky potrebné podrobnosti o tom, ako extrahovať obrázky zo súborov tiff. Preskúmali sme možnosť extrahovať rámec TIFF pomocou útržku kódu Java Java alebo pomocou príkazov cURL. Ďalší prístup na testovanie sľubných funkcií API je cez SwaggerUI a v prípade, že chcete upraviť zdrojový kód SDK, môžete si ho stiahnuť z GitHub (všetky naše Cloud SDK sú vyvinuté pod MIT licencia).

Napriek tomu je Product Documentation úžasným zdrojom informácií, kde sa dozviete o ďalších zaujímavých funkciách, ktoré ponúka rozhranie API. Nakoniec, v prípade, že pri používaní rozhrania API narazíte na nejaké problémy, môžete zvážiť oslovenie nás so žiadosťou o rýchle riešenie prostredníctvom bezplatnej fórum podpory produktu.

Súvisiace články

Ak chcete získať viac informácií, navštívte nasledujúce odkazy: