Mover Páginas PDF programaticamente C#

Movendo uma Página de um Documento PDF para Outro

Este tópico explica como mover uma página de um documento PDF para o final de outro documento usando C#.

O seguinte trecho de código também funciona com a biblioteca Aspose.PDF.Drawing.

Para mover uma página, devemos:

  1. Criar um objeto da classe Document com o arquivo PDF de origem.
  2. Criar um objeto da classe Document com o arquivo PDF de destino.
  3. Obter a Página da coleção PageCollection.
  4. Adicionar a página ao documento de destino.
  5. Salvar o PDF de saída usando o método Save.
  6. Excluir a página no documento de origem.
  7. Salvar o PDF de origem usando o método Save.

O seguinte trecho de código mostra como mover uma página.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void MovingAPageFromOnePdfDocumentToAnother()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Pages();

    // Open PDF documents
    using (var srcDocument = new Aspose.Pdf.Document(dataDir + "MovingPageInput.pdf"))
    {
        using (var dstDocument = new Aspose.Pdf.Document())
        {
            var page = srcDocument.Pages[2];
            dstDocument.Pages.Add(page);
            // Save PDF document
            dstDocument.Save(dataDir + "MovingPage_out.pdf");
            srcDocument.Pages.Delete(2);
            // Save PDF document
            srcDocument.Save(dataDir + "MovingPageInput_out.pdf");
        }
    }
}

Movendo um Conjunto de Páginas de um Documento PDF para Outro

  1. Criar um objeto da classe Document com o arquivo PDF de origem.
  2. Criar um objeto da classe Document com o arquivo PDF de destino.
  3. Definir um array com os números das páginas a serem movidas.
  4. Executar um loop através do array:
    1. Obter a Página da coleção PageCollection.
    2. Adicionar a página ao documento de destino.
  5. Salvar o PDF de saída usando o método Save.
  6. Excluir a página no documento de origem usando o array.
  7. Salvar o PDF de origem usando o método Save.

O seguinte trecho de código mostra como mover um conjunto de páginas de um documento PDF para outro.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void MovingBunchOfPagesFromOnePdfDocumentToAnother()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Pages();

    // Open PDF documents
    using (var srcDocument = new Aspose.Pdf.Document(dataDir + "MovingBunchOfPagesInput.pdf"))
    {
        using (var dstDocument = new Aspose.Pdf.Document())
        {
            var pages = new[] { 1, 3 };
            foreach (int pageIndex in pages)
            {
                var page = srcDocument.Pages[pageIndex];
                dstDocument.Pages.Add(page);
            }
            // Save PDF document
            dstDocument.Save(dataDir + "MovingBunchOfPages_out.pdf");
            srcDocument.Pages.Delete(pages);
            // Save PDF document
            srcDocument.Save(dataDir + "MovingBunchOfPagesInput_out.pdf";
        }
    }
}

Movendo uma Página para um Novo Local no Documento PDF Atual

  1. Criar um objeto da classe Document com o arquivo PDF de origem.
  2. Obter a Página da coleção PageCollection.
  3. Adicionar a página ao novo local (por exemplo, ao final).
  4. Excluir a página no local anterior.
  5. Salvar o PDF de saída usando o método Save.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void MovingAPageInNewLocationInTheCurrentPdfDocument()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Pages();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "MovingAPageInNewLocationInTheCurrentPdfDocumentInput.pdf"))
    {
        var page = document.Pages[2];
        document.Pages.Add(page);
        document.Pages.Delete(2);
        // Save PDF document
        document.Save(dataDir + "MovingAPageInNewLocationInTheCurrentPdfDocument_out.pdf");
    }
}