asp.net生成PDF文件参考

这个是例子是网上淘来的,哈哈,很有用的!

     首先要到网上下载itextsharp.dll,然后添加引用,主程序如下:

01using System;
02using System.Data;
03using System.Configuration;
04using System.Web;
05using System.Web.Security;
06using System.Web.UI;
07using System.Web.UI.WebControls;
08using System.Web.UI.WebControls.WebParts;
09using System.Web.UI.HtmlControls;
10using System.IO;
11using iTextSharp;
12using iTextSharp.text;
13using iTextSharp.text.pdf;
14  
15public partial class _Default : System.Web.UI.Page 
16{
17    static DataTable datatable = new DataTable("testpdf");
18    protected void Page_Load(object sender, EventArgs e)
19    {
20        if (!Page.IsPostBack)
21        {
22            DataRow dr;
23            //建立Column例,可以指明例的类型,这里用的是默认的string
24            datatable.Columns.Add(new DataColumn("编号"));
25            datatable.Columns.Add(new DataColumn("用户名"));
26            for (int i = 1; i < 5; i++)
27            {
28                dr = datatable.NewRow();
29                dr[0] = System.Convert.ToString(i);
30                dr[1] = "测试" + System.Convert.ToString(i);
31                datatable.Rows.Add(dr);
32            }
33        }   
34    }
35    protected void Button1_Click(object sender, EventArgs e)
36    {
37        try
38        {
39            Document document = new Document();
40            PdfWriter.GetInstance(document, new FileStream(Server.MapPath("Test.pdf"), FileMode.Create));
41            document.Open();
42            BaseFont bfChinese = BaseFont.CreateFont("C:\\WINDOWS\\Fonts\\simsun.ttc,1", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
43            Font fontChinese = new Font(bfChinese, 12, Font.NORMAL,new Color(0, 0, 0)); 
44  
45            //按设置的字体输出文本
46            document.Add(new Paragraph(this.TextBox1.Text.ToString(), fontChinese));
47            //输出图片到PDF文件
48            iTextSharp.text.Image jpeg01 = iTextSharp.text.Image.GetInstance(Server.MapPath("Images/gyl.jpg"));
49            document.Add(jpeg01);
50            iTextSharp.text.Image jpeg02 = iTextSharp.text.Image.GetInstance(Server.MapPath("Images/yy.jpg"));
51            document.Add(jpeg02);
52  
53            PdfPTable table = new PdfPTable(datatable.Columns.Count);
54  
55            for (int i = 0; i < datatable.Rows.Count; i++)
56            {
57                for (int j = 0; j < datatable.Columns.Count; j++)
58                {
59                    table.AddCell(new Phrase(datatable.Rows[i][j].ToString(), fontChinese));
60                }
61            }
62            document.Add(table);
63  
64            document.Close();
65            Response.Write("<script>alert('导出成功!');</script>");
66        }
67        catch (DocumentException de)
68        {
69            Response.Write(de.ToString());
70        }
71    }
72}

01<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
02  
03<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
04  
05<html xmlns="http://www.w3.org/1999/xhtml" >
06<head runat="server">
07    <title>无标题页</title>
08</head>
09<body>
10    <form id="form1" runat="server">
11    <div>
12        <br />
13        请输入一些文字用于测试:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
14        <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="导出" /></div>
15    </form>
16</body>
17</html>

转载于:https://www.cnblogs.com/qiuweiguo/archive/2011/08/09/2132263.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值