Spire.PDF for .NET【文档操作】演示:将新的 PDF 页面插入到指定索引处的现有 PDF 中

Spire.PDF 完美支持将多页 PDF 拆分为单页。但是,更常见的情况是,您可能希望提取选定的页面范围并保存为新的 PDF 文档。在本文中,您将学习如何通过 Spire.PDF 在 C#、VB.NET 中根据页面范围拆分 PDF 文件。

Spire.PDF for .NET 是一款独立 PDF 控件,用于 .NET 程序中创建、编辑和操作 PDF 文档。使用 Spire.PDF 类库,开发人员可以新建一个 PDF 文档或者对现有的 PDF 文档进行处理,且无需安装 Adobe Acrobat。

E-iceblue功能类库Spire 系列文档处理组件均由中国本土团队研发,不依赖第三方软件,不受其他国家的技术或法律法规限制,同时适配国产操作系统如中科方德、中标麒麟等,兼容国产文档处理软件 WPS(如 .wps/.et/.dps 等格式**(qun:767755948)**

Spire.PDF for.net下载 Spire.PDF for java下载

Spire.PDF 提供了 PdfDocument.MergeFiles(); 方法,使开发人员能够轻松便捷地合并 PDF 文件。本文将向您展示如何使用 Spire.PDF 提供的 Pages.Insert(); 方法将第一个 PDF 中的新页面插入到第二个 PDF 文件的指定索引处。

注意:开始之前,请下载最新版本的Spire.PDF,并将Spire.PDF.dll添加到bin文件夹中作为Visual Studio的引用。

以下是将第一个 PDF(sample.pdf)中的页面插入到第二个 PDF(test.pdf)的指定索引处的步骤:

步骤1:创建第一个PDF文档并加载文件。

复制代码
PdfDocument doc1 = new PdfDocument();
doc1.LoadFromFile("sample.pdf");

第 2 步:创建第二个 PDF 文档并加载文件。

复制代码
PdfDocument doc2 = new PdfDocument();
doc2.LoadFromFile("test.pdf");

步骤 3:从第一个 PDF 文档中获取第一页及其大小。

复制代码
PdfPageBase page = doc1.Pages[0];
SizeF size = page.Size;

步骤 4:在第二个 PDF 的指定索引处插入具有指定大小的新空白页。

复制代码
PdfPageBase newPage = doc2.Pages.Insert(1, size);

步骤5:将页面上的内容复制到第二个PDF中。

复制代码
newPage.Canvas.DrawTemplate(page.CreateTemplate(), new PointF(0, 0));

步骤 6:将文档保存到文件。

复制代码
doc2.SaveToFile("result.pdf");

在指定索引处的现有 PDF 中插入新 PDF 页面的有效屏幕截图:

完整代码:

复制代码
using Spire.Pdf;
using System.Drawing;

namespace InsertNewPage
{
class Program
{
static void Main(string[] args)
{
PdfDocument doc1 = new PdfDocument();
doc1.LoadFromFile("sample.pdf");
PdfDocument doc2 = new PdfDocument();
doc2.LoadFromFile("test.pdf");

PdfPageBase page = doc1.Pages[0];
SizeF size = page.Size;

PdfPageBase newPage = doc2.Pages.Insert(1, size);
newPage.Canvas.DrawTemplate(page.CreateTemplate(), new PointF(0, 0));

doc2.SaveToFile("result.pdf");
}
}
}
相关推荐
love530love2 小时前
【保姆级教程】阿里 Wan2.1-T2V-14B 模型本地部署全流程:从环境配置到视频生成(附避坑指南)
人工智能·windows·python·开源·大模型·github·音视频
FL16238631292 小时前
Windows Server2012 R2 安装.NET Framework 3.5
.net
He1955012 小时前
Go初级之十:错误处理与程序健壮性
开发语言·python·golang
和鲸社区3 小时前
《斯坦福CS336》作业1开源,从0手搓大模型|代码复现+免环境配置
人工智能·python·深度学习·计算机视觉·语言模型·自然语言处理·nlp
weixin_584121433 小时前
vue3+ts导出PDF
javascript·vue.js·pdf
豌豆花下猫3 小时前
Python 潮流周刊#118:Python 异步为何不够流行?(摘要)
后端·python·ai
THMAIL3 小时前
深度学习从入门到精通 - LSTM与GRU深度剖析:破解长序列记忆遗忘困境
人工智能·python·深度学习·算法·机器学习·逻辑回归·lstm
wheeldown4 小时前
【数学建模】数据预处理入门:从理论到动手操作
python·数学建模·matlab·python3.11
多打代码4 小时前
2025.09.05 用队列实现栈 & 有效的括号 & 删除字符串中的所有相邻重复项
python·算法
@CLoudbays_Martin114 小时前
为什么动态视频业务内容不可以被CDN静态缓存?
java·运维·服务器·javascript·网络·python·php