C#/VB.NET 合并PDF页面
本文以C#及vb.net代码为例介绍如何来实现合并PDF页面内容。本文中的合并并非将两个文档简单合并为一个文档,而是将多个页面内容合并到一个页面,目的是减少页面上的空白区域,使页面布局更为紧凑、合理。下面,将分别从两个示例来展示合并,即:
- 从两个PDF文档页面实现页面合并
- 在同一个PDF文档实现页面合并
【程序环境】
方法1
在程序中引入Spire.Pdf.dll文件;将 Free Spire.PDF for .NET下载到本地,解压,安装。安装完成后,找到安装路径下BIN文件夹中的Spire.Pdf.dll。然后在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“添加引用”,将本地路径BIN文件夹下的dll文件添加引用至程序。
方法2
通过 NuGet 安装。可通过以下2种方法安装:
1. 可以在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“管理NuGet包”,然后搜索“ Free Spire.PDF ”,点击“安装”。等待程序安装完成。
2. 将以下内容复制到PM控制台安装:
Install-Package FreeSpire.PDF -Version 8.2.0
【代码示例】
1.从两个PDF文档页面实现页面合并
(合并前)需要将文件1的内容合并到文件2的第二页空白处:
C#
using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;namespace MergePages
{class Program{static void Main(string[] args){//加载两个PDF文档PdfDocument pdf1 = new PdfDocument();pdf1.LoadFromFile("test1.pdf");PdfDocument pdf2 = new PdfDocument();pdf2.LoadFromFile("test2.pdf");//创建模板PdfTemplate template = pdf1.Pages[0].CreateTemplate();//获取文档2中的第2页PdfPageBase page2 = pdf2.Pages[1];//设置透明度page2.Canvas.SetTransparency(1f, 1f, PdfBlendMode.Overlay);//在页面指定位置绘制模板page2.Canvas.DrawTemplate(template, new PointF(0, 300)); //保存文档pdf2.SaveToFile("mergepages.pdf");}}
}
合并后的效果:
VB.NET
Imports Spire.Pdf
Imports Spire.Pdf.Graphics
Imports System.DrawingNamespace MergePagesClass ProgramPrivate Shared Sub Main(args As String())'加载两个PDF文档Dim pdf1 As New PdfDocument()pdf1.LoadFromFile("test1.pdf")Dim pdf2 As New PdfDocument()pdf2.LoadFromFile("test2.pdf")'创建模板Dim template As PdfTemplate = pdf1.Pages(0).CreateTemplate()'获取文档2中的第2页Dim page2 As PdfPageBase = pdf2.Pages(1)'设置透明度page2.Canvas.SetTransparency(1F, 1F, PdfBlendMode.Overlay)'在页面指定位置绘制模板page2.Canvas.DrawTemplate(template, New PointF(0, 300))'保存文档pdf2.SaveToFile("mergepages.pdf")End SubEnd Class
End Namespace
2.在同一个PDF文档实现页面合并
(合并前)将同一个文档中,第2页中的内容绘制到第1页空白处,并删掉多余的空白页:
C#
using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;namespace MergePage2
{class Program{static void Main(string[] args){//加载PDF文档PdfDocument pdf = new PdfDocument("sample.pdf");//创建模板PdfTemplate template = pdf.Pages[1].CreateTemplate();//获取第一个页面PdfPageBase page1 = pdf.Pages[0];//获取第二个页面PdfPageBase page2 = pdf.Pages[1];//设置透明度和重叠样式 page2.Canvas.SetTransparency(1f, 1f, PdfBlendMode.Overlay);//将第二页中的内容绘制到第一页指定位置page1.Canvas.DrawTemplate(template, new PointF(0, 240));//删除第二页`pdf.Pages.RemoveAt(1);//保存文档pdf.SaveToFile("MergePage2.pdf",FileFormat.PDF);}}
}
合并后的效果:
VB.NET
Imports Spire.Pdf
Imports Spire.Pdf.Graphics
Imports System.DrawingNamespace MergePage2Class ProgramPrivate Shared Sub Main(args As String())'加载PDF文档Dim pdf As New PdfDocument("sample.pdf")'创建模板Dim template As PdfTemplate = pdf.Pages(1).CreateTemplate()'获取第一个页面Dim page1 As PdfPageBase = pdf.Pages(0)'获取第二个页面Dim page2 As PdfPageBase = pdf.Pages(1)'设置透明度和重叠样式 page2.Canvas.SetTransparency(1F, 1F, PdfBlendMode.Overlay)'将第二页中的内容绘制到第一页指定位置page1.Canvas.DrawTemplate(template, New PointF(0, 240))'删除第二页`pdf.Pages.RemoveAt(1)'保存文档pdf.SaveToFile("MergePage2.pdf", FileFormat.PDF)End SubEnd Class
End Namespace
★ 相关阅读推荐:C# 合并及拆分PDF文件
—END—
C#/VB.NET 合并PDF页面相关推荐
- C#VB.NET 合并PDF页面
本文以C#及vb.net代码为例介绍如何来实现合并PDF页面内容.本文中的合并并非将两个文档简单合并为一个文档,而是将多个页面内容合并到一个页面,目的是减少页面上的空白区域,使页面布局更为紧凑.合理. ...
- C# / VB.NET合并PDF指定页
在前面的文章中,我们已经知道如何合并.拆分多个PDF文件,在这篇文章中的合并.拆分PDF文档主要是以方便文档管理的目的来操作文档,在文档查阅.管理及存储上很方便实用.但是我们如果想要合并多个文档中的部 ...
- 2022年最简单旋转PDF页面的方法推荐
有时候,我们打开一个PDF文件就会发现,有些PDF页面会被颠倒或错误旋转,会影响我们阅读,那遇到这种情况,要如何将其旋转到正确的位置?今天我们就借助金闪PDF编辑器给大家推荐几个简单的旋转PDF页面的 ...
- 如何插入Word文件内容到PDF,或者混合重新排列多个PDF页面
随着互联网快速发展,我们在日常工作中经常要使用和管理大量的PDF文档.你可能会发现自己时常需要操作和调整PDF页面顺序,或将一些页面从一个PDF文件插入到另一个中.一般的PDF编辑器虽然功能强大但使用 ...
- 编辑器的合并用不了_为什么图片和PDF合并后的PDF页面大小不一
很多时候我们需要将图片和PDF文件合并后变成一个PDF文件,但经常会出现合并后的新PDF文件页面大小不一,这是怎么回事呢?要怎么处理呢? 可能有些小伙伴还不知道如何将图片和PDF进行合并,先简单说一下 ...
- 页面显示pdf_PDF怎样合并?在Mac上合并PDF文件的最佳方法
在保存编辑内容的同时合并PDF文件可能是一个大问题.合并大文件时,"预览"不涵盖展平,并且会使系统变慢.这些和其他问题可能会迫使您寻找更好的选择.让我们探索在Mac上组合PDF以涵 ...
- pdf 改变页面大小 python_用Python开发PDF编辑器,实现PDF页面提取,页面合并与替换...
对于PDF页面提取,我们的开发思路是这样子的.我们设计一个表单,让用户上传一个PDF文件并输入提取页面号码.服务器在收到PDF文件后使用PyPDF2读取用户上传的PDF文件,提取我们所需要的页面,然后 ...
- 使用PDF编辑器进行PDF合并与PDF页面提取
随着PDF文档在工作学习上越来越受欢迎,与PDF相关的操作大家都必须懂得一些,比如说简单的PDF合并与PDF页面提取.PDF合并能够将零散地页面汇总在一起,方便查看,也方便统一传输:而将PDF文档里需 ...
- 为什么图片和PDF合并后的PDF页面大小不一
很多时候我们需要将图片和PDF文件合并后变成一个PDF文件,但经常会出现合并后的新PDF文件页面大小不一,这是怎么回事呢?要怎么处理呢? 可能有些小伙伴还不知道如何将图片和PDF进行合并,先简单说一下 ...
- Spire.PDF:如何添加、删除PDF页面以及自定义文档属性
更多资源查看:Spire.XLS工作表教程 | Spire.Doc系列教程 | Spire.PDF系列教程 [下载Spire.PDF最新试用版] Spire.PDF是一个专业的PDF组件,能够独立地创 ...
最新文章
- 如何使用JPA注解标注多对多的关系
- 【裴蜀定理】[HAOI2011]向量
- 简书上的大牛总结的 ServerSocket Accept() 的确是阻塞方法 与猜想一致 一些理解 转载如下
- php register_shutdown_function
- Hadoop平台作业参数设置关于mapreduce.job.split.metainfo.maxsize的说明
- 横河川仪压力变送器故障代码_YOKOGAWA/重庆横河川仪EJA变送器三大优秀性能!
- 图像处理与图像识别笔记(五)图像增强2
- 数据结构之线性表:顺序线性表 Java 实现(底层基于数组)
- 解析淘宝商城缘何更名“天猫”
- 三维绘图之Mayavi.mlab
- 厨房电器机械EN60335-2-14检测标准及项目
- UnityMMO资源整合服务器部署
- MongoSocketOpenException: Exception opening socket
- 软件设计师必考精华 - 面相对象
- 高景一号01星遥感影像解译数据分辨率是多少
- 重庆邮电大学 计算机学院导师,宋秀丽_重庆邮电大学研究生导师信息
- 如果你看ARCore看的一脸懵的话,就来看看这个,带你入门
- PA,MIOU,FWIOU
- 互联网概述, 分组交换, 网络类别, 网络拓扑结构
- Ubuntu python3安装pandas【问题解决】