Dividir um arquivo PDF em vários arquivos usando C#

No artigo anterior, você viu como mesclar vários arquivos PDF em um único PDF. No entanto, pode haver um caso em que você precise dividir um único arquivo PDF em vários arquivos. Você pode dividir cada página do PDF ou uma coleção de páginas em vários PDFs. Neste artigo, você aprenderá como lidar com esses cenários e dividir um arquivo PDF usando C#.

Split PDF C# API - Download grátis

Aspose.PDF for .NET é uma poderosa API de manipulação de arquivos PDF que permite criar, editar e processar documentos PDF a partir de seus aplicativos .NET. Além disso, a API permite dividir um único PDF em vários arquivos com alta fidelidade. Você pode baixar a DLL da API ou instalá-la usando NuGet.

PM> Install-Package Aspose.Pdf

Dividir um arquivo PDF usando C#

Os critérios de divisão de PDF podem variar de acordo com suas necessidades. Você pode dividir o documento por cada página ou uma coleção de páginas. Primeiro, vamos ver como dividir cada página de um arquivo PDF.

  • Carregue o documento PDF usando a classe Document.
  • Percorra a coleção Document.Pages para acessar cada página usando a classe Page.
  • Em cada iteração, crie um novo Document, adicione a página atual ao documento e salve-o como um arquivo PDF usando o método Document.Save(String).

O exemplo de código a seguir mostra como dividir um documento PDF usando C#.

// Abrir documento
Document pdfDocument = new Document("merged.pdf");

// Para contador de páginas
int pageCount = 1;

// Percorra todas as páginas
foreach (Aspose.Pdf.Page pdfPage in pdfDocument.Pages)
{
  	// Criar um novo documento
	Document newDocument = new Document();
  
  	// Adicionar página ao documento
	newDocument.Pages.Add(pdfPage);
  
  	// Salvar como PDF 
	newDocument.Save("page_" + pageCount + "_out" + ".pdf");
	pageCount++;
}

Dividir páginas selecionadas de PDF usando C#

Você também pode dividir o PDF especificando o intervalo de páginas. Por exemplo, você pode dividir as primeiras ou últimas N páginas de números, as páginas pares ou ímpares, etc. Para a demonstração, a seguir estão as etapas para dividir as páginas pares e ímpares do PDF.

O exemplo de código a seguir mostra como dividir uma coleção de páginas do PDF.

// Abrir documento
Document pdfDocument = new Document("merged.pdf"); 

// Selecione apenas páginas pares
Aspose.Pdf.Page[] evenPages = pdfDocument.Pages.Where(x => x.Number % 2 == 0).ToArray();

// Selecione apenas páginas ímpares
Aspose.Pdf.Page[] oddPages = pdfDocument.Pages.Where(x => x.Number % 2 != 0).ToArray();

// Salvar páginas pares como PDF
Document newDocument = new Document();
newDocument.Pages.Add(evenPages);
newDocument.Save("split_even_Pages.pdf");

// Salvar páginas ímpares como PDF
newDocument = new Document();
newDocument.Pages.Add(oddPages);
newDocument.Save("split_odd_Pages.pdf");

Conclusão

Neste artigo, você aprendeu como dividir os arquivos PDF usando C#. Os exemplos de código demonstraram como dividir cada página ou uma coleção de páginas em um PDF para separar arquivos. Você pode explorar mais sobre a API .NET PDF usando a documentação.

Veja também