Формат XPS (XML Paper Specifications) был представлен Microsoft и используется для представления макета страницы. Он использует теги XML для представления внешнего вида страниц и состава документа. В различных сценариях может потребоваться преобразовать документы XPS в другие форматы документов. В соответствии с этим в этой статье вы узнаете о программном преобразовании документов XPS в форматы растровых изображений. В частности, в статье будет рассказано, как преобразовать XPS в BMP, JPEG, PNG и TIFF с помощью Java.

API конвертера XPS в изображения — скачать бесплатно

Aspose.Page for Java предназначен для работы с документами PS, EPS и XPS из приложений Java. Встроенный конвертер API позволяет выполнять высококачественное преобразование XPS в форматы растровых изображений, включая изображения PNG, JPEG, BMP и TIFF. Вы можете либо скачать JAR-файл API, либо установить его в свои приложения на основе Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-page</artifactId>
    <version>20.11</version>
</dependency>

Преобразование XPS в растровые изображения в Java

Aspose.Page для Java предоставляет отдельные классы для настройки преобразования XPS в растровое изображение. Например, вы можете установить разрешение выходного изображения, указать страницы, которые хотите конвертировать, и так далее. Ниже приведен список классов, которые вы можете использовать соответственно.

Преобразование XPS в PNG в Java

Ниже приведены шаги для преобразования документов XPS в изображения PNG с использованием Aspose.XPS для Java.

  • Загрузите документ XPS с помощью класса XpsDocument.
  • Создайте экземпляр класса PngSaveOptions, чтобы установить дополнительные параметры.
  • Создайте экземпляр класса ImageDevice.
  • Используйте XpsDocument.save(ImageDevice, PngSaveOptions), чтобы сохранить преобразованное изображение PNG в объект ImageDevice.
  • Используйте ImageDevice, чтобы сохранить изображение в формате PNG.

В следующем примере кода показано, как преобразовать XPS в PNG с помощью Java.

// Полные примеры и файлы данных см. на странице https://github.com/aspose-page/Aspose.Page-for-Java.
// Путь к каталогу документов.
String dataDir = Utils.getDataDir();
// Загрузить XPS-документ
XpsDocument document = new XpsDocument(dataDir + "input.xps");
// Инициализируйте объект опций с необходимыми параметрами.
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 });

// Создать устройство рендеринга для формата PDF
com.aspose.xps.rendering.ImageDevice device = new com.aspose.xps.rendering.ImageDevice();

document.save(device, options);

// Итерация по разделам документа (фиксированные документы в терминах XPS)
for (int i = 0; i < device.getResult().length; i++) {
    // Итерация страниц разделов
    for (int j = 0; j < device.getResult()[i].length; j++) {
        // Инициализировать поток вывода изображения
        FileOutputStream imageStream = new FileOutputStream(dataDir + "XPStoPNG" + "_" + (i + 1) + "_" + (j + 1) + ".png");
        // Написать изображение
        imageStream.write(device.getResult()[i][j], 0, device.getResult()[i][j].length);
    }
}

Преобразование XPS в JPEG в Java

Ниже приведены шаги для преобразования XPS в JPEG с использованием Aspose.Page для Java.

  • Загрузите документ XPS с помощью класса XpsDocument.
  • Используйте класс JpegSaveOptions, чтобы установить дополнительные параметры для преобразованного изображения JPEG.
  • Создайте экземпляр класса ImageDevice.
  • Используйте XpsDocument.save(ImageDevice, JpegSaveOptions), чтобы сохранить преобразованное изображение JPEG в объект ImageDevice.
  • Используйте ImageDevice, чтобы сохранить изображение в виде файла JPEG.

В следующем примере кода показано, как преобразовать XPS в JPEG.

// Полные примеры и файлы данных см. на странице https://github.com/aspose-page/Aspose.Page-for-Java.
// Путь к каталогу документов.
String dataDir = Utils.getDataDir();
// Инициализировать входной поток XPS

// Загрузить документ XPS из потока
XpsDocument document = new XpsDocument(dataDir + "input.xps");

// Инициализируйте объект опций с необходимыми параметрами.
com.aspose.xps.rendering.JpegSaveOptions options = new com.aspose.xps.rendering.JpegSaveOptions();
options.setSmoothingMode(com.aspose.xps.rendering.SmoothingMode.HighQuality);
options.setResolution(300);
options.setPageNumbers(new int[] { 1, 2, 6 });

// Создать устройство рендеринга для формата PDF
com.aspose.xps.rendering.ImageDevice device = new com.aspose.xps.rendering.ImageDevice();

document.save(device, options);

