.net下生成创建(较复杂表格,插图的)pdf文档
来源:互联网 发布:物理名师课堂软件 编辑:程序博客网 时间:2024/06/08 17:33
//创建PDF文档对象
string tempfile = filePath;
Document documents = new Document(PageSize.A4);
//实例化生成的文档
PdfWriter.GetInstance(documents, new FileStream(Server.MapPath(tempfile), FileMode.Create));
documents.Open();//打开文档
//要支持中文,必须添加引用对应的中文字体
BaseFont bfSun = BaseFont.CreateFont(@"c:\windows\fonts\SIMSUN.TTC,1", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
Font font = new Font(bfSun, 16);
//添加表格
//程序逻辑,程序的单元格是自动按顺序添加,从第一行和第一列开始,然后是第二列,第一行满后转第二行第一列……
iTextSharp.text.Table table = new iTextSharp.text.Table(6);//创建6行三例表格
//table.BorderWidth = 0;//边框宽度
//table.BorderColor = new Color(51,178, 214);//边框颜色
table.Cellpadding = 5;//内间距
table.Cellspacing = 5;//间距
Cell cell = new Cell();//创建一个单元格
cell.Header = true;//显示表头
cell.Colspan = 6;//合并单元格
cell.AddElement(new Paragraph("星期一课程表", font));
cell.HorizontalAlignment = Element.ALIGN_CENTER;//设置居中
table.AddCell(cell);//添加表头单元格到表格
cell = new Cell();//创建一个单元格
cell.Rowspan = 2;//合并当前格和第三行的第一列单元格
//cell.BorderColor = new Color(255, 0, 0);//边框颜色
//cell.AddElement(new Paragraph("星期/科目/节次", font));
string imagePath = Server.MapPath("/2.jpg");//添加一张图片,主要是无法绘制星期/科目/节次之间的斜线
iTextSharp.text.Image jpg = iTextSharp.text.Image.GetInstance(new Uri(imagePath));
cell.Add(jpg);
//cell.AddElement(new ImgRaw(iTextSharp.text.Image.GetInstance(Server.MapPath("/2.jpg"))));
table.AddCell(cell);//添加单元格到表格
//添加显示上午的单元格,合并三列
cell = new Cell();
cell.Colspan = 3;//合并三列,为上午的三节课
cell.AddElement(new Paragraph("上午", font));
table.AddCell(cell);//添加到表格
//同样方法添加显示下午的单元格,合并两列
cell = new Cell();
cell.Colspan = 2;
cell.AddElement(new Paragraph("下午",font));
table.AddCell(cell);
//第三行添加节次
cell = new Cell();
table.AddCell(new Paragraph("第一节", font));
table.AddCell(new Paragraph("第二节", font));
table.AddCell(new Paragraph("第三节", font));
table.AddCell(new Paragraph("第四节", font));
table.AddCell(new Paragraph("第五节", font));
//从第四行开始写课程,但第一列必须写星期
table.AddCell(new Paragraph("星期一", font));
table.AddCell(new Paragraph(TextBox1.Text, font));
table.AddCell(new Paragraph(TextBox2.Text, font));
table.AddCell(new Paragraph(TextBox3.Text, font));
table.AddCell(new Paragraph(TextBox4.Text, font));
table.AddCell(new Paragraph(TextBox5.Text, font));
documents.Add(table); //添加内容
documents.Close(); //关闭文档对象
Response.Redirect(tempfile);
- .net下生成创建(较复杂表格,插图的)pdf文档
- POI创建较复杂excel表格
- ASP.NET生成层次较复杂的XML
- ASP.NET生成层次较复杂的XML
- Asp.Net复杂表格:应用 Repeater 创建复杂表头的表格
- 使用iTextsharp 在ASP.NET环境下生成PDF文档
- 利用Freemarker、itext和Flying saucer导出复杂表格的PDF格式文档
- 创建复杂表头的表格
- 创建复杂表头的表格
- 生成PDF文件-使用iText制作复杂表格
- VS+C#由创建的Excel生成PDF文档
- asp.net mvc 中生成pdf格式的表格PdfTTable 并设置表格的样式
- 创建一个较复杂的 eclipse+android+maven 工程
- 使用freemarker生成复杂的excel表格
- .net导出EXCEL文件操作类包括格式较复杂表格导出
- Repeater 创建复杂表头的表格
- Repeater 创建复杂表头的表格
- Repeater 创建复杂表头的表格
- 一个另类有效的SQL2005转到SQL2000的方法
- 老话题,WIN7 配置PHP5环境
- 一个汇集所有经典好看的table排版css样式
- asp+jmail邮件发送功能的实现,解决乱码
- asp导出excel最简单最有效的方法
- .net下生成创建(较复杂表格,插图的)pdf文档
- codeTool代码自动生成工具(参数类sql数据增删改查语句,实体类,接口代码)
- 在查询分析器中清空压缩SQL日志文件的简单方法
- 使用File.Create等一句代码创建文件的注意一点
- sql在进行模糊查找时特殊字符的转义
- 一个sql取指定日期指定天数内的记录
- 一个优秀的全兼容JS获取图片尺寸封装,无需onload完全完即能得到尺寸
- 各种跨域上传的实现方法
- 生成HTML静态化一个很有用的正则表达式的替换功能