Il TIFF(Tag Image File Format) è ampiamente utilizzato nell’editoria, nel graphic design e nella fotografia grazie alla sua capacità di memorizzare grafica raster di alta qualità. A differenza di JPEG o PNG, un file TIFF può contenere più immagini o fotogrammi all’interno di un unico file. Queste immagini TIFF a più fotogrammi sono spesso utilizzate nell’imaging medico, nei documenti scansionati e nei design a livelli.
- API di Elaborazione Immagini
- Estrai fotogrammi TIFF utilizzando C#
- Ottieni frame TIFF utilizzando cURL
API di Elaborazione delle Immagini
Aspose.Imaging Cloud SDK for .NET è un’API straordinaria basata su architettura REST, che offre le capacità di manipolare e processare immagini online. Offre un approccio semplice e facile per estrarre frame TIFF da immagini TIFF a più frame all’interno di uno snippet di codice C# .NET. Il SDK è disponibile per il download da NuGet e GitHub. Ora, installa il REST API per iniziare a manipolare TIFF e altri formati immagine.
Install-Package Aspose.Imaging-Cloud
Ottieni il tuo Client ID e Client Secret dal Aspose Cloud dashboard.
Estrai fotogrammi TIFF utilizzando C#
Questa sezione spiega i dettagli su come possiamo facilmente estrarre un frame TIFF utilizzando C# .NET.
- Innanzitutto, crea un oggetto di ImagingApi fornendo ClientID e ClientSecret come argomenti.
- In secondo luogo, crea un oggetto di GetImageFrameRequest che prende come input il nome TIFF, frameID e altri parametri come argomenti.
- Ora, chiama GetImageFrame(..) metodo di ImagingApi dove passiamo l’oggetto
GetImageFrameRequest
come argomento di input. - Finalmente, salva l’immagine estratta.
// Obtain ClientID and ClientSecter from https://dashboard.aspose.cloud/
string clientID = "XXXXX-XXXXXXXXXX-bff4-f5a14a4b6466";
string clientSecret = "XXXXXXXXXX";
// crea un'istanza di ImagingApi
ImagingApi imagingApi = new ImagingApi(clientSecret, clientID,"https://api.aspose.cloud/","v3.0",false);
// input immagine TIFF disponibile su Cloud storage
String fileName = "TiffSampleImage.tiff";
int? frameId = 5; // Index of a frame
int? newWidth = 300;
int? newHeight = 450;
int? x = 10;
int? y = 10;
int? rectWidth = 200;
int? rectHeight = 300;
string rotateFlipMethod = "RotateNoneFlipNone";
// Il risultato includerà solo il frame specificato
bool? saveOtherFrames = false;
string folder = null; // Input file is saved at the root of the storage
string storage = null; // We are using default Cloud Storage
GetImageFrameRequest getImageFrameRequest = new GetImageFrameRequest(fileName, frameId, newWidth, newHeight,
x, y, rectWidth, rectHeight, rotateFlipMethod, saveOtherFrames, folder, storage);
Stream imageFrame = imagingApi.GetImageFrame(getImageFrameRequest);
// Salva l'immagine aggiornata nello spazio di archiviazione locale
using (var fileStream = File.Create("/Users/nayyer/Downloads/MyResultant.tiff"))
{
imageFrame.Seek(0, SeekOrigin.Begin);
imageFrame.CopyTo(fileStream);
}
Possiamo fornire uno qualsiasi dei valori alla proprietà rotateFlipMethod.
Metodo RotateFlip (Rotate180FlipNone, Rotate180FlipX, Rotate180FlipXY, Rotate180FlipY, Rotate270FlipNone, Rotate270FlipX, Rotate270FlipXY, Rotate270FlipY, Rotate90FlipNone, Rotate90FlipX, Rotate90FlipXY, Rotate90FlipY, RotateNoneFlipNone, RotateNoneFlipX, RotateNoneFlipXY, RotateNoneFlipY).Il valore predefinito è RotateNoneFlipNone.
Ottieni fotogrammi TIFF utilizzando cURL
In alternativa, possiamo anche utilizzare comandi cURL per eseguire questa operazione. Puoi considerare di utilizzare una delle seguenti chiamate API per eseguire questa operazione.
- GET /imaging/{name}/frames/{frameId} - Carica l’immagine dal cloud storage e ricevi l’immagine come risposta.
- POST /imaging/frames/{frameId} - Passa TIFF nel corpo della richiesta e ottieni l’immagine risultante nella risposta.
Il primo passo è generare un JSON Web Token (JWT) basato sul tuo ClientID e ClientSecret. Pertanto, esegui il seguente comando nel terminale per generare il token JWT:
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=XXXXXX-XXXXX-XXX-bff4-f5a14a4b6466&client_secret=XXXXXXXXXXX" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Ora, esegui il seguente comando per estrarre il 2° frame dall’ immagine TiffSampleImage.tiff già caricata nel cloud storage.
curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/TiffSampleImage.tiff/frames/2?saveOtherFrames=true" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-o myresultant.tiff
Conclusione
La possibilità di estrarre singoli fotogrammi da immagini TIFF a più fotogrammi è preziosa quando si lavora con documenti scansionati multipagina, file immagine a strati o set di dati di imaging medico. Con Aspose.Imaging Cloud SDK per .NET, puoi automatizzare facilmente questo processo, utilizzando sia chiamate API REST che codice C#.
Articoli Raccomandati
Ti consigliamo di visitare i seguenti link per conoscere: