Converti PS, EPS e XPS

Soluzione API per la conversione di PS, EPS e XPS per Java

 

Ogni volta che è necessario convertire a livello di codice file PostScript PS ed Encapsulated PostScript EPS, così come documenti XPS, l'API Java può farlo in modo fluido e converte più file contemporaneamente. Per PS ed EPS, l'API supporta gli operatori PostScript di livello 1-3 e la maggior parte dei commenti di intestazione EPS, oltre a trasformare i documenti PostScript con la massima fedeltà, ad eccezione di alcuni casi di font; l'API gestisce tali font come Times New Roman.

Inoltre, per la trasformazione dei file XPS, l'API può aggiungere o rimuovere pagine, gestire canvas, percorsi ed elementi glifo, creare forme grafiche vettoriali e stringhe di testo, convertire elementi di contorno XPS e molto altro.

La soluzione API per Java qui presentata consente di convertire a livello di codice file in formati PDL come PS, EPS e XPS, ma potrebbe esserti utile vedere e provare gli strumenti multipiattaforma sviluppati su queste API native.

Conversione da PostScript a PDF tramite Java.

Per convertire file PostScript PS ed Encapsulated PostScript EPS in PDF tramite l'API Java, è necessario seguire i passaggi successivi:

  1. Caricare il file PS o EPS utilizzando la classe PsDocument .
  2. Impostare le opzioni di salvataggio PDF utilizzando la classe PdfSaveOptions .
  3. Utilizzare la classe FileStream per il file PDF di output.
  4. Utilizzare la classe PdfDevice con l’oggetto FileOutputStream come parametro.
  5. Chiamare il metodo PsDocument.Save per salvare il file in formato PDF.
Codice Java per convertire PS EPS in 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());
        }
}
 

Conversione da PostScript a immagini tramite Java.

Per qualsiasi applicazione di conversione da PostScript EPS/PS a immagine, il seguente codice Java funziona bene; seguire questi passaggi:

  1. Inizializzare il flusso di input con il file sorgente PS.
  2. Creare l’oggetto PsDocument con il flusso di input PS creato come parametro
  3. Utilizzare ImageSaveOptions per specificare AdditionalFontsFolder, SuppressError, ecc.
  4. Utilizzare l’oggetto ImageDevice per specificare un tipo e una dimensione di immagine, se necessario.
  5. Salvare il file PS/EPS come immagine con le opzioni di salvataggio immagine come un array di array di byte. Un array di byte per ogni pagina del file di input.
Codice Java per la conversione da PostScript a immagini
// 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());
    }
}
 

Converti XPS in immagini JPG, PNG, BMP tramite Java.

L'API Java gestisce il formato XPS utilizzato per rappresentare il layout di pagina. In qualsiasi scenario, ogni volta che è necessario convertire a livello di codice XPS in immagini BMP, JPG, PNG e TIFF, il seguente codice può essere facilmente integrato all'interno dell'applicazione Java.

  1. Utilizzare la classe XpsDocument per caricare il documento XPS.
  2. Utilizzare la classe di opzioni immagine pertinente come PngSaveOptions , JpegSaveOptions , BmpSaveOptions , TiffSaveOptions per ulteriori impostazioni dell’immagine.
  3. Creare l’istanza della classe image device .
  4. Chiamare il metodo XpsDocument.save per salvare la conversione dell’immagine JPEG nell’oggetto ImageDevice e quindi utilizzare ImageDevice per salvare l’immagine come JPG.
Codice Java per la conversione da XPS a immagine
// 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. Posso convertire Postscript con questa soluzione API?

Aspose.Page ha funzionalità che ti consentono di convertire file PS, XPS ed EPS in altri formati online o a livello di codice. Se hai bisogno di trasformare i tuoi file istantaneamente online, potresti utilizzare l’applicazione multipiattaforma Page Description Language format files Converter .

2. Quali lingue di descrizione della pagina sono supportate dal convertitore?

Questa funzionalità di conversione supporta file con estensione .ps, .eps e .xps. PDL famosi come PDF e SVG sono rappresentati come soluzioni separate in Aspose.products

3. La funzionalità è gratuita?

I convertitori multipiattaforma sono gratuiti, mentre per la soluzione API puoi ottenere una prova gratuita e quindi acquistare il prodotto se necessario.

 

Converti XPS in PDF tramite Java.

Il processo di conversione a livello di codice di documenti XPS in PDF è semplice e offre risultati ad alta fedeltà tra i file di input e di output.

  1. Caricare il file utilizzando la classe XpsDocument. Inizializzare l’oggetto classe PdfSaveOptions .
  2. Creare l’oggetto PdfDevice per il rendering e infine salvare il documento PDF di output.
Codice Java per la conversione da XPS a 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