Mesclar documentos EPS, PostScript (PS) e XPS em Java
Mescle programaticamente vários arquivos EPS, PostScript (PS) e XPS em documentos PDF únicos de várias páginas usando o Aspose.Page for Java. Combine gráficos vetoriais individuais, arquivos de impressão ou fluxos de páginas de forma integrada entre diferentes formatos de documentos, sem depender do Adobe Acrobat, Distiller ou dos utilitários de impressão nativos do Windows.
O Aspose.Page for Java fornece dispositivos de renderização especializados (PdfDevice, ImageDevice) e opções de salvamento para converter e combinar vários arquivos de entrada em um fluxo de saída unificado.
- Para combinar gráficos vetoriais isolados e ilustrações EPS em um portfólio PDF consolidado, use o método
PsDocument.mergeToPdf(). - Para mesclar trabalhos de impressão e relatórios PostScript de vários arquivos em um único arquivo PDF imprimível, use o método
PsDocument.mergeToPdf(). - Para combinar diferentes arquivos XPS, faturas ou saídas de páginas em lote em um único pacote XPS ou PDF, use o método
XpsDocument.merge().
Mesclar vários arquivos EPS em um único PDF
Mescle uma matriz de arquivos de gráficos vetoriais EPS separados em um único documento PDF de várias páginas.
import com.aspose.page.eps.PsDocument;
import com.aspose.page.eps.device.PdfSaveOptions;
import com.aspose.page.eps.device.PdfDevice;
import java.io.FileOutputStream;
public class MergeEpsFilesToPdf {
public static void main(String[] args) throws Exception {
// Define array of input EPS files to merge
String[] epsFiles = new String[] {
"C:/Project/Input/graphic1.eps",
"C:/Project/Input/graphic2.eps",
"C:/Project/Input/graphic3.eps"
};
// Initialize output stream for the merged PDF
FileOutputStream outStream = new FileOutputStream("C:/Project/Output/merged_eps_output.pdf");
// SOpen the first EPS document as the base document
PsDocument baseDocument = new PsDocument(epsFiles[0]);
// Configure PDF save options
PdfSaveOptions options = new PdfSaveOptions();
options.setJpegQualityLevel(100);
// Merge additional EPS files and save to PDF stream
baseDocument.mergeToPdf(outStream, epsFiles, options);
outStream.close();
System.out.println("EPS files successfully merged into a single PDF document.");
}
}Mesclar vários documentos PostScript (PS) em um único PDF
Combine vários arquivos PostScript de várias páginas em um fluxo PDF consolidado usando caminhos e opções personalizados de pesquisa de fontes.
import com.aspose.page.eps.PsDocument;
import com.aspose.page.eps.device.PdfSaveOptions;
import java.io.FileOutputStream;
public class MergePsFilesToPdf {
public static void main(String[] args) throws Exception {
// Specify list of PS files
String[] psFiles = new String[] {
"C:/Project/Input/report_part1.ps",
"C:/Project/Input/report_part2.ps"
};
FileOutputStream outStream = new FileOutputStream("C:/Project/Output/merged_report.pdf");
// Load base PS document
PsDocument basePsDoc = new PsDocument(psFiles[0]);
// Set options and configure font folders if custom fonts are used
PdfSaveOptions options = new PdfSaveOptions();
options.setAdditionalFontsFolders(new String[] { "C:/Project/Fonts/" });
// Merge files to PDF
basePsDoc.mergeToPdf(outStream, psFiles, options);
outStream.close();
System.out.println("PostScript documents merged to PDF successfully.");
}
}Mesclar vários documentos XPS em um único arquivo XPS
Combine diferentes pacotes XPS ou páginas de faturas geradas em um único arquivo XPS de várias páginas.
import com.aspose.page.xps.XpsDocument;
public class MergeXpsFiles {
public static void main(String[] args) throws Exception {
// Open base XPS document
XpsDocument baseDocument = new XpsDocument("C:/Project/Input/document1.xps");
// Define array of additional XPS documents to append
String[] xpsFilesToMerge = new String[] {
"C:/Project/Input/document2.xps",
"C:/Project/Input/document3.xps"
};
// Execute merge operation and save output
baseDocument.merge(xpsFilesToMerge, "C:/Project/Output/merged_document.xps");
baseDocument.close();
System.out.println("XPS documents merged into a single XPS package successfully.");
}
}Instalação e configuração
Adicione o Aspose.Page for Java ao seu 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. Posso mesclar documentos XPS diretamente para PDF em vez de XPS?
Sim. Você pode carregar um documento XPS usando XpsDocument e renderizá-lo junto com arquivos secundários usando PdfDevice para criar diretamente um arquivo PDF mesclado a partir de entradas XPS.
2. Como o Aspose.Page lida com fontes ausentes ao mesclar arquivos PS ou EPS?
Se fontes personalizadas forem referenciadas nos arquivos EPS/PS de entrada, você poderá fornecer sua localização usando PdfSaveOptions.setAdditionalFontsFolders(). Se estiverem ausentes, o Aspose.Page usará a lógica integrada de substituição de fontes padrão para concluir a renderização sem gerar exceções fatais.
3. A eficiência de memória é mantida durante o processamento em lote de grandes conjuntos de arquivos?
Sim. O Aspose.Page processa sequencialmente os fluxos de páginas de entrada durante a execução do dispositivo PDF, permitindo que grandes trabalhos de impressão corporativos sejam combinados com eficiência e baixo uso de memória.