Esempio n. 1
0
        private void First(Document doc, PdfWriter writer)
        {
            string tmp = "创利投金服平台合同";

            doc.Add(HeaderAndFooterEvent.InsertTitleContent(tmp));

            //tmp = "(正文     页,附件 0 页)";
            tmp = "(时间: " + DateTime.Now.ToString("yyyy-MM-dd") + ")";
            doc.Add(HeaderAndFooterEvent.InsertTitleContent(tmp));

            //模版 显示总共页数
            HeaderAndFooterEvent.tpl = writer.DirectContent.CreateTemplate(100, 100); //模版的宽度和高度
            PdfContentByte cb = writer.DirectContent;

            cb.AddTemplate(HeaderAndFooterEvent.tpl, 266, 914);//调节模版显示的位置
        }
Esempio n. 2
0
        private static void First(string title, string time, Document doc, PdfWriter writer)
        {
            string tmp = title;

            doc.Add(HeaderAndFooterEvent.InsertTitleContent(tmp));

            //tmp = "(正文     页,附件 0 页)";
            tmp = "(时间: " + time + ")";
            doc.Add(HeaderAndFooterEvent.InsertTitleContent(tmp));

            //模版 显示总共页数
            HeaderAndFooterEvent.tpl = writer.DirectContent.CreateTemplate(100, 100); //模版的宽度和高度
            PdfContentByte cb = writer.DirectContent;

            cb.AddTemplate(HeaderAndFooterEvent.tpl, 266, 914);//调节模版显示的位置
        }
        /// <summary>
        /// 创建PDF文件
        /// </summary>
        /// <param name="fileNames">文件名</param>
        /// <param name="strName">名称</param>
        /// <returns></returns>
        private string CreatePdf(string[] fileNames, string strName)
        {
            iTextSharp.text.Document doc = new iTextSharp.text.Document();
            string SaveName = String.Format(clsPublic.AppDir + "\\pdftemp\\{0}", strName + DateTime.Now.ToString("yyyyMMhhHHmmss") + ".pdf");

            clsPublic.CheckFolderExistsViaFileName(SaveName);
            PdfWriter pdfWriter = PdfWriter.GetInstance(doc, new FileStream(SaveName, FileMode.Create));

            pdfWriter.SetEncryption(PdfWriter.STRENGTH128BITS, null, null, PdfWriter.AllowCopy);
            doc.Open();
            try
            {
                pdfWriter.PageEvent = new HeaderAndFooterEvent();

                #region 实现页眉和页脚:

                HeaderAndFooterEvent.PAGE_NUMBER = true;                                             //实现页眉跟页脚
                HeaderAndFooterEvent.tpl         = pdfWriter.DirectContent.CreateTemplate(500, 500); //定义模板
                HeaderAndFooterEvent.HeaderLeft  = "株洲紫气东来商贸有限公司";
                HeaderAndFooterEvent.HeaderRight = "IT部存档专用";
                HeaderAndFooterEvent.FooterLeft  = "TEL:0731-22965756";
                HeaderAndFooterEvent.FooterRight = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "(UTC)";

                #endregion

                #region 首页
                //每次在添加文本内容之前可以先设置字体,有效期持续到重新设置之前
                //HeaderAndFooterEvent.SetFont(Color.BLACK, "宋体", 25, 0);
                //添加一个空段落来占位,五个参数分别为:内容,对齐方式(1为居中,0为居左,2为居右),段后空行数,段前空行数,行间距
                //doc.Add(new Paragraph("jhgjh"));
                //这个方法为上一个方法的重载,三个参数分别为:内容,对齐方式,行间距
                //doc.Add(new Paragraph("飞行气象文件"));
                // HeaderAndFooterEvent.SetFont(Color.BLACK, "宋体", 18, 0);
                // doc.Add(HeaderAndFooterEvent.AddParagraph(strName, 1, 1.0f));

                #endregion


                #region 新建页和加入内容
                //HeaderAndFooterEvent.SetFont(Color.DARK_GRAY, "宋体", 15, 0);
                //doc.Add(HeaderAndFooterEvent.AddParagraph("飞行气象文件", 1, 1.5f));
                // HeaderAndFooterEvent.SetFont(Color.DARK_GRAY, "宋体", 12);
                //doc.Add(HeaderAndFooterEvent.AddParagraph("航班号:      ", 1, 1.5f));

                #endregion

                #region  加入图片
                //doc.NewPage();
                //四个参数分别为:图片路径,对齐方式,文档的右边距,下边距;边距这两个参数用于计算图片的缩放尺寸。
                foreach (string s in fileNames)
                {
                    doc.Add(HeaderAndFooterEvent.AddImage(s, 1, 0, 0));
                }
                return(SaveName);

                #endregion
            }
            catch (Exception e)
            {
                clsPublic.ShowMessage(e.Message);
                return("");
            }
            finally
            {
                pdfWriter.Flush();
                pdfWriter.CloseStream = true;
                doc.Close();
            }
        }