栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C# 合并、拆分多个PDF文档

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C# 合并、拆分多个PDF文档

在整理文件时,将多个同类型文档合并是实现文档归类的有效方法,也便于文档管理或者文档传输。当然,也可以对一些比较大的文件进行拆分来获取自己想要的部分文档。下面将通过C#代码示例介绍如何将多个PDF文档合并为一个,以及将一个PDF文档拆分为多个PDF文档。

使用工具

  • Free Spire.PDF for .NET(免费版)


C# 代码示例(供参考)

【示例1】合并多个PDF文档

using System;
using Spire.Pdf; 
namespace MergePDF
{    
  class Program
    {       
       static void Main(string[] args)        
         {            
           //创建一组数组实例,数组元素为需要合并的多个PDF文档的路径            
           String[] files = new String[] { "test1.pdf", "test2.pdf", "test3.pdf" };            
           
           //调用方法MergeFiles()合并文档            
           Pdfdocumentbase doc = Pdfdocument.MergeFiles(files);            
           
           //保存文档            
           doc.Save("合并.pdf", FileFormat.PDF);        
           }
      }
}

【示例2】拆分PDF文档

(一)按每页来拆分

using System;
using Spire.Pdf; 
namespace SplitPDF1
{    
  class Program    
    {        
       static void Main(string[] args)        
         {            
          //初始化一个Pdfdocument类实例,并从文件中加载需要被拆分的PDF文档            
          Pdfdocument doc = new Pdfdocument(@"C:UsersAdministratorDesktoptest.pdf");             
          
          //调用方法Split()方法将PDF文档按页拆分保存            
          String pattern = "拆分{0}.pdf";            
          doc.Split(pattern);        
          }    
     }
}

拆分结果:

拆分的文档个数与原文档页数相同。

(二)按指定页数拆分

using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing; 
namespace SplitPDF2
{    
   class Program    
      {        
          static void Main(string[] args)        
            {            
            //创建一个Pdfdocument类对象,并加载一个现有的PDF文档            
            Pdfdocument pdf = new Pdfdocument();            
            pdf.LoadFromFile(@"C:UsersAdministratorDesktop测试.pdf");            
            
            //新建1个PDF文档            
            Pdfdocument pdf1 = new Pdfdocument();            
            PdfPagebase page;                    
            //将现有的PDF文档的第1-5页拆分为一个文档            
            for (int i = 0; i < 4; i++)            
             {                
              //向新建文档添加与现有文档页面大小一致的页面                
              page = pdf1.Pages.Add(pdf.Pages[i].Size, new PdfMargins(0));                
              //为现有文档的页面创建模板并将模板画到新建文档的页面上                
              pdf.Pages[i].CreateTemplate().Draw(page, new PointF(0, 0));           
               }            
               //保存文档            
               pdf1.SaveToFile("1-5.pdf");             
               
               //新建第2个PDF文档            
               Pdfdocument pdf2 = new Pdfdocument();            
               //将现有PDF文档的第5-10页拆分为另一个文档            
               for (int i = 4; i < 9; i++)            
                {                
                 //向新建文档添加与现有文档页面大小一致的页面                
                 page = pdf2.Pages.Add(pdf.Pages[i].Size, new PdfMargins(0));                
                 //为现有文档的页面创建模板并将模板画到新建文档的页面上                
                 pdf.Pages[i].CreateTemplate().Draw(page, new PointF(0, 0));            
                 }            
                 //保存文档            
                 pdf2.SaveToFile("6-10.pdf");             
                 
                 //新建第3个PDF文档            
                 Pdfdocument pdf3 = new Pdfdocument();            
                 //将现有PDF文档的第10-15页拆分为另一个文档            
                 for (int i = 9; i < 14; i++)            
                 {                
                  //向新建文档添加与现有文档页面大小一致的页面                
                   page = pdf3.Pages.Add(pdf.Pages[i].Size, new PdfMargins(0));                
                  //为现有文档的页面创建模板并将模板画到新建文档的页面上                
                   pdf.Pages[i].CreateTemplate().Draw(page, new PointF(0, 0));            
                   }           
                   //保存文档            
                   pdf3.SaveToFile("11-15.pdf");        
                  }    
             }
        }


阅读拓展:C#合并、拆分PDF文档(视频教程)

(本文完)


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/230583.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号