Crop EPS | Рішення C# .NET API

Огляд

У цій статті пояснюється, як обрізати EPS за допомогою C#. Він охоплює наступні теми.

Опис C# Crop EPS

Кадрування зображення — це операція, яка змінює одне з або кількох полів зображення: ліве, праве, верхнє та нижнє. Іншими словами, він вирізає вміст зображення з країв. Таким чином, розмір результуючого зображення EPS завжди буде меншим за вихідний. Обсяг файлу не буде змінено, оскільки наше рішення не працює з вмістом, але працює із заголовком файлу EPS.

Поля зображення EPS визначаються метаданими BoundingBox. Щоб обрізати або, іншими словами, встановити нову рамку обмежування, ми повинні знати існуючу рамку обмеження зображення EPS. В іншому випадку ми можемо призначити значення нової обмежувальної рамки за межами існуючої обмежувальної рамки, що призведе до помилки. Отже, кроки для обрізання зображення EPS у C# такі:

  1. Ініціалізуйте об’єкт PsDocument вхідним потоком, що містить файл EPS.
  2. Витягніть існуючу обмежувальну рамку зображення за допомогою статичного методу ExtractEpsBoundingBox.
  3. Створіть вихідний потік для кінцевого файлу EPS.
  4. Створіть нову обмежувальну рамку.
  5. Обріжте об’єкт PsDocument новою обмежувальною рамкою за допомогою статичного методу CropEps.

Ви можете перевірити якість Aspose.Page EPS Crop і переглянути результати в безкоштовному онлайн-режимі Crop EPS і переглянути отриманий файл EPS за допомогою нашої веб-програми EPS Viewer.

Обрізати EPS у C#

У наведеному нижче фрагменті коду C# ми отримуємо існуючу обмежувальну рамку зображення та кадрування EPS:

 1// Повні приклади і файли даних див https://github.com/aspose-page/Aspose.Page-for-.NET
 2
 3// The path to the documents directory.
 4string dataDir = GetDataDir();
 5
 6//Initialize PsDocument object with EPS file
 7PsDocument doc = new PsDocument(dataDir + "input.eps");
 8
 9//Get initial bounding box of EPS image
10int [] initialBoundingBox = doc.ExtractEpsBoundingBox();
11
12//Create an output stream for resized EPS
13using (Stream outputEpsStream = new System.IO.FileStream(dataDir + "output_crop.eps", System.IO.FileMode.Create, System.IO.FileAccess.Write))
14{
15    //Create new bounding box
16    //Bounding box is represented by 4 numbers: x0, y0, x, y, where x0 - left margin, y0 - top margin, x - (x0 + width), y - (y0 + height)
17    float[] newBoundingBox = new float[] { 260, 300, 480, 432 };
18
19    //Crop EPS image and save to the output stream                    
20    //Croping of image is changing of its bounding box so that new values of bounding box will be within initial bounding box, that is
21    //initialBoundingBox[0] <= newBoundingBox[0] <= initialBoundingBox[2]
22    //initialBoundingBox[1] <= newBoundingBox[1] <= initialBoundingBox[3]
23    //initialBoundingBox[0] <= newBoundingBox[2] <= initialBoundingBox[2]
24    //initialBoundingBox[1] <= newBoundingBox[3] <= initialBoundingBox[3]
25    doc.CropEps(outputEpsStream, newBoundingBox);
26}

Див. Обрізку EPS в Java і C++.

Початкове зображення EPS
Початкове зображення
Обрізане зображення EPS
Обрізане зображення

Оцініть кадрування EPS онлайн в нашому веб-додатку Crop EPS. Ви можете обрізати файл EPS і завантажити результат за кілька секунд.

Ви можете завантажити приклади та файли даних із GitHub.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.