查看: 1814|回复: 0

[.NET源码] C# / VB.NET合并PDF指定页

发表于 2018-3-5 08:00:00

在前面的文章中,我们已经知道如何合并、拆分多个PDF文件,在这篇文章中的合并、拆分PDF文档主要是以方便文档管理的目的来操作文档,在文档查阅、管理及存储上很方便实用。但是我们如果想要合并多个文档中的部分文档页的内容,该如何来做呢?可以参考接下来将要介绍的合并方法。

PS: 本篇文章是对Free Spire.PDF 的合并功能的进一步介绍,即如何合并多个PDF文档中的指定页(指定单页、指定多页)为一个新文档
使用工具:Free Spire.PDF for .NET
提示:下载安装该组件后,注意在项目程序中添加引用Spire.PDF.dll文件
代码细节可参考以下主要代码段:

  1. //初始化数组,数组元素为需要合并的PDF文档
  2. string[] files = { "sample1.pdf", "sample2.pdf" };
  3. PdfDocument[] docs = new PdfDocument[files.Length];
  4. //遍历PDF文档
  5. for (int i = 0; i < files.Length; i++)
  6. {
  7. docs[i] = new PdfDocument();
  8. docs[i].LoadFromFile(files[i]);
  9. }
  10. //创建一个新的PDF文档并插入从原文档选取的指定页
  11. PdfDocument doc = new PdfDocument();
  12. doc.InsertPage(docs[0], 0);//指定单页(文档1的第1页)
  13. doc.InsertPageRange(docs[1], 0, 1);//指定多页 (文档2的第1页和第2页)
  14. //保存并命名合并后的文档,同时运行文档
  15. doc.SaveToFile("Result.pdf");
  16. Process.Start("Result.pdf");
复制代码

合并前:
C# / VB.NET合并PDF指定页
合并后:
C# / VB.NET合并PDF指定页

全部代码
C#

  1. using Spire.Pdf;
  2. using System.Diagnostics;
  3. namespace MergeSelectedPDFpages
  4. {
  5. class Program
  6. {
  7. static void Main(string[] args)
  8. {
  9. string[] files = { "sample1.pdf", "sample2.pdf" };
  10. PdfDocument[] docs = new PdfDocument[files.Length];
  11. for (int i = 0; i < files.Length; i++)
  12. {
  13. docs[i] = new PdfDocument();
  14. docs[i].LoadFromFile(files[i]);
  15. }
  16. PdfDocument doc = new PdfDocument();
  17. doc.InsertPage(docs[0], 0);
  18. doc.InsertPageRange(docs[1], 0, 1);
  19. doc.SaveToFile("Result.pdf");
  20. Process.Start("Result.pdf");
  21. }
  22. }
  23. }
复制代码

VB.NET

  1. Imports Spire.Pdf
  2. Imports System.Diagnostics
  3. Namespace MergeSelectedPDFpages
  4. Class Program
  5. Private Shared Sub Main(ByVal args() As String)
  6. Dim files() As String = New String() {"sample1.pdf", "sample2.pdf"}
  7. Dim docs() As PdfDocument = New PdfDocument((files.Length) - 1) {}
  8. Dim i As Integer = 0
  9. Do While (i < files.Length)
  10. docs(i) = New PdfDocument
  11. docs(i).LoadFromFile(files(i))
  12. i = (i + 1)
  13. Loop
  14. Dim doc As PdfDocument = New PdfDocument
  15. doc.InsertPage(docs(0), 0)
  16. doc.InsertPageRange(docs(1), 0, 1)
  17. doc.SaveToFile("Result.pdf")
  18. Process.Start("Result.pdf")
  19. End Sub
  20. End Class
  21. End Namespace
复制代码

以上内容是本次关于“如何合并PDF文档指定页”的全部介绍,如果喜欢,欢迎转载(转载请注明出处)
感谢阅读!



回复

使用道具 举报