iText 用 HTMLWorker 转换 HTML 为 PDF 时可设置表格列宽度

生成 pdf 的方式有多种,直接用 iText 编码控制产生,fop 转换,不过我觉得很方便的一种方法就是用 iText 的 HTMLWorker 类直接把 HTML 转换成相应的 PDF 文档,HTMLWorker 可支持图片和表格,一定数量的样式控制。这样可以让我们关注到 HTML 页面设计上,至于转换出来的效果就要看母版 HTML 的设计功底了。要知道这个 HTML 中的样式要让 HTMLWorker 可理解的,并非说能支持 CSS2 还是 CSS3。HTMLWorker 能支持的样式还是非常有限,并且还未文档化的,有些多试试,能看看源代码是自然可以让胸中更有数了。

项目中有一个比较迫切的问题是把 HTML 中的表格转换成 PDF 的 PdfPTable 时,无论是在 <td> 上用 width="xxx" 或是 style="width:xxx" 时都看不到宽度的设置效果,iText 总是让生成的 PdfPTable 平均分配单元格宽度的。这对于单元格宽度有过于悬殊的需求是无法妥协的,所以要一种办法来支持自定义单元格宽度,让 width="xxx"  或是 style="width:xxx" 有一种控制能力就行。又得改源代码了,网上找到了是支持 iText 2.1.7 的改法,本篇是针对 iText 5.0.4 的做法,使支持 width="10%" 百分比来控制单元格宽度。 阅读全文 >>

C# 使用 iTextSharp(4.1.2) 生成 PDF 文档

在 Java 里操作 PDF 文档的组件首当其充就是 iText,几乎是不二之选,惯性思维到 C# 里应该有一个相应的实现吧,对了,那就是 iTextSharp,这里来看看 iTextSharp 怎么生成一个 PDF 文档的。此篇所选版本是 iTextSharp 4.1.2,因与 iTextSharp 5 有较大的差别,所以分两篇来说明。

这两个版本的主要区别有,iTextSharp 5 里不再有 iTextSharp.text.Table、HeaderFooter 类的,且实现了自己的 Font, Color,不再依赖于 System.Drawing 了;在设置页眉页脚实现也不一样。

下面例子,用 OLDDB 从一个 Excel 里读取第一个 sheet,然后在 PDF 文档里生成张表格: 阅读全文 >>

发布 Quartz Job Scheduling Framework 中文 PDF 版

还是在一年前翻译完 Quartz Job Scheduling Framework 这篇手册、并做成了 CHM 文档,见此:Quartz Job Scheduling Framework[翻译]- 中文版 CHM 文件发布

Quartz Job Scheduling Framework 中文 PDF 版下载地址:Quartz Job Scheduling Framework 中文版 V1.0.0.pdf

也应不少网友的要求,应该出一个 PDF 版本的文件来,一来可能多数人觉得 PDF 看着舒服,又适于打印;再则可能就是当初制作 CHM 文件时有几个问题未解决:

1. BlogJava 上所用的字符集是 UTF-8、而我的那些文章转成 GBK 的 HTML 文件,有此地方会乱码,且版面会不同 阅读全文 >>