欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時(shí)間:2018年01月18日 16:44:33   作者:E-iceblue  
這篇文章主要為大家詳細(xì)介紹了C#合并及拆分PDF文件的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

有時(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文件。  

合并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);
    }
  }
}

合并前:

合并后:

拆分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();
    }
  }
}

效果圖:

二、根據(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");
    }
  }
}

拆分前:

拆分后:

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

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

相關(guān)文章

最新評(píng)論