Extraire les images TIFF

Le format de fichier d’image de balise, abrégé TIFF ou TIF, est un format de fichier informatique pour le stockage d’images graphiques matricielles, populaire parmi les graphistes, l’industrie de l’édition et les photographes. TIFF est différent de JPEG, GIF et PNG car il s’agit d’un format « non compressé ». Les fichiers TIFF ont la capacité de stocker plusieurs images, chacune ayant plusieurs canaux. En général, ces images multiples représentent les trames séquentielles dans une pile temporelle ou une pile z d’images, et donc chacune de ces images a la même dimension.

Les autres options disponibles dans TIFF sont les calques et les pages où le calque peut être comparé à la transparence sur laquelle les effets d’imagerie ou les images sont appliqués et placés au-dessus ou au-dessous d’une image. Comme le montre l’image ci-dessous, l’image affiche plusieurs calques. Dans cet article, nous allons discuter des étapes à suivre pour extraire des trames à partir d’images TIFF multi-trames à l’aide de Aspose.Imaging Cloud SDK for .NET.

Image TIFF avec cadres

Installation du SDK

Aspose.Imaging Cloud SDK for .NET est un SDK de programmation développé sur l’API Aspose.Imaging Cloud et qui fournit toutes les fonctionnalités de manipulation d’images aux développeurs .NET. La première étape consiste donc à installer le SDK, disponible en téléchargement sur NuGet et GitHub. Exécutez la commande suivante pour installer le SDK à partir de la bibliothèque NuGet.

Install-Package Aspose.Imaging-Cloud

Vous pouvez également ajouter le package à l’aide du gestionnaire de packages NuGet dans Visual Studio, comme indiqué ci-dessous. Vous pouvez envisager de visiter le lien suivant pour plus de détails sur Comment installer les SDK Aspose.Cloud.

Kit de développement logiciel (SDK) Aspose.Imaging Cloud

Pour utiliser le SDK, l’étape suivante consiste à obtenir vos informations personnalisées ClientID et ClientSecret. Par conséquent, la première étape consiste à créer un compte en visitant tableau de bord Aspose.Cloud. Si vous avez un compte GitHub ou Google, inscrivez-vous simplement. Sinon, cliquez sur le bouton Créer un nouveau compte et fournissez les informations requises. Connectez-vous maintenant au tableau de bord à l’aide des informations d’identification et développez la section Applications du tableau de bord et faites défiler vers le bas jusqu’à la section Informations d’identification du client pour voir les détails de l’ID client et du secret client.

Aperçu de ClientID et ClientSecret

Extraire les images TIFF à l’aide de la commande cURL

Tout d’abord, nous allons discuter de l’extraction de trames TIFF à l’aide de la commande cURL, car elles constituent l’un des moyens les plus pratiques d’accéder aux API REST sur n’importe quelle plate-forme. Indépendamment de la plate-forme et des complexités architecturales sous-jacentes. Ainsi, pour utiliser les commandes cURL, la première étape consiste à générer un jeton Web JSON (JWT) en fonction de vos informations ClientID et ClientSecret récupérées à partir du tableau de bord Aspose.Cloud. Veuillez exécuter la commande suivante dans le terminal pour générer le jeton JWT

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=718e4235-8866-4ebe-bff4-f5a14a4b6466&client_secret=388e864b819d8b067a8b1cb625a2ea8e" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Avant de continuer, veuillez noter que le cadre peut être extrait à l’aide de l’une des deux API suivantes :

La première API s’attend à ce que vous téléchargiez d’abord une image sur Cloud Storage, puis que vous transmettiez son nom dans l’URL de l’API. Après avoir mis à jour les paramètres de l’image, l’API renvoie l’image mise à jour dans la réponse.

D’autre part, avec la deuxième API, vous pouvez passer directement l’image dans le corps de la requête. Elle vous permet également d’enregistrer l’image mise à jour sur le Cloud Storage en spécifiant la valeur du paramètre outPath. Cependant, si vous ne spécifiez pas la valeur, la réponse contient une image diffusée en continu.

Utilisez maintenant la commande suivante pour extraire la 4ème image de l’image TiffSampleImage.tiff déjà téléchargée sur le stockage cloud.

curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/TiffSampleImage.tiff/frames/4?saveOtherFrames=true" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-o myresultant.tiff

Comment extraire des images TIFF en C#

Dans cette section, nous allons extraire la trame TIFF à l’aide de C# .NET. Veuillez suivre les étapes ci-dessous

  • La première étape consiste à créer un objet de ImagingApi tout en fournissant ClientID et ClientSecret comme arguments
  • Créer un objet chaîne définissant l’image TIFF d’entrée
  • Afin de spécifier la trame à extraire, créez un entier
  • Créer des objets entiers pour spécifier les dimensions du cadre extrait
  • L’étape suivante consiste à créer un objet GetImageFrameRequest qui prend en entrée le nom TIFF, l’ID de trame et d’autres paramètres liés aux dimensions de trame extraites comme arguments
  • Avant-dernier, appelez la méthode GetImageFrame(..) de ImagingApi qui prend l’objet GetImageFrameRequest comme argument d’entrée
  • Enfin, enregistrez la sortie pour charger le lecteur
string clientID = "718e4235-8866-4ebe-bff4-f5a14a4b6466"; // Get ClientID from https://dashboard.aspose.cloud/
string clientSecret = "388e864b819d8b067a8b1cb625a2ea8e"; // Get CLientSecret from https://dashboard.aspose.cloud/

// créer une instance de ImagingApi
Aspose.Imaging.Cloud.Sdk.Api.ImagingApi imagingApi = new ImagingApi(clientSecret, clientID,"https://api.aspose.cloud/","v3.0",false);

// image TIFF d'entrée disponible sur le stockage Cloud
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";

// Le résultat inclura uniquement le cadre spécifié
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);

// Enregistrer l'image mise à jour sur le stockage local
using (var fileStream = File.Create("/Users/nayyershahbaz/Downloads/MyResultant.tiff"))
{
    imageFrame.Seek(0, SeekOrigin.Begin);
    imageFrame.CopyTo(fileStream);
}

Veuillez noter que la propriété rotateFlipMethod peut avoir l’une des valeurs suivantes

Méthode RotateFlip (Rotate180FlipNone, Rotate180FlipX, Rotate180FlipXY, Rotate180FlipY, Rotate270FlipNone, Rotate270FlipX, Rotate270FlipXY, Rotate270FlipY, Rotate90FlipNone, Rotate90FlipX, Rotate90FlipXY, Rotate90FlipY, RotateNoneFlipNone, RotateNoneFlipX, RotateNoneFlipXY, RotateNoneFlipY).La valeur par défaut est RotateNoneFlipNone.

Conclusion

L’extraction d’images TIFF à partir d’un TIFF multi-images a été expliquée dans l’article ci-dessus. Outre l’extraction d’images, l’API vous permet de redimensionner les images TIFF, obtenir les propriétés d’une image TIFF, rogner une image TIFF, faire pivoter et retourner une image TIFF, etc. Si vous rencontrez des problèmes lors de l’utilisation de l’API, n’hésitez pas à nous contacter via un forum d’assistance gratuit.

Nous vous suggérons également de parcourir les liens suivants pour plus d’informations sur