Формат TIFF(Tag Image File Format) широко використовується в публікаціях, графічному дизайні та фотографії завдяки своїй здатності зберігати високоякісну растрову графіку. На відміну від JPEG або PNG, файл TIFF може містити кілька зображень або кадрів в одному файлі. Ці багатокадрові зображення TIFF часто використовуються в медичній візуалізації, сканованих документах та шарових дизайнах.
API обробки зображень
Aspose.Imaging Cloud SDK for .NET є чудовим API, заснованим на архітектурі REST, який пропонує можливості маніпулювати та обробляти зображення онлайн. Він пропонує простий і зручний підхід для витягування кадру tiff з багатокадрового TIFF зображення в коді C# .NET. SDK доступний для завантаження з NuGet та GitHub. Тепер встановіть REST API, щоб почати маніпулювати TIFF та іншими форматами зображень.
Install-Package Aspose.Imaging-Cloud
Отримайте свій Client ID та Client Secret з Aspose Cloud dashboard.
Витягнення кадрів TIFF за допомогою C#
Цей розділ пояснює деталі того, як ми можемо легко витягувати TIFF кадри, використовуючи C# .NET.
- По-перше, створіть об’єкт ImagingApi, надавши ClientID та ClientSecret як аргументи.
- По-друге, створіть об’єкт GetImageFrameRequest, який приймає на вхід назву TIFF, frameID та інші параметри як аргументи.
- Тепер викличте GetImageFrame(..) метод ImagingApi, де ми передаємо об’єкт
GetImageFrameRequest
як вхідний аргумент. - Нарешті, збережіть витягнуте зображення.
// Отримайте ClientID та ClientSecter з https://dashboard.aspose.cloud/
string clientID = "XXXXX-XXXXXXXXXX-bff4-f5a14a4b6466";
string clientSecret = "XXXXXXXXXX";
// створити екземпляр ImagingApi
ImagingApi imagingApi = new ImagingApi(clientSecret, clientID,"https://api.aspose.cloud/","v3.0",false);
// вхідне зображення TIFF доступно у хмарному сховищі
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";
// Результат включатиме лише зазначену рамку
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);
// Зберегти оновлене зображення в локальному сховищі
using (var fileStream = File.Create("/Users/nayyer/Downloads/MyResultant.tiff"))
{
imageFrame.Seek(0, SeekOrigin.Begin);
imageFrame.CopyTo(fileStream);
}
Ми можемо надати будь-яке з значень для властивості rotateFlipMethod.
RotateFlip метод (Rotate180FlipNone, Rotate180FlipX, Rotate180FlipXY, Rotate180FlipY, Rotate270FlipNone, Rotate270FlipX, Rotate270FlipXY, Rotate270FlipY, Rotate90FlipNone, Rotate90FlipX, Rotate90FlipXY, Rotate90FlipY, RotateNoneFlipNone, RotateNoneFlipX, RotateNoneFlipXY, RotateNoneFlipY).За замовчуванням використовується RotateNoneFlipNone.
Отримати TIFF-кадри за допомогою cURL
Альтернативно, ми також можемо використовувати команди cURL для виконання цієї операції. Ви можете розглянути можливість використання будь-якого з наведених нижче API викликів для виконання цієї операції.
- GET /imaging/{name}/frames/{frameId} - Завантажити зображення з хмарного сховища та отримати зображення у відповіді.
- POST /imaging/frames/{frameId} - Передайте TIFF в тілі запиту та отримайте результативне зображення у відповіді.
Першим кроком є створення JSON Web Token (JWT) на основі вашого ClientID та ClientSecret. Тому виконайте наступну команду в терміналі, щоб згенерувати 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"
Тепер виконайте наступну команду, щоб витягти 2-й кадр з TiffSampleImage.tiff зображення, яке вже завантажено на хмарне сховище.
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
Висновок
Можливість витягувати окремі кадри з багатокадрових TIFF зображень є цінною при роботі з відсканованими багатосторінковими документами, багатошаровими файлами з зображеннями або наборами даних медичної візуалізації. З Aspose.Imaging Cloud SDK для .NET ви можете легко автоматизувати цей процес, використовуючи або REST API виклики, або код C#.
Рекомендовані статті
Ми рекомендуємо вам відвідати наступні посилання, щоб дізнатися про: