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

PS: 本篇文章是对Free Spire.PDF 的合并功能的进一步介绍,即如何合并多个PDF文档中的指定页(指定单页、指定多页)为一个新文档,更多关于Free Spire.PDF对PDF文档的操作功能可参阅这里的博客。

使用工具:Free Spire.PDF for .NET

提示下载安装该组件后,注意在项目程序中添加引用Spire.PDF.dll文件

代码细节可参考以下主要代码段:

           //初始化数组,数组元素为需要合并的PDF文档
string[] files = { "sample1.pdf", "sample2.pdf" };
PdfDocument[] docs = new PdfDocument[files.Length];
//遍历PDF文档
for (int i = ; i < files.Length; i++)
{
docs[i] = new PdfDocument();
docs[i].LoadFromFile(files[i]);
}
//创建一个新的PDF文档并插入从原文档选取的指定页
PdfDocument doc = new PdfDocument();
doc.InsertPage(docs[], );//指定单页
doc.InsertPageRange(docs[], , );//指定多页 //保存并命名合并后的文档,同时运行文档
doc.SaveToFile("Result.pdf");
Process.Start("Result.pdf");

合并前:

合并后:

全部代码

C#

using Spire.Pdf;
using System.Diagnostics; namespace MergeSelectedPDFpages
{
class Program
{
static void Main(string[] args)
{
string[] files = { "sample1.pdf", "sample2.pdf" };
PdfDocument[] docs = new PdfDocument[files.Length]; for (int i = ; i < files.Length; i++)
{
docs[i] = new PdfDocument();
docs[i].LoadFromFile(files[i]);
} PdfDocument doc = new PdfDocument();
doc.InsertPage(docs[], );
doc.InsertPageRange(docs[], , ); doc.SaveToFile("Result.pdf");
Process.Start("Result.pdf");
}
}
}

VB.NET

Imports Spire.Pdf
Imports System.Diagnostics Namespace MergeSelectedPDFpages Class Program Private Shared Sub Main(ByVal args() As String)
Dim files() As String = New String() {"sample1.pdf", "sample2.pdf"}
Dim docs() As PdfDocument = New PdfDocument((files.Length) - ) {}
Dim i As Integer =
Do While (i < files.Length)
docs(i) = New PdfDocument
docs(i).LoadFromFile(files(i))
i = (i + )
Loop Dim doc As PdfDocument = New PdfDocument
doc.InsertPage(docs(), )
doc.InsertPageRange(docs(), , )
doc.SaveToFile("Result.pdf")
Process.Start("Result.pdf")
End Sub
End Class
End Namespace

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

感谢阅读!

