Trabajar con documento en archivo PS | Java
Crear documento PS
Aspose.Page para Java ofrece dos constructores para crear la clase PsDocument. El siguiente fragmento de código crea un documento PS de 1 página:
1//Create output stream for PostScript document
2FileOutputStream outPsStream = new FileOutputStream(dataDir + "document.ps");
3//Create save options with A4 size
4PsSaveOptions options = new PsSaveOptions();
5
6//If you want to aassign page size other than A4, set page size in options
7options.setPageSize(PageConstants.getSize(PageConstants.SIZE_A4, PageConstants.ORIENTATION_PORTRAIT));
8//If you want to aassign page margins other than empty, set page margins in options
9options.setMargins(PageConstants.getMargins(PageConstants.MARGINS_ZERO));
10//If you plan to use fonts that located in non system folders, set additional fonts folders in options
11options.setAdditionalFontsFolders(new String[] { FONTS_FOLDER });
12
13//Set variable that indicates if resulting PostScript document will be multipaged
14boolean multiPaged = false;
15
16// Create new multipaged PS Document with one page opened
17PsDocument document = new PsDocument(outPsStream, options, multiPaged);
18
19//Close current page
20document.closePage();
21//Save the document
22document.save();
Si el documento PS planea tener varias páginas, establezca la variable multiPagged en true.
Otro constructor permite crear un objeto PsDocument con un número definido de páginas:
1//Create save options with A4 size
2PsSaveOptions options = new PsSaveOptions();
3//Create output stream for PostScript document
4FileOutputStream outPsStream = new FileOutputStream(dataDir + "CreateDocument_outPS.ps");
5
6// Create new multipaged PS Document with 2 pages. These two pages are not created. It must be added by addPage() method.
7PsDocument document = new PsDocument(outPsStream, options, 2);
8
9//Close current page
10document.closePage();
11//Save the document
12document.save();
Ver cómo trabajar con el documento PS en .NET.
Veamos la clase PsSaveOptions que encapsula posibles opciones que ayudan a crear el documento PostScript correcto.
SaveFormat especifica un formato de salida de los documentos. Puede ser PS o EPS. En la biblioteca Aspose.Page, las diferencias entre estos dos formatos se reflejan sólo en los comentarios PostScript y en una extensión de archivo. Además, de acuerdo con la especificación de archivos EPS, los archivos EPS deben tener una sola página. El formato PS se utiliza de forma predeterminada.
PageSize especifica el tamaño de las páginas del documento PS. Sin embargo, podemos asignar diferentes tamaños de página para cada página si es necesario. El tamaño de la página se puede obtener de la clase PageConstants como en el siguiente ejemplo:
1options.setPageSize(PageConstants.getSize(PageConstants.SIZE_International, PageConstants.ORIENTATION_PORTRAIT));
El tamaño de página predeterminado es “A4” en orientación “Retrato”.
- Márgenes especifica campos en blanco entre los límites de la página y los bordes izquierdo, superior, derecho e inferior del contenido de la página. Se puede obtener de la clase PageConstants.
1options.setMargins(PageConstants.getMargins(PageConstants.MARGINS_SMALL)); // 20 points for each margin
Los márgenes predeterminados son “CERO” (0, 0, 0, 0).
- BackGroundColor especifica un color de fondo de la página. Se puede asignar como:
1options.setBackgroundColor(new Color(211, 8, 48));
o:
1options.setBackgroundColor(Color.YELLOW);
El valor predeterminado es “nulo”, lo que significa que no hay fondo.
EmbedFonts controla el comportamiento de PsDocument mientras lo guarda en el archivo. Si es “falso”, las fuentes utilizadas no se escribirán en el archivo PS. En este caso, el intérprete PostScript generará un error si la fuente utilizada no se puede encontrar en las carpetas del sistema en el host de destino.
EmbedFontsAs controla la forma en que se incrustarán las fuentes en el archivo PS. En este momento funcionan dos formas de formatos de fuente TrueType y Type3. El valor se puede establecer con la ayuda de la clase FontConstants como la siguiente:
1options.setEmbedFontsAs(FontsConstants.EMBED_FONTS_TYPE3);
El valor predeterminado es “TrueType”.
JpegQualityLevel especifica un nivel de compresión/calidad de las imágenes en el documento PS resultante. Cuanta más calidad se requiera, menor será la compresión y viceversa. La calidad mínima es 0 y la máxima, 100. El valor predeterminado es 75.
AdditionalFontsFolder especifica ubicaciones donde encontrar fuentes. Las carpetas de fuentes del sistema siempre se incluyen de forma predeterminada.
Depurar permite enviar información de depuración a la consola. El valor predeterminado es falso.
Puede descargar ejemplos y archivos de datos desde GitHub.