Конвертація PS, EPS та XPS
API-рішення для конвертера PS, EPS та XPS для Java
Щоразу, коли виникає необхідність програмно конвертувати файли PostScript PS та Encapsulated PostScript EPS, а також документи XPS, Java API може зробити це плавно і конвертувати кілька файлів. Для PS та EPS API підтримує оператори PostScript рівнів 1-3 та більшість коментарів заголовка EPS, а також перетворює документи PostScript з максимальною відповідністю, за винятком кількох випадків зі шрифтами; API обробляє такі шрифти як Times New Roman.
Крім того, для перетворення файлів XPS API може додавати або видаляти сторінки, працювати з полотнами (canvases), контурами (paths) та елементами гліфів (glyphs), створювати форми векторної графіки та текстові рядки, конвертувати елементи структури XPS та багато іншого.
Представлене тут API-рішення для Java дозволяє програмно конвертувати файли таких форматів PDL, як PS, EPS та XPS, але вам може бути корисно побачити і спробувати кросплатформні інструменти, розроблені на цих нативних API.
Конвертація PostScript у PDF через Java.
Щоб конвертувати файли PostScript PS та Encapsulated PostScript EPS у PDF через Java API, вам необхідно виконати наступні кроки:
- Завантажте файл PS або EPS за допомогою класу PsDocument .
- Налаштуйте параметри збереження PDF за допомогою класу PdfSaveOptions .
- Використовуйте клас FileStream для вихідного PDF-файлу.
- Використовуйте клас PdfDevice , що має об’єкт FileOutputStream як параметр.
- Викличте PsDocument.Save для збереження файлу у форматі PDF.
Java-код для конвертації PS EPS у PDF
// The path to the documents directory.
String dataDir = Utils.getDataDir();
// Initialize PS document with PostScript file
PsDocument document = new PsDocument(dataDir + "input.ps");
// If you want to convert Postscript file despite of minor errors set this flag
boolean suppressErrors = true;
//Initialize options object with necessary parameters.
PdfSaveOptions options = new PdfSaveOptions(suppressErrors);
// Default page size is 595x842 and it is not mandatory to set it in PdfDevice
// But if you need to specify size and image format use following line
// PdfSaveOptions options = new PdfSaveOptions(suppressErrors, new Dimension(595, 842));
// If you want to add special folder where fonts are stored. Default fonts folder in OS is always included.
//options.setAdditionalFontsFolders(new String [] {"FONTS_FOLDER"});
// Save PS document to PDF file
document.saveAsPdf(dataDir + "PStoPDF.pdf", options);
//Review errors
if (suppressErrors) {
for (Exception ex : pdfOptions.getExceptions()) {
System.out.println(ex.getMessage());
}
}Конвертація PostScript у зображення через Java.
Для будь-якого додатка-конвертера PostScript EPS/PS у зображення наступний Java-код працює добре; виконайте наступні кроки:
- Ініціалізуйте вхідний потік вихідним файлом PS.
- Створіть об’єкт PsDocument зі створеним вхідним потоком PS як параметр
- Використовуйте ImageSaveOptions для вказівки AdditionalFontsFolder, SuppressError тощо.
- Використовуйте об’єкт ImageDevice для вказівки типу та розміру зображення, якщо це необхідно.
- Збережіть файл PS/EPS як зображення з параметрами збереження зображення у вигляді масиву масивів байтів. Один масив байтів для однієї сторінки вхідного файлу.
Java-код для конвертації PostScript у зображення
// The path to the documents directory.
String dataDir = Utils.getDataDir();
// Initialize PS document with PostScript file
PsDocument document = new PsDocument(dataDir + "input.ps");
// If you want to convert Postscript file despite of minor errors set this flag
boolean suppressErrors = true;
// Initialize options object with necessary parameters.
ImageSaveOptions options = new ImageSaveOptions(suppressErrors);
// Default image format is PNG and it is not mandatory to set it in ImageSaveOptions.
// But if you need to specify another format use following line
// options.setImageFormat(ImageFormat.JPEG);
// Default image size is 595x842 and it is not mandatory to set it in ImageDevice
// But if you need to specify size and image format use constructor with parameters
// ImageSaveOptions options = new ImageSaveOptions(new Dimension(595, 842), ImageFormat.JPEG, suppressErrors);
// If you want to add special folder where fonts are stored. Default fonts folder in OS is always included.
// options.setAdditionalFontsFolders(new String [] {"FONTS_FOLDER"});
// Save PS document as images bytes arrays, one bytes array for one page of the document.
byte[][] imagesBytes = document.saveAsImage(options);
int i = 0;
for (byte [] imageBytes : imagesBytes) {
String imagePath = dataDir + "PSToImage" + i + "." + options.getImageFormat().toString().toLowerCase();
FileOutputStream fs = new FileOutputStream(imagePath);
try {
fs.write(imageBytes, 0, imageBytes.length);
} catch (IOException ex) {
System.out.println(ex.getMessage());
} finally {
fs.close();
}
i++;
}
//Review errors
if (suppressErrors) {
for (Exception ex : options.getExceptions()) {
System.out.println(ex.getMessage());
}
}Конвертуйте XPS у зображення JPG, PNG, BMP через Java.
Java API працює з форматом XPS, який використовується для представлення макета сторінки. У будь-якому сценарії, коли виникає необхідність програмно конвертувати XPS у зображення BMP, JPG, PNG та TIFF, наступний код може бути легко інтегрований у Java-додаток.
- Використовуйте клас XpsDocument для завантаження XPS-документа.
- Використовуйте відповідний клас параметрів зображення, такий як PngSaveOptions , JpegSaveOptions , BmpSaveOptions , TiffSaveOptions для додаткових налаштувань зображення.
- Створіть екземпляр класу image device .
- Викличте XpsDocument.save для збереження конвертованого зображення JPEG в об’єкт ImageDevice, а потім використовуйте ImageDevice для збереження зображення у форматі JPG.
Java-код для конвертації XPS у зображення
// The path to the documents directory.
String pathDir = Utils.getDataDir();
// Load XPS document
XpsDocument document = new XpsDocument(dataDir + "input.xps");
// Initialize options object with necessary parameters.
com.aspose.xps.rendering.PngSaveOptions options = new com.aspose.xps.rendering.PngSaveOptions();
options.setSmoothingMode(com.aspose.xps.rendering.SmoothingMode.HighQuality);
options.setResolution(300);
options.setPageNumbers(new int[] { 1, 2, 6 });
// Save XPS document as images bytes array. One bytes array for one page of every parttion in the document
byte [][][] imagesBytes = document.saveAsImage(options);
// Iterate through document partitions (fixed documents, in XPS terms)
for (int i = 0; i < imagesBytes.length; i++) {
// Iterate through partition pages
for (int j = 0; j < imagesBytes[i].length; j++) {
// Initialize image output stream
FileOutputStream imageStream = new FileOutputStream(dataDir + "XPStoPNG" + "_" + (i + 1) + "_" + (j + 1) + ".png");
// Write image
imageStream.write(imagesBytes[i][j], 0, imagesBytes[i][j].length);
imageStream.close();
}
}FAQ
1. Чи можу я конвертувати Postscript за допомогою цього рішення API?
Aspose.Page має функціональність, яка дозволяє конвертувати файли PS, XPS і EPS в інші формати онлайн або програмно. Якщо вам потрібно миттєво перетворити ваші файли онлайн, ви можете скористатися Кросплатформною програмою Конвертер файлів формату мови опису сторінки .
2. Які мови опису сторінки підтримує конвертер?
Ця функціяональність конвертації підтримує файли з розширеннями .ps, .eps і .xps. Такі відомі PDL, як PDF і SVG, представлені як окремі рішення в Aspose.products
3. Чи безкоштовна ця функціональність?
Кросплатформні конвертери безкоштовні, тоді як для рішення API ви можете отримати безкоштовну пробну версію, а потім придбати продукт, якщо це необхідно.
Конвертуйте XPS у PDF через Java.
Процес програмної конвертації документів XPS у PDF простий і забезпечує високу точність відповідності між вхідними та вихідними файлами.
- Завантажте файл за допомогою класу XpsDocument. Ініціалізуйте об’єкт класу PdfSaveOptions .
- Створіть об’єкт PdfDevice для рендерингу і, нарешті, збережіть вихідний PDF-документ.
Java-код для конвертації XPS у PDF
// Load input XPS document
XpsDocument document = new XpsDocument(dataDir + "input.xps");
// Initialize options object with necessary parameters
PdfSaveOptions options = new PdfSaveOptions();
options.setJpegQualityLevel(100);
options.setImageCompression(PdfImageCompression.Jpeg);
options.setTextCompression(PdfTextCompression.Flate);
// Save XPS document to output PDF file
document.saveAsPdf(dataDir + "XPStoPDF.pdf", options);Support and Learning Resources
- Навчальні ресурси
- Документація
- Вихідний код
- Посилання на API
- Підтримка продукту
- Безкоштовна підтримка
- Платна підтримка
- Блог
- Release Notes
- Чому Aspose.Page для Java?
- Список клієнтів
- Історії успіху