[ASP.NET]利用itextsharp将GridView汇出PDF档

简介: 原文 [ASP.NET]利用itextsharp将GridView汇出PDF档 最近在讨论区看到有人说itextsharp可以把网页变成PDF 小弟就去抓一下itextsharp来玩玩,先教大家最实用的,就是把GridView汇出成PDF档 asp.

原文 [ASP.NET]利用itextsharp将GridView汇出PDF档

最近在讨论区看到有人说itextsharp可以把网页变成PDF

小弟就去抓一下itextsharp来玩玩,先教大家最实用的,就是把GridView汇出成PDF档

asp.net(c#) 

 

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Index.aspx.cs" Inherits="GridViewToPDF.Index" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>GridViewToPDF</title>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="汇出至PDF档" />
            <asp:GridView ID="GridView1" runat="server">
            </asp:GridView>
        </div>
    </form>
</body>
</html>

 

 

using System;
using iTextSharp.text;
using iTextSharp.text.pdf;
using iTextSharp.text.html.simpleparser;
using System.IO;
using System.Web;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Collections.Generic;

namespace GridViewToPDF
{
    public partial class Index : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                List<member> mem = new List<member>();
                mem.Add(new member("1", "Puma"));
                mem.Add(new member("2", "F6 Team"));
                this.GridView1.DataSource = mem;
                this.GridView1.DataBind();
            }
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            Response.ContentType = "application/pdf";
            Response.ContentEncoding = System.Text.Encoding.UTF8;
            Response.AddHeader("content-disposition", "attachment;filename=test.pdf");
            Response.Cache.SetCacheability(HttpCacheability.NoCache);
            System.IO.StringWriter stringWrite = new StringWriter();
            System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);

            HtmlForm form = new HtmlForm();
            form.Controls.Add(GridView1);
            form.Controls[0].RenderControl(htmlWrite);
            StringReader reader = new StringReader(stringWrite.ToString());
            Document doc = new Document(PageSize.A4);
            HTMLWorker parser = new HTMLWorker(doc);
            PdfWriter.GetInstance(doc, Response.OutputStream);
            doc.Open();
            parser.Parse(reader);
            doc.Close();
        }

    }
    public class member
    {
        private string _id;
        private string _name;

        public member(string ID, string Name)
        {
            _id = ID;
            _name = Name;
        }

        public string ID
        {
            set { _id = value; }
            get { return _id; }
        }

        public string Name
        {
            set { _name = value; }
            get { return _name; }
        }
    }
}

 

 

   

执行结果:

demopdf

 

参考网址:

http://csharpdotnetfreak.blogspot.com/2008/12/export-gridview-to-pdf-using-itextsharp.html 
http://blog.rubypdf.com/2007/10/10/using-htmlworker-to-parse -html-snippets-and-convert-to-pdf/ 
http://stackoverflow.com/questions/1322303/html-to-pdf-some-characters-are-missing-itextsharp 
http://coolwebdeveloper.com/2008/ 10/using-open-source-itextsharp-net-pdf-library-to-generate-pdf-on-the-fly/ 
http://forums.asp.net/t/1199774.aspx

目录
相关文章
|
XML C# 数据格式
一个.NET开源、免费、功能强大的 PDF 处理工具
一个.NET开源、免费、功能强大的 PDF 处理工具
406 8
|
数据挖掘 BI
.net8 Syncfusion生成pdf/doc/xls/ppt最新版本
通过使用 Syncfusion,您可以高效地生成各种文档,满足不同的业务需求。这些工具不仅易于使用,还具有高性能和高度可扩展性,是处理文档的理想选择。
442 16
|
API C#
在.NET中使用QuestPDF高效地生成PDF文档
在.NET中使用QuestPDF高效地生成PDF文档
430 0
|
开发框架 前端开发 .NET
福利来袭,.NET Core开发5大案例,30w字PDF文档大放送!!!
为了便于大家查找,特将之前开发的.Net Core相关的五大案例整理成文,共计440页,32w字,免费提供给大家,文章底部有PDF下载链接。
251 1
福利来袭,.NET Core开发5大案例,30w字PDF文档大放送!!!
|
SQL 开发框架 前端开发
ASP.NET WEB项目中GridView与Repeater数据绑定控件的用法
ASP.NET WEB项目中GridView与Repeater数据绑定控件的用法
210 0
|
SQL 开发框架 .NET
ASP.NET Web——GridView完整增删改查示例(全篇幅包含sql脚本)大二结业考试必备技能
ASP.NET Web——GridView完整增删改查示例(全篇幅包含sql脚本)大二结业考试必备技能
184 0
|
开发框架 前端开发 .NET
ASP.NET Core MVC从入门到精通[PDF版]
ASP.NET Core MVC从入门到精通[PDF版]
852 0
|
开发框架 .NET 数据库连接
在ASP.NET中实现选中、编辑和删除GridView数据项
在ASP.NET中实现选中、编辑和删除GridView数据项
在ASP.NET中实现选中、编辑和删除GridView数据项
|
消息中间件 NoSQL Cloud Native
2700页的微软《.NET5.0官方文档.pdf》出炉,限时下载
2700页的微软《.NET5.0官方文档.pdf》出炉,限时下载
383 0
2700页的微软《.NET5.0官方文档.pdf》出炉,限时下载