国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > C# > 正文

C#實(shí)現(xiàn)合并及拆分PDF文件的方法

2019-10-29 21:06:24
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

有時(shí)我們可能會(huì)遇到下圖這樣一種情況 — 我們需要的資料或教程被分成了幾部分存放在多個(gè)PDF文件中,不管是閱讀還是保存都不是很方便,這時(shí)我們肯定想要把這些PDF文件合并為一個(gè)PDF文件。相對(duì)應(yīng)的,有時(shí)候我們也需要拆分一個(gè)大的PDF文件,來(lái)從中獲取我們需要的那一部分資料。這篇文章主要分享如何使用C#來(lái)將多個(gè)PDF文件合并為一個(gè)PDF文件以及將一個(gè)PDF文件拆分為多個(gè)PDF文件。  

C#,合并,PDF,拆分

合并PDF文件

合并PDF文件的代碼很簡(jiǎn)單,主要分為三步,首先獲取需要合并的PDF文件,然后調(diào)用public static PdfDocumentBase MergeFiles(string[] InputFiles)方法,將這些PDF文件合并,然后保存文件。

代碼如下:

using System;using Spire.Pdf;namespace 合并PDF文件{  class Program  {    static void Main(string[] args)    {      String[] files = new String[] { "文件1.pdf", "文件2.pdf", "文件3.pdf" };      string outputFile = "輸出.pdf";      PdfDocumentBase doc = PdfDocument.MergeFiles(files);      doc.Save(outputFile, FileFormat.PDF);      System.Diagnostics.Process.Start(outputFile);    }  }}

合并前:

C#,合并,PDF,拆分

合并后:

C#,合并,PDF,拆分

拆分PDF文件

在拆分PDF文件時(shí),我們可以選擇將文件的每一頁(yè)單獨(dú)拆分為一個(gè)PDF文件,還可以設(shè)定頁(yè)碼范圍,將其拆分為多個(gè)PDF文件。下面將分兩個(gè)部分來(lái)介紹。

一、將PDF文件的每一頁(yè)拆分為一個(gè)單獨(dú)的PDF文件

在上一個(gè)部分中,合并后的PDF文件一共有4頁(yè),這里我將它的每一頁(yè)拆分為一個(gè)單獨(dú)的PDF文件。

代碼如下:

using System;using Spire.Pdf; namespace 拆分PDF文件1{  class Program  {    static void Main(string[] args)    {      PdfDocument doc = new PdfDocument("輸出.pdf");      String pattern = "拆分-{0}.pdf";      doc.Split(pattern);      doc.Close();    }  }}

效果圖:

C#,合并,PDF,拆分

二、根據(jù)指定頁(yè)面范圍拆分PDF文件

這里我將一個(gè)18頁(yè)的PDF文件的前10頁(yè)拆分為一個(gè)PDF文件,后8頁(yè)拆分為另一個(gè)PDF文件。 

代碼如下:

using System.Drawing;using Spire.Pdf;using Spire.Pdf.Graphics; namespace 拆分PDF文件2{  class Program  {    static void Main(string[] args)    {      PdfDocument pdf = new PdfDocument();      pdf.LoadFromFile("各種點(diǎn)心的做法.pdf");       PdfDocument pdf1 = new PdfDocument();      PdfPageBase page;      for (int i = 0; i < 10; i++)      {        page = pdf1.Pages.Add(pdf.Pages[i].Size, new PdfMargins(0));        pdf.Pages[i].CreateTemplate().Draw(page, new PointF(0, 0));      }      pdf1.SaveToFile("DOC_1.pdf");       PdfDocument pdf2 = new PdfDocument();      for (int i = 10; i < 18; i++)      {        page = pdf2.Pages.Add(pdf.Pages[i].Size, new PdfMargins(0));        pdf.Pages[i].CreateTemplate().Draw(page, new PointF(0, 0));      }      pdf2.SaveToFile("DOC_2.pdf");    }  }}

拆分前:

C#,合并,PDF,拆分

拆分后:

C#,合并,PDF,拆分

Note: 這里我使用了一個(gè)PDF組件Spire.PDF.

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到c#教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 灵台县| 元朗区| 巍山| 汶上县| 万山特区| 岑巩县| 富顺县| 石台县| 临洮县| 北碚区| 井陉县| 太和县| 贵州省| 阿拉善右旗| 钟山县| 雷州市| 桂林市| 开化县| 中超| 祁连县| 遂溪县| 定结县| 华宁县| 湖口县| 和田县| 日照市| 彭阳县| 青田县| 乡城县| 山西省| 民和| 鹤岗市| 兴文县| 石阡县| 于田县| 万州区| 五寨县| 喀喇| 彭阳县| 大足县| 山东省|