删除 PDF 页面

如果您想从位于磁盘上的 PDF 文件中删除多个页面,则可以使用 Delete 方法的重载,该方法接受以下三个参数:输入文件路径、要删除的页面编号数组和输出 PDF 文件路径。第二个参数是一个整数数组,表示需要删除的所有页面。指定的页面将从输入文件中删除,结果将保存为输出文件。以下代码片段演示了如何使用文件路径删除 PDF 页面。

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void DeletePages()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdfFacades_Pages();
    // Create PdfFileEditor object
    var pdfEditor = new Aspose.Pdf.Facades.PdfFileEditor();
    // Array of pages to delete
    var pagesToDelete = new int[] { 1, 2 };
    // Delete pages
    pdfEditor.Delete(dataDir + "DeletePagesInput.pdf", pagesToDelete, dataDir + "DeletePagesUsingFilePath_out.pdf");
}

使用流删除 PDF 页面

PdfFileEditor 类的 Delete 方法还提供了一个重载,允许您在输入和输出文件都在流中的情况下,从输入 PDF 文件中删除页面。此重载接受以下三个参数:输入流、要删除的 PDF 页面整数数组和输出流。以下代码片段演示了如何使用流删除 PDF 页面。

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void DeletePagesUsingStreams()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdfFacades_Pages();
    // Create PdfFileEditor object
    var pdfEditor = new Aspose.Pdf.Facades.PdfFileEditor();
    // Create streams
    using (var inputStream = new FileStream(dataDir + "DeletePagesInput.pdf", FileMode.Open))
    {
        using (var outputStream = new FileStream(dataDir + "DeletePagesUsingStream_out.pdf", FileMode.Create))
        {
            // Array of pages to delete
            var pagesToDelete = new int[] { 1, 2 };
            // Delete pages
            pdfEditor.Delete(inputStream, pagesToDelete, outputStream);
        }
    }
}