Utiliser des documents PostScript (PS) en Java

Créez, modifiez et gérez des documents PostScript (PS) par programmation à l’aide d’Aspose.Page for Java. Créez facilement des documents PS multipages à partir de zéro, ajoutez des pages, insérez des graphiques vectoriels et des éléments de texte, fusionnez plusieurs fichiers PostScript et ajustez la structure du document sans avoir à installer Adobe Acrobat ou Distiller.

 

Aspose.Page for Java fournit un modèle objet autonome de haut niveau centré sur la classe PsDocument pour contrôler la création de documents PostScript et la manipulation des pages.

Pour créer de nouveaux flux d’impression PostScript d’une ou plusieurs pages, utilisez PsDocument(outputStream, options)

  • Pour structurer par programmation des pages individuelles au sein d’un flux PostScript, utilisez les méthodes PsDocument.openPage()/closePage().
  • Pour enregistrer des graphiques vectoriels, des formes, du texte et des pages dans des fichiers sur disque ou dans des flux, utilisez la méthode PsDocument.save().
  • Pour définir les marges des pages, les formats personnalisés (A4, Letter) et l’orientation d’impression, utilisez la classe PsSaveOptions.

Créer un document PostScript multipage en Java

Créez un document PS multipage à partir de zéro en configurant les options d’enregistrement et en ouvrant et fermant explicitement les pages dans le flux du document.

import com.aspose.page.eps.PsDocument;
import com.aspose.page.eps.device.PsSaveOptions;
import java.io.FileOutputStream;

public class CreateMultiPagePSDocument {
    public static void main(String[] args) throws Exception {
        // Initialize output stream for the new PS file
        FileOutputStream outStream = new FileOutputStream("C:/PSProject/Output/multipage_document.ps");

        // Set save options (Default page size A4, 72 DPI)
        PsSaveOptions options = new PsSaveOptions();

        // Create a multi-page PS document instance
        PsDocument document = new PsDocument(outStream, options, 2); // Explicitly specifying 2 pages

        // --- PAGE 1 ---
        document.openPage("Page 1");
        // Add content to Page 1 (e.g., text or graphics)
        document.closePage();

        // --- PAGE 2 ---
        document.openPage("Page 2");
        // Add content to Page 2
        document.closePage();

        // Save and flush the document
        document.save();
        outStream.close();

        System.out.println("Multi-page PostScript document created successfully.");
    }
}

Ajouter des pages et des graphiques à un générateur de documents existant

Ajoutez aux pages du document PostScript des formes vectorielles, des éléments de texte et des transformations.

import com.aspose.page.eps.PsDocument;
import com.aspose.page.eps.device.PsSaveOptions;
import java.awt.Color;
import java.awt.Font;
import java.io.FileOutputStream;

public class AddPageContentToPS {
    public static void main(String[] args) throws Exception {
        FileOutputStream outStream = new FileOutputStream("C:/PSProject/Output/styled_document.ps");
        PsSaveOptions options = new PsSaveOptions();

        PsDocument document = new PsDocument(outStream, options, 1);

        // Open page
        document.openPage(null);

        // Add text element
        Font font = new Font("Arial", Font.BOLD, 24);
        document.fillText("Hello World from Aspose.Page Java!", font, 100, 100, Color.BLACK);

        // Draw a vector rectangle
        document.setPaint(Color.RED);
        document.drawRect(100, 150, 300, 200);

        // Close page and save
        document.closePage();
        document.save();
        outStream.close();

        System.out.println("Styled PS document with vector content saved.");
    }
}

Configurer des formats et des marges de page personnalisés

Définissez des dimensions de page précises (telles que Letter, Legal ou des dimensions personnalisées) à l’aide de PsSaveOptions.

import com.aspose.page.eps.PsDocument;
import com.aspose.page.eps.device.PsSaveOptions;
import java.io.FileOutputStream;

public class CustomPageSizePS {
    public static void main(String[] args) throws Exception {
        FileOutputStream outStream = new FileOutputStream("C:/PSProject/Output/custom_size.ps");

        // Create options and set custom size (e.g., Letter dimensions in points)
        PsSaveOptions options = new PsSaveOptions();
        options.setPageSize(new java.awt.Dimension(612, 792)); // 8.5 x 11 inches in points

        PsDocument document = new PsDocument(outStream, options, 1);

        document.openPage("Main Page");
        // Page drawing commands...
        document.closePage();

        document.save();
        outStream.close();

        System.out.println("PS document with custom page size saved.");
    }
}

Installation et configuration

Ajoutez Aspose.Page for Java à votre Maven :

Package Manager Console Command

<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>Latest</version>
</dependency>

FAQ

1. Dois-je installer Adobe Acrobat ou des utilitaires de pilotes PostScript ?

Non. Aspose.Page for Java est une bibliothèque Java native et autonome qui crée, restitue et manipule directement les structures des documents PS/EPS sans dépendre de pilotes d’imprimante externes ni de logiciels natifs.

2. Puis-je convertir directement le document PostScript (PS) créé en PDF ou en images raster ?

Oui. Vous pouvez transmettre une instance de PsDocument à PdfDevice ou ImageDevice dans Aspose.Page afin de convertir directement votre fichier PostScript généré aux formats PDF, PNG, JPEG ou TIFF.

3. Comment les coordonnées et les unités de mesure sont-elles définies dans PsDocument ?

Aspose.Page utilise les points PostScript standard, où 1 pouce = 72 points. Les coordonnées sont mesurées par rapport à l’origine de la surface de la page.