Mesclar arquivos PDF em C#

Mesclar vários arquivos PDF em um único PDF pode ser útil em vários cenários. Por exemplo, você pode manter documentos semelhantes (ou seja, currículos) em um único arquivo ou você pode querer compartilhar um único arquivo em vez de um volume. Para atender aos requisitos mencionados acima ou semelhantes, neste artigo, você aprenderá a mesclar vários arquivos PDF em C#.

API C# .NET para mesclar arquivos PDF - Download gratuito

Aspose.PDF for .NET é uma API rica em recursos para criar, editar, ler ou converter documentos PDF. Junto com outros recursos de manipulação de PDF, o Aspose.PDF para .NET também permite combinar ou mesclar arquivos PDF programaticamente. Você pode baixar a API ou instalá-la usando o NuGet Package Manager ou o Package Manager Console no Visual Studio.

Instalando pelo Gerenciador de Pacotes NuGet

Mesclar vários arquivos PDF em C# .NET

Instalando pelo Console do Gerenciador de Pacotes

PM> Install-Package Aspose.PDF

Mesclar dois arquivos PDF em C#

O processo de mesclagem de dois arquivos PDF em um único PDF é tão simples quanto uma torta e pode ser realizado apenas em duas etapas.

Veja a seguir o exemplo de código para mesclar dois arquivos PDF usando C#.

// criar objeto PdfFileEditor
PdfFileEditor pdfEditor = new PdfFileEditor();
// mesclar arquivos
pdfEditor.Concatenate("file1.pdf", "file2.pdf", "merged.pdf");

Mesclar vários arquivos PDF em C#

Caso você queira mesclar mais de dois arquivos PDF, você pode fazê-lo usando um array de strings contendo os caminhos de todos os arquivos PDF a serem mesclados. A seguir estão as etapas para realizar esta operação.

O exemplo de código a seguir mostra como mesclar vários arquivos PDF.

// criar objeto PdfFileEditor
PdfFileEditor pdfEditor = new PdfFileEditor();
// crie uma matriz de caminhos de arquivos PDF
string[] filesArray = new string[3];
filesArray[0] = "file1.pdf";
filesArray[1] = "file2.pdf";
filesArray[2] = "file3.pdf";
// mesclar arquivos
pdfEditor.Concatenate(filesArray, "merged.pdf");

C# Mesclar arquivos PDF usando fluxos

Pode haver um caso em que você não esteja lidando com os arquivos localizados no disco. Em vez disso, você deseja mesclar arquivos PDF disponíveis na forma de fluxos. Nesse caso, você pode mesclar os PDFs diretamente usando os objetos Stream nos métodos PdfFileEditor.Concatenate() sobrecarregados. Os exemplos de código a seguir mostram como mesclar arquivos PDF usando os objetos Stream.

Mesclar dois arquivos PDF usando objetos de fluxo

// criar objeto PdfFileEditor
PdfFileEditor pdfEditor = new PdfFileEditor();
// fluxo de saída
FileStream outputStream = new FileStream("Merged.pdf", FileMode.Create);
// fluxos de entrada
FileStream inputStream1 = new FileStream("file1.pdf", FileMode.Open);
FileStream inputStream2 = new FileStream("file2.pdf", FileMode.Open);
// mesclar arquivos
pdfEditor.Concatenate(inputStream1, inputStream2, outputStream);

Mesclar vários arquivos PDF usando objetos de fluxo

// criar objeto PdfFileEditor
PdfFileEditor pdfEditor = new PdfFileEditor();
// fluxo de saída
FileStream outputStream = new FileStream("Merged.pdf", FileMode.Create);
// criar matriz de fluxos 
FileStream[] streamArray = new FileStream[3];
streamArray[0] = new FileStream("file1.pdf", FileMode.Open);
streamArray[1] = new FileStream("file2.pdf", FileMode.Open);
streamArray[2] = new FileStream("file3.pdf", FileMode.Open);
// mesclar arquivos
pdfEditor.Concatenate(streamArray, outputStream);

Conclusão

Neste artigo, você aprendeu como mesclar arquivos PDF programaticamente em C# .NET. Além disso, este artigo discute explicitamente como mesclar dois arquivos PDF ou vários (mais de dois) arquivos PDF em um único PDF. Caso você esteja interessado em explorar mais sobre o Aspose.PDF para .NET, dê uma olhada na documentação.

Veja também