基本信息
源码名称:C#打印pdf文档/word文档 源码
源码大小:0.28M
文件格式:.rar
开发语言:C#
更新时间:2016-03-25
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559

本次赞助数额为: 2 元 
   源码介绍

打印dpf,word文档

注释掉这块代码 即可 运行 if(Register.AppRegister.checkLicence("PRINT"))

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using Novacode;
using System.Threading;
using System.Diagnostics;
using System.Drawing.Printing;
using System.Management;
using System.Printing;

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

        private void button1_Click(object sender, EventArgs e)
        {
            if (this.folderBrowserDialog1.ShowDialog() == DialogResult.OK)
            {
                this.textBox1.Text = this.folderBrowserDialog1.SelectedPath;
                this.openFileDialog1.InitialDirectory = Path.GetDirectoryName(this.folderBrowserDialog1.SelectedPath);
            }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            if (this.openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                this.textBox2.Text = this.openFileDialog1.FileName;
            }
        }

        private void button4_Click(object sender, EventArgs e)
        {
            if (this.button4.Text == "关闭")
                this.Close();


        }

        /// <summary>
        /// 文本框显示的文字
        /// </summary>
        /// <param name="text"></param>
        /// <param name="append">是否为追加的文本</param>
        private void showState(string text, bool isAppendText = true)
        {
            if (isAppendText)
                this.richTextBox.Text  = text;
            else
                this.richTextBox.Text = text;
            this.richTextBox.SelectionStart = this.richTextBox.Text.Length;
            this.richTextBox.SelectionLength = 0;
            this.richTextBox.Focus();
            this.Update();
        }

        private void button3_Click(object sender, EventArgs e)
        {

            showState("开始运行...", false);
            try
            {

                Process p1, p2;
                ProcessStartInfo startInfo = new ProcessStartInfo();
                startInfo.UseShellExecute = true;
                startInfo.Verb = "Print";
                startInfo.CreateNoWindow = true;
                startInfo.WindowStyle = ProcessWindowStyle.Hidden;

                showState("\n正在打印核查表...");
                p2 = new Process();
                startInfo.FileName = this.textBox2.Text;
                p2.StartInfo = startInfo;
                p2.Start();
                p2.WaitForExit();


                showState("\n打印成果表...");
                using (DocX doc = DocX.Load(this.textBox2.Text))
                {
                    string state = this.richTextBox.Text;
                    for (int i = 0; i < doc.Tables.Count; i  )
                    {
                        string DJH = doc.Tables[i].Rows[4].Cells[2].Paragraphs[0].Text.Trim();
                        string fileName = this.textBox1.Text   "\\"   DJH   ".pdf";
                        //   string fileName = "C:\\1.txt";
                        if (File.Exists(fileName))
                        {
                            //string tempFile = AppDomain.CurrentDomain.BaseDirectory   "\\temp\\"   i.ToString()   ".docx";
                            //DocX doc2 = DocX.Load(AppDomain.CurrentDomain.BaseDirectory   "\\temp.docx");
                            //paraIndex  ;
                            //while (paraIndex < doc.Paragraphs.Count)
                            //{
                            //    if (!doc.Paragraphs[paraIndex - 1].Text.Contains("土地证书号"))
                            //        doc2.Tables[0].InsertParagraphBeforeSelf(doc.Paragraphs[paraIndex  ]);
                            //    else
                            //        break;
                            //}
                            //while (paraIndex < doc.Paragraphs.Count)
                            //{
                            //    if (doc.Paragraphs[paraIndex].Text.Contains("权属调(核)查表"))
                            //        break;
                            //    paraIndex  ;
                            //}
                            //InsertTable(doc2, doc.Tables[i]);

                            //doc2.SaveAs(tempFile);


                            p1 = new Process();
                            startInfo.FileName = fileName;
                            p1.StartInfo = startInfo;
                            p1.Start();
                            p1.WaitForExit();
                            showState(state   string.Format("\n已完成{0}/{1}", i   1, doc.Tables.Count), false);

                        }
                        else
                        {
                    //        steState = state   string.Format("\n地籍号为{0}的核查表无对应的成果表", DJH);
                            showState(state   string.Format("\n地籍号为{0}的核查表无对应的成果表", DJH), false);
                            state = this.richTextBox.Text;

                            //paraIndex  ;
                            //if (!doc.Paragraphs[paraIndex].Text.Contains("权属调(核)查表"))
                            //    paraIndex  ;
                            //else
                            //    continue;

                        }
                    }
                }
                showState("\n完成!");


            }
            catch (Exception err)
            {
                showState("\n错误:"   err.Message);

            }

        }


        private void Form1_Load(object sender, EventArgs e)
        {

        }


        private void Form1_FormClosing(object sender, FormClosingEventArgs e)
        {
        }

  
 

    }
}