itextPdf

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using iTextSharp.text;
using System.IO;
using iTextSharp.text.pdf;

namespace WebApp1
{
    public partial class P : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            CreatePdf();
        }


        private void CreatePdf()
        {
            Document doc = new Document();
            MemoryStream ms = new MemoryStream();
            PdfWriter writer = PdfWriter.GetInstance(doc, ms);
            writer.CloseStream = false;
            doc.Open();
            doc.Add(new Paragraph(DateTime.Now.ToLongDateString()));
            doc.Close();
            ViewPdf(ms);
        }

        private void ViewPdf(Stream fs)
        {
            //byte[] buffer = new byte[fs.Length];
            //fs.Position = 0;
            //fs.Read(buffer, 0, (int)fs.Length);
            //Response.Clear();
            //Response.ContentType = "application/pdf";
            //Response.BinaryWrite(buffer);
            //Response.OutputStream.Flush();
            //Response.OutputStream.Close();

            byte[] buffer = new byte[fs.Length];
            fs.Position = 0;
            fs.Read(buffer, 0, (int)fs.Length);
            Response.Clear();
            //Response.AddHeader("Content-Disposition", "attachment;FileName=out.pdf");
            Response.AddHeader("Content-Length", fs.Length.ToString());
            Response.ContentType = "application/pdf";
            fs.Close();

            Response.BinaryWrite(buffer);
            Response.OutputStream.Flush();
            Response.OutputStream.Close();
        }

    }
}

posted @ 2012-04-01 20:00  rayray2  阅读(205)  评论(2编辑  收藏  举报