// Итерация по разделам документа (фиксированные документы в терминах XPS)
for (int i = 0; i < device.getResult().length; i++) {
    // Итерация страниц разделов
    for (int j = 0; j < device.getResult()[i].length; j++) {
        // Инициализировать поток вывода изображения
        FileOutputStream imageStream = new FileOutputStream(dataDir + "XPStoJPEG" + "_" + (i + 1) + "_" + (j + 1) + ".jpeg");
        // Написать изображение
        imageStream.write(device.getResult()[i][j], 0, device.getResult()[i][j].length);
    }
}

Конвертировать XPS в BMP на Java

Вы можете преобразовать файлы XPS в изображения BMP так же, как вы сделали для PNG и JPEG. Ниже приведены шаги для этого.

  • Используйте класс XpsDocument для загрузки документа XPS.
  • Создайте экземпляр класса BmpSaveOptions, чтобы установить дополнительные параметры для преобразованного изображения BMP.
  • Используйте метод XpsDocument.save(ImageDevice, BmpSaveOptions), чтобы сохранить преобразованное изображение BMP в объект ImageDevice.
  • Используйте ImageDevice, чтобы сохранить изображение в виде файла BMP.

В следующем примере кода показано, как преобразовать файл XPS в BMP.

// Полные примеры и файлы данных см. на странице https://github.com/aspose-page/Aspose.Page-for-Java.
// Путь к каталогу документов.
String dataDir = Utils.getDataDir();
// Загрузить XPS-документ
XpsDocument document = new XpsDocument(dataDir + "input.xps");
// Инициализируйте объект опций с необходимыми параметрами.
com.aspose.xps.rendering.BmpSaveOptions options = new com.aspose.xps.rendering.BmpSaveOptions();
options.setSmoothingMode(com.aspose.xps.rendering.SmoothingMode.HighQuality);
options.setResolution(300);
options.setPageNumbers(new int[]{1, 2, 6});

// Создать устройство рендеринга для формата PDF
com.aspose.xps.rendering.ImageDevice device = new com.aspose.xps.rendering.ImageDevice();

document.save(device, options);

// Итерация по разделам документа (фиксированные документы в терминах XPS)
for (int i = 0; i < device.getResult().length; i++) {
    // Итерация страниц разделов
    for (int j = 0; j < device.getResult()[i].length; j++) {
        // Инициализировать поток вывода изображения
        FileOutputStream imageStream = new FileOutputStream(dataDir + "XPStoBMP" + "_" + (i + 1) + "_" + (j + 1) + ".bmp");
        // Написать изображение
        imageStream.write(device.getResult()[i][j], 0, device.getResult()[i][j].length);
    }
}

Преобразование XPS в TIFF на Java

Ниже приведены шаги для преобразования документа XPS в изображение TIFF.

  • Используйте класс XpsDocument для загрузки документа XPS.
  • Создайте экземпляр класса TiffSaveOptions, чтобы установить дополнительные параметры для преобразованного изображения TIFF.
  • Используйте метод XpsDocument.save(ImageDevice, TiffSaveOptions), чтобы сохранить преобразованное изображение TIFF в объект ImageDevice.
  • Используйте ImageDevice, чтобы сохранить изображение в виде файла TIFF.

В следующем примере кода показано, как преобразовать документ XPS в изображение TIFF в Java.

// Полные примеры и файлы данных см. на странице https://github.com/aspose-page/Aspose.Page-for-Java.
// Путь к каталогу документов.
String dataDir = Utils.getDataDir();
// Загрузить XPS-документ
XpsDocument document = new XpsDocument(dataDir + "input.xps");
// Инициализируйте объект опций с необходимыми параметрами.
com.aspose.xps.rendering.TiffSaveOptions options = new com.aspose.xps.rendering.TiffSaveOptions();
options.setSmoothingMode(com.aspose.xps.rendering.SmoothingMode.HighQuality);
options.setResolution(300);
options.setPageNumbers(new int[] { 1, 2, 6 });

// Создать устройство рендеринга для формата PDF
com.aspose.xps.rendering.ImageDevice device = new com.aspose.xps.rendering.ImageDevice();

document.save(device, options);

// Итерация по разделам документа (фиксированные документы в терминах XPS)
for (int i = 0; i < device.getResult().length; i++) {
    // Итерация страниц разделов
    for (int j = 0; j < device.getResult()[i].length; j++) {
        // Инициализировать поток вывода изображения
        FileOutputStream imageStream = new FileOutputStream(dataDir + "XPStoTIFF" + "_" + (i + 1) + "_" + (j + 1) + ".tif");
        // Написать изображение
        imageStream.write(device.getResult()[i][j], 0, device.getResult()[i][j].length);
    }
}

Вывод

В этой статье вы узнали, как преобразовать файлы XPS в форматы растровых изображений с помощью Java. В пошаговом руководстве, справочниках по API и примерах кода показано, как преобразовывать XPS в изображения PNG, JPEG, TIFF и BMP. Вы можете изучить другие функции Java XPS API, используя документацию.

Смотрите также