C#利用iTextSharp将datatable数据转化为PDF文件

2 篇文章 0 订阅
1 篇文章 0 订阅

导入iTextSharp.dll,然后引用
using iTextSharp.text;
using iTextSharp.text.pdf;

//PDFFile为PDF文件保存的路径,FontSize字体大小
  public bool ConvertDataTableToPDF(DataTable Data, string PDFFile, float FontSize)
        {
        	//定义页面的大小
            //Rectangle pageSize = new Rectangle(PoundsToPixels(2000), PoundsToPixels(3000));
            //Document document = new Document(pageSize);
            //默认页面大小
            Document document = new Document();
            PdfWriter writer = PdfWriter.getInstance(document, new FileStream(PDFFile, FileMode.Create));
            document.Open();
            //设置字体
            BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.NOT_EMBEDDED);
            Font font = new Font(bf, FontSize);
            PdfPTable table = new PdfPTable(Data.Columns.Count);
            table.WidthPercentage = 100; // percentage
            table.DefaultCell.Padding = 1;
            table.DefaultCell.BorderWidth = 1;
            table.DefaultCell.HorizontalAlignment = Element.ALIGN_LEFT;
            //将datatable表头转换成PDFTable的表头
            foreach (DataColumn dc in Data.Columns)
            {
              table.addCell(new Phrase(dc.ColumnName.ToString(),font));
            }
            //插入数据
            for (int i = 0; i < Data.Rows.Count; i++)
            {
                for (int j = 0; j < Data.Columns.Count; j++)
                {
                    table.addCell(new Phrase(Data.Rows[i][j].ToString(), font));
                }
            }
            document.Add(table);
            document.Close();
            writer.Close();
            return true;
        } 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值