Os arquivos XPS são baseados em XML Paper Specifications que representam layouts de página. Eles incluem informações sobre aparência e layouts de impressão. Às vezes, você pode querer mesclar vários arquivos XPS para processamento adicional de dados. De acordo com esses requisitos, este artigo explica como mesclar arquivos XPS programaticamente em C#.
- Combinar ou mesclar arquivos XPS – Instalação da API C#
- Mesclar arquivo XPS para formato XPS programaticamente em C#
- Mesclar arquivos XPS programaticamente em C#
- Mesclar arquivos XPS com opções avançadas em C#
Combine ou Mescle arquivos XPS – Instalação da API C#
Aspose.Page for .NET API é uma API de formato de arquivo de alto código onde você só precisa fazer algumas chamadas de API. Você pode acessar a API baixando seus arquivos DLL da seção Downloads ou com o seguinte comando de instalação NuGet:
PM> Install-Package Aspose.Page
Mesclar arquivos XPS no formato XPS programaticamente em C#
Você pode mesclar diferentes arquivos XPS em um único documento XPS com as seguintes etapas:
- Carregue o arquivo XPS de entrada.
- Especifique os outros arquivos XPS que você deseja combinar.
- Anexe os arquivos juntos em um arquivo XPS.
O trecho de código abaixo mescla vários arquivos XPS em um único documento XPS em C#:
// Inicialize o fluxo de saída XPS
using (System.IO.Stream outStream = System.IO.File.Open("mergedXPSfiles.xps", System.IO.FileMode.Create, System.IO.FileAccess.Write))
{
// Carregar documento XPS
XpsDocument document = new XpsDocument("input.xps", new XpsLoadOptions());
// Crie uma matriz de arquivos XPS que serão mesclados com o primeiro
string[] filesToMerge = new string[] { "input2.xps", "input3.xps" };
// Mesclar arquivos XPS para gerar um documento XPS
document.Merge(filesToMerge, outStream);
}
Mesclar arquivos XPS programaticamente em C#
Você pode mesclar vários arquivos XPS em um único arquivo seguindo as etapas abaixo:
- Carregue um arquivo XPS para anexar outros arquivos a ele.
- Crie um dispositivo de renderização para o arquivo de saída.
- Crie uma matriz dos arquivos XPS a serem mesclados.
- Mescle os arquivos XPS e salve a saída em formato PDF.
O código a seguir mostra como mesclar arquivos XPS e salvar a saída em formato PDF programaticamente em C#:
// Inicialize o fluxo de saída do PDF
using (Stream pdfStream = File.Open("mergedXPSfiles.pdf", FileMode.Create, FileAccess.Write))
// Inicializar o fluxo de entrada XPS
using (Stream xpsStream = File.Open("input.xps", FileMode.Open, FileAccess.Read))
{
// Carregue o primeiro documento XPS do fluxo
XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
// Criar dispositivo de renderização para formato PDF
PdfDevice device = new PdfDevice(pdfStream);
// Crie uma matriz de arquivos XPS que serão mesclados com o primeiro
string[] filesToMerge = new string[] { "input2.xps", "input3.xps" };
// Mesclar arquivos XPS para gerar um documento PDF
document.Merge(filesToMerge, device, new PdfSaveOptions());
}
Mesclar arquivos XPS com opções avançadas em C#
Você pode especificar diferentes propriedades para improvisar o processo de mesclagem XPS. Por exemplo, você pode definir compactação de imagem ou texto, criptografia, privilégios etc. para o arquivo de saída seguindo as etapas abaixo:
- Carregue um arquivo XPS de entrada para mesclar arquivos.
- Inicialize o objeto da classe PdfSaveOptions.
- Crie um dispositivo de renderização e uma matriz para mesclar arquivos.
- Mescle os arquivos XPS e salve o resultado como PDF.
O trecho de código a seguir demonstra como mesclar arquivos XPS em C#:
// Inicialize o fluxo de saída do PDF
using (Stream pdfStream = File.Open("mergedXPSfiles.pdf", FileMode.Create, FileAccess.Write))
// Inicializar o fluxo de entrada XPS
using (Stream xpsStream = File.Open("input.xps", FileMode.Open, FileAccess.Read))
{
// Carregue o primeiro documento XPS do fluxo
XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
// Inicialize o objeto de opções com os parâmetros necessários.
PdfSaveOptions options = new PdfSaveOptions()
{
JpegQualityLevel = 100,
ImageCompression = Aspose.Page.XPS.Presentation.Pdf.PdfImageCompression.Jpeg,
TextCompression = Aspose.Page.XPS.Presentation.Pdf.PdfTextCompression.Flate
};
// Criar dispositivo de renderização para formato PDF
PdfDevice device = new PdfDevice(pdfStream);
// Crie uma matriz de arquivos XPS que serão mesclados com o primeiro
string[] filesToMerge = new string[] { "input2.xps", "input3.xps" };
// Mesclar arquivos XPS para gerar um documento PDF
document.Merge(filesToMerge, device, options);
}
Obtenha Licença Temporária Gratuita
Você pode solicitar uma licença temporária gratuita para avaliar a API sem limitações.
Demonstração on-line
Experimente o aplicativo da web XPS Merging para verificar os recursos de combinação de arquivos.
Conclusão
Neste artigo, você explorou como mesclar arquivos XPS programaticamente em C#. Caso você precise discutir alguma de suas dúvidas, escreva para nós no fórum.