Microsoft introdujo el formato XPS (Especificaciones de papel XML) que se utiliza para representar el diseño de página. Utiliza etiquetas XML para representar la apariencia de las páginas y la composición del documento. En varios escenarios, es posible que deba convertir documentos XPS a otros formatos de documentos. De acuerdo con eso, en este artículo, aprenderá sobre la conversión de documentos XPS a formatos de imagen ráster mediante programación. En particular, el artículo cubrirá cómo convertir XPS a BMP, JPEG, PNG y TIFF usando Java.

XPS to Image Converter API - Descarga gratuita

Aspose.Page for Java está diseñado para trabajar con documentos PS, EPS y XPS desde las aplicaciones Java. El conversor integrado de la API le permite realizar una conversión de alta calidad de XPS a formatos de imagen de trama, incluidas imágenes PNG, JPEG, BMP y TIFF. Puede descargar el JAR de la API o instalarlo dentro de sus aplicaciones basadas en 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>

Convierta XPS a imágenes ráster en Java

Aspose.Page for Java proporciona clases separadas para personalizar la conversión de XPS a imagen ráster. Por ejemplo, puede configurar la resolución de la imagen de salida, especificar las páginas que desea convertir, etc. La siguiente es la lista de las clases que puede utilizar en consecuencia.

Convertir XPS a PNG en Java

Los siguientes son los pasos para convertir los documentos XPS a imágenes PNG utilizando Aspose.XPS for Java.

El siguiente ejemplo de código muestra cómo convertir XPS a PNG usando Java.

// Para obtener ejemplos completos y archivos de datos, vaya a https://github.com/aspose-page/Aspose.Page-for-Java
// La ruta al directorio de documentos.
String dataDir = Utils.getDataDir();
// Cargar documento XPS
XpsDocument document = new XpsDocument(dataDir + "input.xps");
// Inicialice el objeto de opciones con los parámetros necesarios.
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 });

// Crear dispositivo de renderizado para formato PDF
com.aspose.xps.rendering.ImageDevice device = new com.aspose.xps.rendering.ImageDevice();

document.save(device, options);

// Iterar a través de particiones de documentos (documentos fijos, en términos de XPS)
for (int i = 0; i < device.getResult().length; i++) {
    // Iterar a través de páginas de partición
    for (int j = 0; j < device.getResult()[i].length; j++) {
        // Inicializar flujo de salida de imagen
        FileOutputStream imageStream = new FileOutputStream(dataDir + "XPStoPNG" + "_" + (i + 1) + "_" + (j + 1) + ".png");
        // Escribir imagen
        imageStream.write(device.getResult()[i][j], 0, device.getResult()[i][j].length);
    }
}

Convertir XPS a JPEG en Java

Los siguientes son los pasos para convertir XPS a JPEG usando Aspose.Page for Java.

El siguiente ejemplo de código muestra cómo convertir XPS a JPEG.

// Para obtener ejemplos completos y archivos de datos, vaya a https://github.com/aspose-page/Aspose.Page-for-Java
// La ruta al directorio de documentos.
String dataDir = Utils.getDataDir();
// Inicializar flujo de entrada XPS

// Cargue el documento XPS desde la secuencia
XpsDocument document = new XpsDocument(dataDir + "input.xps");

// Inicialice el objeto de opciones con los parámetros necesarios.
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 });

// Crear dispositivo de renderizado para formato PDF
com.aspose.xps.rendering.ImageDevice device = new com.aspose.xps.rendering.ImageDevice();

document.save(device, options);

// Iterar a través de particiones de documentos (documentos fijos, en términos de XPS)
for (int i = 0; i < device.getResult().length; i++) {
    // Iterar a través de páginas de partición
    for (int j = 0; j < device.getResult()[i].length; j++) {
        // Inicializar flujo de salida de imagen
        FileOutputStream imageStream = new FileOutputStream(dataDir + "XPStoJPEG" + "_" + (i + 1) + "_" + (j + 1) + ".jpeg");
        // Escribir imagen
        imageStream.write(device.getResult()[i][j], 0, device.getResult()[i][j].length);
    }
}

Convertir XPS a BMP en Java

Puede convertir los archivos XPS a imágenes BMP de la misma manera que lo hizo con PNG y JPEG. Los siguientes son los pasos para ello.

El siguiente ejemplo de código muestra cómo convertir un archivo XPS a BMP.

// Para obtener ejemplos completos y archivos de datos, vaya a https://github.com/aspose-page/Aspose.Page-for-Java
// La ruta al directorio de documentos.
String dataDir = Utils.getDataDir();
// Cargar documento XPS
XpsDocument document = new XpsDocument(dataDir + "input.xps");
// Inicialice el objeto de opciones con los parámetros necesarios.
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});

// Crear dispositivo de renderizado para formato PDF
com.aspose.xps.rendering.ImageDevice device = new com.aspose.xps.rendering.ImageDevice();

document.save(device, options);

// Iterar a través de particiones de documentos (documentos fijos, en términos de XPS)
for (int i = 0; i < device.getResult().length; i++) {
    // Iterar a través de páginas de partición
    for (int j = 0; j < device.getResult()[i].length; j++) {
        // Inicializar flujo de salida de imagen
        FileOutputStream imageStream = new FileOutputStream(dataDir + "XPStoBMP" + "_" + (i + 1) + "_" + (j + 1) + ".bmp");
        // Escribir imagen
        imageStream.write(device.getResult()[i][j], 0, device.getResult()[i][j].length);
    }
}

Convertir XPS a TIFF en Java

Los siguientes son los pasos para convertir un documento XPS a una imagen TIFF.

El siguiente ejemplo de código muestra cómo convertir un documento XPS a una imagen TIFF en Java.

// Para obtener ejemplos completos y archivos de datos, vaya a https://github.com/aspose-page/Aspose.Page-for-Java
// La ruta al directorio de documentos.
String dataDir = Utils.getDataDir();
// Cargar documento XPS
XpsDocument document = new XpsDocument(dataDir + "input.xps");
// Inicialice el objeto de opciones con los parámetros necesarios.
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 });

// Crear dispositivo de renderizado para formato PDF
com.aspose.xps.rendering.ImageDevice device = new com.aspose.xps.rendering.ImageDevice();

document.save(device, options);

// Iterar a través de particiones de documentos (documentos fijos, en términos de XPS)
for (int i = 0; i < device.getResult().length; i++) {
    // Iterar a través de páginas de partición
    for (int j = 0; j < device.getResult()[i].length; j++) {
        // Inicializar flujo de salida de imagen
        FileOutputStream imageStream = new FileOutputStream(dataDir + "XPStoTIFF" + "_" + (i + 1) + "_" + (j + 1) + ".tif");
        // Escribir imagen
        imageStream.write(device.getResult()[i][j], 0, device.getResult()[i][j].length);
    }
}

Conclusión

En este artículo, aprendió cómo convertir archivos XPS a formatos de imagen raster usando Java. La guía paso a paso, las referencias de API y los ejemplos de código han mostrado cómo convertir XPS a imágenes PNG, JPEG, TIFF y BMP. Puede explorar otras características de la API de Java XPS utilizando la documentación.

Ver también