C# / VB.NET合并PDF指定页的更多相关文章

  1. C#/VB.NET 合并PDF页面

    本文以C#及vb.net代码为例介绍如何来实现合并PDF页面内容.本文中的合并并非将两个文档简单合并为一个文档,而是将多个页面内容合并到一个页面,目的是减少页面上的空白区域,使页面布局更为紧凑.合理. ...

  2. C#/VB.NET 设置PDF跨页表格重复显示表头行

    在创建表格时,如果表格内容出现跨页显示的时候,默认情况下该表格的表头不会在下一页显示,在阅读体验上不是很好.下面分享一个方法如何在表格跨页时显示表格的表头内容,在C#中只需要简单使用方法grid.Re ...

  3. java实现截取PDF指定页并进行图片格式转换

    1.引入依赖 <dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>pdfbox& ...

  4. word文档转pdf,支持.doc和.docx,另附抽取pdf指定页数的方法

    公司有个需求,需要将word转成pdf并且抽取首页用以展示,word文档有需要兼容.doc和.docx两种文档格式.其中.docx通过poi直接就可以将word转成pdf,.doc则无法这样实现,上网 ...

  5. Java 设置PDF跨页表格重复显示表头行

    在创建表格时,如果表格内容出现跨页显示的时候,默认情况下该表格的表头不会在下一页显示,在阅读体验上不是很好.下面分享一个方法如何在表格跨页是显示表格的表头内容,这里只需要简单使用方法 grid.set ...

  6. iTextSharp之pdfRead(两个文件文本内容的比较,指定页数的pdf截取,水印的添加)

    using iTextSharp.text; using iTextSharp.text.pdf; using iTextSharp.text.pdf.parser; using System; us ...

  7. rails 里js 在production 只合并不压缩等问题,以及assets pipeline 加载js 在指定页面上

    因为刚学rails,试着做了一个小系统操作微信公共帐号, 之后部署的时候遇见了一个问题,整套系统在互联网端访问,非常的慢,而在手机端访问,10s后才会有响应, 打开chrome的调试工具,发现appl ...

  8. Aspose.Pdf合并PDF文件

    使用Aspose.Pdf类库,有很多种方法可以合并PDF文件,这里简单介绍小生见到的几种: Doucment.Pages.Add PdfFileEditor.Append PdfFileEditor. ...

  9. C# vb .NET从pdf读取识别条形码线性条码

    如何在C#,vb等.NET平台语言里实现快速准确从pdf文件读取,或者从Pdf指定页面读取条形码或QR二维码呢?答案是使用SharpBarcode! SharpBarcode是C#快速高效.准确的条形 ...

随机推荐

  1. iOS7 CookBook精彩瞬间(三)UIActivityViewController的基本使用及自定义Activity

    1.基本使用 UIActivityViewController主要用于分享内容,创建activityView的方法很简单,调用下面的方法创建: [[UIActivityViewController a ...

  2. 【Android应用开发】分享一个录制 Android 屏幕 gif 格式的小技巧

    因为写博客总是需要录制 Android 软件的演示效果, 研究了将近一小时找到了合适的工具; 录制流程 : -- 1. 录制 Android 手机屏幕内容 : 使用 拍大师 软件录制 Android ...

  3. 如何解决RK3168或者RK系列MASKROM的问题

    不知道使用RK芯片的小伙伴有没有遇到我这样的问题,在用Android-Tool下载相应 IMG的时候,正常情况下,按电源键和音量+键应该出现loader下载模式,但是却出现MASKROM的字样,以前不 ...

  4. JAVA代码规范笔记(下)

    声明 17.推荐一行一个声明,因为这样有利于写注释.换句话说,下面的声明方法中, int level; // indentation level int size; // size of table ...

  5. iOS开发之四:常用控件--UIButton的使用

    在介绍UIButton的用法前,要先了解一下它的父类UIControl,UIControl是所有具有事件处理功能控件的父类. 而该类控件一般响应事件又有三种形式:基于触摸.基础值.基础编辑.控件的层次 ...

  6. Cocos2D将v1.0的tileMap游戏转换到v3.4中一例(七)

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 打开SpriteBuilder,在文件视图中新建一个文件夹Fon ...

  7. Android进阶(二十五)setTextColor()的参数设置方式

    setTextColor()的参数设置方式 查了下资料发现setTextColor()的参数可以写成以下形式: 直接使用颜色值 setTextColor(0xFF0000FF);//0xFF0000F ...

  8. ArrayList与Vector的区别

    ArrayList与Vector的区别 相同 这两个类都实现了List接口. 他们都是有序集合. 不同 ArrayList实现不是同步的,Vector实现是同步的. ArrayList与Vector都 ...

  9. leetcode 204题求素数个数

        Description: Count the number of prime numbers less than a non-negative number, n 提示晒数法: http:// ...

  10. Oracle中job的实例

    一.Oracle定时器(Job)各时间段写法汇总 对于DBA来说,数据库Job再熟悉不过了,因为经常要数据库定时的自动执行一些脚本,或做数据库备份,或做数据的提炼,或做数据库的性能优化,包括重建索引等 ...