Formát XPS(XML Paper Specifications) byl představen společností Microsoft, který se používá k reprezentaci rozvržení stránky. Používá XML tagy k reprezentaci vzhledu stránek a složení dokumentu. V různých scénářích může být nutné převést dokumenty XPS do jiných formátů dokumentů. V souladu s tím se v tomto článku dozvíte o převodu dokumentů XPS do formátů rastrových obrázků programově. Konkrétně se tento článek bude zabývat tím, jak převést XPS na BMP, JPEG, PNG a TIFF pomocí Java.

XPS to Image Converter API – ke stažení zdarma

Aspose.Page for Java je navržen pro práci s dokumenty PS, EPS a XPS z aplikací Java. Vestavěný převodník API umožňuje provádět vysoce kvalitní převod XPS na rastrové obrazové formáty včetně obrázků PNG, JPEG, BMP a TIFF. JAR API si můžete buď stáhnout, nebo jej nainstalovat do aplikací založených na 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>

Převod XPS na rastrové obrázky v Javě

Aspose.Page for Java poskytuje samostatné třídy pro přizpůsobení převodu XPS na rastrový obrázek. Můžete například nastavit rozlišení výstupního obrazu, určit stránky, které chcete převést, a tak dále. Níže je uveden seznam tříd, které můžete odpovídajícím způsobem použít.

Převést XPS na PNG v Javě

Následují kroky pro převod dokumentů XPS na obrázky PNG pomocí Aspose.XPS for Java.

Následující ukázka kódu ukazuje, jak převést XPS na PNG pomocí Java.

// Úplné příklady a datové soubory najdete na https://github.com/aspose-page/Aspose.Page-for-Java
// Cesta k adresáři dokumentů.
String dataDir = Utils.getDataDir();
// Načíst dokument XPS
XpsDocument document = new XpsDocument(dataDir + "input.xps");
// Inicializujte objekt voleb s potřebnými parametry.
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 });

// Vytvořte vykreslovací zařízení pro formát PDF
com.aspose.xps.rendering.ImageDevice device = new com.aspose.xps.rendering.ImageDevice();

document.save(device, options);

// Iterace přes oddíly dokumentů (pevné dokumenty, v podmínkách XPS)
for (int i = 0; i < device.getResult().length; i++) {
    // Iterujte stránky oddílů
   for (int j = 0; j < device.getResult()[i].length; j++) {
        // Inicializujte výstupní proud obrazu
        FileOutputStream imageStream = new FileOutputStream(dataDir + "XPStoPNG" + "_" + (i + 1) + "_" + (j + 1) + ".png");
        // Napište obrázek
        imageStream.write(device.getResult()[i][j], 0, device.getResult()[i][j].length);
    }
}

Převést XPS na JPEG v Javě

Následují kroky pro převod XPS na JPEG pomocí Aspose.Page for Java.

Následující ukázka kódu ukazuje, jak převést XPS na JPEG.

// Úplné příklady a datové soubory najdete na https://github.com/aspose-page/Aspose.Page-for-Java
// Cesta k adresáři dokumentů.
String dataDir = Utils.getDataDir();
// Inicializujte vstupní proud XPS

// Načtěte dokument XPS ze streamu
XpsDocument document = new XpsDocument(dataDir + "input.xps");

// Inicializujte objekt voleb s potřebnými parametry.
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 });

// Vytvořte vykreslovací zařízení pro formát PDF
com.aspose.xps.rendering.ImageDevice device = new com.aspose.xps.rendering.ImageDevice();

document.save(device, options);

// Iterace přes oddíly dokumentů (pevné dokumenty, v podmínkách XPS)
for (int i = 0; i < device.getResult().length; i++) {
    // Iterujte stránky oddílů
   for (int j = 0; j < device.getResult()[i].length; j++) {
        // Inicializujte výstupní proud obrazu
        FileOutputStream imageStream = new FileOutputStream(dataDir + "XPStoJPEG" + "_" + (i + 1) + "_" + (j + 1) + ".jpeg");
        // Napište obrázek
        imageStream.write(device.getResult()[i][j], 0, device.getResult()[i][j].length);
    }
}

Převést XPS na BMP v Javě

Soubory XPS můžete převést na obrázky BMP stejným způsobem, jakým jste to udělali pro PNG a JPEG. Následují kroky k tomu.

Následující ukázka kódu ukazuje, jak převést soubor XPS na BMP.

// Úplné příklady a datové soubory najdete na https://github.com/aspose-page/Aspose.Page-for-Java
// Cesta k adresáři dokumentů.
String dataDir = Utils.getDataDir();
// Načíst dokument XPS
XpsDocument document = new XpsDocument(dataDir + "input.xps");
// Inicializujte objekt voleb s potřebnými parametry.
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});

// Vytvořte vykreslovací zařízení pro formát PDF
com.aspose.xps.rendering.ImageDevice device = new com.aspose.xps.rendering.ImageDevice();

document.save(device, options);

// Iterace přes oddíly dokumentů (pevné dokumenty, v podmínkách XPS)
for (int i = 0; i < device.getResult().length; i++) {
    // Iterujte stránky oddílů
   for (int j = 0; j < device.getResult()[i].length; j++) {
        // Inicializujte výstupní proud obrazu
        FileOutputStream imageStream = new FileOutputStream(dataDir + "XPStoBMP" + "_" + (i + 1) + "_" + (j + 1) + ".bmp");
        // Napište obrázek
        imageStream.write(device.getResult()[i][j], 0, device.getResult()[i][j].length);
    }
}

Převést XPS na TIFF v Javě

Následují kroky pro převod dokumentu XPS na obrázek TIFF.

Následující ukázka kódu ukazuje, jak převést dokument XPS na obrázek TIFF v Javě.

// Úplné příklady a datové soubory najdete na https://github.com/aspose-page/Aspose.Page-for-Java
// Cesta k adresáři dokumentů.
String dataDir = Utils.getDataDir();
// Načíst dokument XPS
XpsDocument document = new XpsDocument(dataDir + "input.xps");
// Inicializujte objekt voleb s potřebnými parametry.
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 });

// Vytvořte vykreslovací zařízení pro formát PDF
com.aspose.xps.rendering.ImageDevice device = new com.aspose.xps.rendering.ImageDevice();

document.save(device, options);

// Iterace přes oddíly dokumentů (pevné dokumenty, v podmínkách XPS)
for (int i = 0; i < device.getResult().length; i++) {
    // Iterujte stránky oddílů
   for (int j = 0; j < device.getResult()[i].length; j++) {
        // Inicializujte výstupní proud obrazu
        FileOutputStream imageStream = new FileOutputStream(dataDir + "XPStoTIFF" + "_" + (i + 1) + "_" + (j + 1) + ".tif");
        // Napište obrázek
        imageStream.write(device.getResult()[i][j], 0, device.getResult()[i][j].length);
    }
}

Závěr

V tomto článku jste se naučili, jak převést soubory XPS na formáty rastrových obrázků pomocí Java. Podrobný průvodce, odkazy na rozhraní API a ukázky kódu ukazují, jak převést obrázky XPS na obrázky PNG, JPEG, TIFF a BMP. Další funkce Java XPS API můžete prozkoumat pomocí dokumentace.

Viz také