zoukankan      html  css  js  c++  java
  • 将一个目录中所有PDF文件合并到一个新的PDF文件中

    将一个目录中所有PDF文件合并到一个新的PDF文件中

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.IO;
    using System.Windows.Forms;
    using iTextSharp.text;//这个dll要引用
    using iTextSharp.text.pdf;
    using System.Windows.Forms;

    namespace ConsoleApplication1
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }

            private void button1_Click(object sender, EventArgs e)
            {
                mergePDFFiles(tb_path.Text, tb_result.Text);
            }
            /// <summary>
            /// PDF合并
            /// </summary>
            /// <param name="fileList">需要合并的PDF文件路径</param>
            /// <param name="outMergeFile">合并保存输出路径</param>
            public void mergePDFFiles(string filePath, string outMergeFile)
            {
                PdfReader reader;
                Document document = new Document();
                PdfWriter writer = PdfWriter.GetInstance(document, new FileStream(outMergeFile, FileMode.Create));
                document.Open();
                PdfContentByte cb = writer.DirectContent;
                PdfImportedPage newPage;
                string[] fileList = System.IO.Directory.GetFiles(filePath, "*.pdf");
                for (int i = 0; i < fileList.Length; i++)
                {
                    if (!File.Exists(fileList[i]))
                        continue;

                    reader = new PdfReader(fileList[i]);
                    int iPageNum = reader.NumberOfPages;
                    for (int j = 1; j <= iPageNum; j++)
                    {
                        document.NewPage();
                        newPage = writer.GetImportedPage(reader, j);
                        cb.AddTemplate(newPage, 0, 0);
                    }
                }
                document.Close();
            }

        }
    }

  • 相关阅读:
    Java Web 笔记(3)
    Java Web笔记(2)
    AndroidSystemDebug官方指导
    Android系统研究资料收集---站在前人的肩膀上
    算法--求出子序列中最大的和
    【CTS】几个serialno失败项
    GMS测试常用命令CTS&GTS&VTS
    cts-verifier测试流程
    通过例子手撕架构模式
    从0系统学Android--3.2四种基本布局
  • 原文地址:https://www.cnblogs.com/swtool/p/3832411.html
Copyright © 2011-2022 走看看