首 页 行业热点 新车 试驾评测 养车用车 车型库

C#如何在PDF文档中创建表格

发布网友

我来回答

1个回答

热心网友

引用Spire.Pdf.dll

using Spire.Pdf;
using Spire.Pdf.Graphics;
using Spire.Pdf.Tables;
using System.Drawing;
using System.Data;

namespace wenda
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建PDF文档
            PdfDocument doc = new PdfDocument();

            //添加页面
            PdfPageBase page = doc.Pages.Add();

            //实例化PdfTable对象
            PdfTable table = new PdfTable();

            //设置表格样式
            table.Style.CellPadding = 1;//单元格内边距
            table.Style.BorderPen = new PdfPen(PdfBrushes.Black, 0.5f);//边框样式
            table.Style.DefaultStyle.Font = new PdfTrueTypeFont(new Font("黑体", 10f), true);//默认字体

            //显示表头
            table.Style.ShowHeader = true;

            //设置表头样式
            table.Style.HeaderStyle.BackgroundBrush = PdfBrushes.CadetBlue;//背景色
            table.Style.HeaderStyle.Font = new PdfTrueTypeFont(new Font("黑体", 11f, FontStyle.Bold), true);//字体
            table.Style.HeaderStyle.StringFormat = new PdfStringFormat(PdfTextAlignment.Center);//文字居中

            //创建模拟数据
            DataTable datatable = new DataTable();
            datatable.Columns.Add("姓名 ");
            datatable.Columns.Add("性别");
            datatable.Columns.Add("年龄");
            datatable.Columns.Add("部门");
            datatable.Columns.Add("电话");
            datatable.Rows.Add(new string[] { "张三", "男", "30", "开发", "136****1211" });
            datatable.Rows.Add(new string[] { "李四", "男", "26", "开发", "181****1234" });
            datatable.Rows.Add(new string[] { "王二", "女", "25", "开发", "159****2523" });
            datatable.Rows.Add(new string[] { "路人甲", "男", "32", "开发", "137****8145" });
            datatable.Rows.Add(new string[] { "路人乙", "女", "24", "销售", "168****9432" });
            datatable.Rows.Add(new string[] { "路人丙", "女", "28", "测试", "183****3345" });

            //填充数据到表格
            table.DataSource = datatable;
 
            //设置每一列的文字对齐方式
            for (int i = 0; i < table.Columns.Count; i++)
            {
                table.Columns[i].StringFormat = new PdfStringFormat(PdfTextAlignment.Center, PdfVerticalAlignment.Middle);
            }

            //绘制表格
            table.Draw(page, new PointF(0, 10));

   
            //保存并打开文档
            doc.SaveToFile("table.pdf");
            System.Diagnostics.Process.Start("table.pdf");
        }
    }
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com