欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C# 复制PDF文档 博客分类: .NET PDF C#.NETPDF复制类库 

程序员文章站 2024-03-25 14:42:58
...

通过复制文件可对某些重要文档进行保存备案,对后期的文档管理、查询等比较方便。对于PDF文档的复制,我们可以通过使用类库来实现。下面的示例中演示了如何通过C#编程来复制PDF文档的方法。

示例要点如下:

1.从A文件复制到B文件

2.在同一文件内复制

 

工具

PS:下载安装后,注意在程序添加引用Spire.Pdf.dll(dll可在安装路径下的Bin文件夹下获取)


C# 复制PDF文档
            
    
    博客分类: .NET PDF C#.NETPDF复制类库 
 

代码示例(供参考)

 

【示例1】从A文件复制到B文件(跨文件复制)

using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;

namespace Copy_PDF
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建两个文档,分别加载两个测试文档
            PdfDocument doc1 = new PdfDocument();
            doc1.LoadFromFile("test1.pdf");
            PdfDocument doc2 = new PdfDocument();
            doc2.LoadFromFile("test2.pdf");

            //获取文档1中的第一页以及它的页面大小,并基于第一页创建一个PDF模板
            PdfPageBase page = doc1.Pages[0];
            SizeF size = page.Size;
            PdfTemplate template = page.CreateTemplate();

            //复制第一个PDF文档的第一页到第二个PDF文档中
            /*这里调用Insert(int index, SizeF size, PdfMargins margins)方法,
            在文档2中,插入一个和第一页大小一致的新页面到该文档的指定位置(这里是第3页),然后将步骤3中创建的模板应用到该页面*/
            doc2.Pages.Insert(2, size, new PdfMargins(0, 0));
            doc2.Pages[2].Canvas.DrawTemplate(template, new PointF(0, 0));

            //将文档2保存,并打开
            doc2.SaveToFile("result.pdf");
            System.Diagnostics.Process.Start("result.pdf");
        }
    }
}

 

 

 

两个测试文档:


C# 复制PDF文档
            
    
    博客分类: .NET PDF C#.NETPDF复制类库 
 

 

复制结果:
C# 复制PDF文档
            
    
    博客分类: .NET PDF C#.NETPDF复制类库 
 

 

【示例2】在同一文件中复制

 

using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;

namespace Copy2_PDF
{
    class Program
    {
        static void Main(string[] args)
        {
            //实例化PdfDocument类,并加载测试文档
            PdfDocument pdf = new PdfDocument("Sample.pdf");

            //获取文档第1页及页面大小,并创建复制模板
            PdfPageBase page = pdf.Pages[0];
            SizeF size = page.Size;
            PdfTemplate template = page.CreateTemplate();


            //基于第1页的页面大小,添加新1页到文档,并将模板绘制到新的页面(循环复制)
            for (int i = 0; i < 3; i++)
            {
                page = pdf.Pages.Add(size, new PdfMargins(0));
                page.Canvas.DrawTemplate(template, new PointF(0, 0));
            }

            //保存并打开文档
            pdf.SaveToFile("Result.pdf");
            System.Diagnostics.Process.Start("Result.pdf");
        }
    }
}

 复制结果:


C# 复制PDF文档
            
    
    博客分类: .NET PDF C#.NETPDF复制类库 
 

(本文完)

 

 

 

  • C# 复制PDF文档
            
    
    博客分类: .NET PDF C#.NETPDF复制类库 
  • 大小: 17 KB
  • C# 复制PDF文档
            
    
    博客分类: .NET PDF C#.NETPDF复制类库 
  • 大小: 258.5 KB
  • C# 复制PDF文档
            
    
    博客分类: .NET PDF C#.NETPDF复制类库 
  • 大小: 472.7 KB
  • C# 复制PDF文档
            
    
    博客分类: .NET PDF C#.NETPDF复制类库 
  • 大小: 657.7 KB