Обрізати EPS за допомогою Java API Solution
Огляд
У цій статті пояснюється, як обрізати EPS за допомогою Java. Він охоплює наступні теми.
Java Crop EPS Опис
Кадрування зображення — це операція, яка змінює одне з або кількох полів зображення: ліве, праве, верхнє та нижнє. Іншими словами, він вирізає вміст зображення з країв. Таким чином, розмір результуючого зображення EPS завжди буде меншим за вихідний. Обсяг файлу не буде змінено, оскільки наше рішення не працює з вмістом, але працює із заголовком файлу EPS. Поля зображення EPS визначаються метаданими BoundingBox. Щоб обрізати або, іншими словами, встановити нову рамку обмежування, ми повинні знати існуючу рамку обмеження зображення EPS. В іншому випадку ми можемо призначити значення нової обмежувальної рамки за межами існуючої обмежувальної рамки, що призведе до помилки. Отже, кроки для кадрування зображення EPS у Java такі:
- Ініціалізуйте об’єкт PsDocument вхідним потоком, що містить файл EPS.
- Витягніть існуючу обмежувальну рамку зображення за допомогою статичного методу extractEpsBoundingBox.
- Створіть вихідний потік для кінцевого файлу EPS.
- Створіть нову обмежувальну рамку.
- Обріжте об’єкт PsDocument новою обмежувальною рамкою за допомогою статичного методу cropEps.
Ви можете перевірити якість Aspose.Page EPS Crop і переглянути результати в безкоштовному онлайн-режимі Crop EPS і переглянути отриманий файл EPS за допомогою нашої веб-програми EPS Viewer.
Обрізати EPS в Java
У наступному фрагменті коду Java ми отримуємо існуючу обмежувальну рамку зображення та кадрування EPS:
1// Повні приклади і файли даних див https://github.com/aspose-page/Aspose.Page-for-Java
2
3// The path to the documents directory.
4String dataDir = getDataDir();
5
6//Create an input stream for EPS file
7FileInputStream inputEpsStream = new FileInputStream(dataDir + "input.eps");
8
9//Initialize PsDocument object with input stream
10PsDocument doc = new PsDocument(inputEpsStream);
11
12//Get initial bounding box of EPS image
13int [] initialBoundingBox = doc.extractEpsBoundingBox();
14
15//Create output stream for PostScript document
16FileOutputStream outputEpsStream = new FileOutputStream(dataDir + "output_crop.eps");
17
18//Create new bounding box
19//Bounding box is represented by 4 numbers: x0, y0, x, y, where x0 - left margin, y0 - top margin, x - (x0 + width), y - (y0 + height)
20float[] newBoundingBox = new float[] { 260, 300, 480, 432 };
21
22//Crop EPS image and save to the output stream
23//Croping of image is changing of its bounding box so that new values of bounding box will be within initial bounding box, that is
24//initialBoundingBox[0] <= newBoundingBox[0] <= initialBoundingBox[2]
25//initialBoundingBox[1] <= newBoundingBox[1] <= initialBoundingBox[3]
26//initialBoundingBox[0] <= newBoundingBox[2] <= initialBoundingBox[2]
27//initialBoundingBox[1] <= newBoundingBox[3] <= initialBoundingBox[3]
28doc.cropEps(outputEpsStream, newBoundingBox);
Див. Обрізку EPS в .NET і C++.
Початкове зображення
Обрізане зображення
Оцініть кадрування EPS онлайн в нашому веб-додатку Crop EPS. Ви можете обрізати файл EPS і завантажити результат за кілька секунд.
Ви можете завантажити приклади та файли даних із GitHub.