摘要: pdfContentByte 到目前为止,我们已经使用了简单的iText,我们已经添加了文本、图片、段落、章节、列表、表格等,没有涉及到布局问题。Itext分割文本到每页中,并将每个单词、句子、段落布置到页面上,但有时我们并不需要这种自动格式,有时我们希望将一些图象或者文本放置在某页的指定位置,为实现该功能,我们将使用PdfContentByte类。 为代替第一章,仅用PdfWriter类的getInstance方法是不够的,你必须真实地拥有一个PdfWriter对象,你可以通过在使用Writer对象中使用getDirectContent()方来得到该对象。例: PdfWriter write 阅读全文
posted @ 2011-03-06 12:38 长风一剑 阅读(498) 评论(0) 推荐(0) 编辑
摘要: 本地转向 有时你需要一个允许读者从文档的一个地方跳转到另外一个地方的链接,你可以通过类Chunk的setLocalGoto 和setLocalDestination两个方法实现,例: Chunk localgoto = new Chunk("this word", FontFactory.getFont(FontFactory.HELVETICA, 12, Font.NORMAL, new Color(0, 0, 255))).setLocalGoto("test"); Chunk destination = new Chunk("local 阅读全文
posted @ 2011-03-06 12:38 长风一剑 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 本章原文讲了许多字体的使用技巧,但就是没有讲如何使用中文,因此,意义不大,再说,如果不支持中文,前面的也就白翻译了,因此,根据原文讲到的一些知识,我摸索出汉字的使用方法,自己写了本章内容,应该算是“原创”了吧^_^(哎呀!谁拿鸡蛋扔我……)。 Windows中一般都是使用TrueType字体,每个中文版Windows操作系统均默认安装了宋体、仿宋、黑体和楷体四种字体,你还可以安装其他第三方字体,如安装了Office 2000后,会自动安装华文行楷等字体,比较奇怪的是,在PDF文件中插入了一种本计算机才有的字体,在打开PDF文件的计算机上虽然没有该字体,但仍然能正常显示!这有别于Word文件,W 阅读全文
posted @ 2011-03-06 12:37 长风一剑 阅读(406) 评论(0) 推荐(0) 编辑
摘要: 本章主要介绍了如何利用iText控件生成XLM文档和(X)HTML文档,但我们对这些并不感兴趣,故只介绍本章中提到的将XML转为PDF。 在第一章中,我们通过5步生产一个PDF文件,为了将一个XML文件转换为PDF文件,只需重写第3和第4步,第5步由解析器自动处理。 //第3步:创建一个解析器并设置文档句柄: iTextHandler h = new iTextHandler(document); //第4步,转换该文档: h.Parse("Chap0701.xml"); 示例代码见示例代码0702 RTF包 RTF包是基于iText包扩展出来的,允许iText除生成PDF 阅读全文
posted @ 2011-03-06 12:36 长风一剑 阅读(313) 评论(0) 推荐(0) 编辑
摘要: Image对象 如果你学习过API,你可能已经注意到可以通过几种构造函数来创建图片,本手册中,我们将仅仅告诉你最简单的解决方案,如访问通过文件名或URL确定的图片生成的Image对象。 public static Image getInstance(Uri url) public static Image getInstance(string filename) Image是一个抽象类,故得到实例的方法将判断给出的图片的类别(GIF、Jpeg、PNG……)并返回对象的类别Gif、Jpeg、Png……,一些图片会被忽略,如果你想知道哪些图片会被忽略,请查阅FAQ(http://www.lowag 阅读全文
posted @ 2011-03-06 12:34 长风一剑 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 在第十一章中将描述如何构建一个树的外观,如果你只需要一个简单的章节和(子)区域,你可以用Chapter对象和Section对象自动构建一个树: Paragraph cTitle = new Paragraph("This is chapter 1", chapterFont); Chapter chapter = new Chapter(cTitle, 1); Paragraph sTitle = new Paragraph("This is section 1 in chapter 1", sectionFont); Section section = 阅读全文
posted @ 2011-03-06 12:33 长风一剑 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 重点:如果你仅仅生成PDF文件(没有XML、HTML、RTF……),使用类pdfPTable代替类Table更好。 一些简单的表格 一个表格是包含单元格排列成矩阵的矩形区域。表格的距阵并不要求是m×n的,它可以有空洞或者单元格比单个的要大。 创建一个表格最通用的办法是预先知道有几行几列: public Table(int columns, int rows); 在示例代码0501中,我们构建了一个简单的表: Table aTable = new Table(2,2); aTable.addCell("0.0"); aTable.addCell("0.1& 阅读全文
posted @ 2011-03-06 12:33 长风一剑 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 锚点 我们都知道HTML中的超文本链接,当我们点击某些语句,你能够跳转到网上的其他页。在PDF中也可以实现这种功能。事实上,在第十一章整个章节中有关于PDF链接的介绍,但这是iText的更高级的应用,本章中我们处理简单的iText。 如果你想在文档中添加一个外部链接(例如使用URL链接到WEB上的其他文档),你可以简单地使用Anchor对象,它派生于Phrase对象,使用方法相同。只有两种额外方法定义两种额外变量:setName和 setReference。 外部链接示例: Anchor anchor = new Anchor("website", FontFactory. 阅读全文
posted @ 2011-03-06 12:30 长风一剑 阅读(355) 评论(0) 推荐(0) 编辑
摘要: 块 块(Chunk)是能被添加到文档的文本的最小单位,块可以用于构建其他基础元素如短句、段落、锚点等,块是一个有确定字体的字符串,要添加块到文档中时,其他所有布局变量均要被定义。下面一行中,我们创建了一个内容为“hello World”、红色、斜体、COURIER字体、尺寸20的一个块: Chunk chunk = new Chunk("Hello world", FontFactory.getFont(FontFactory.COURIER, 20, Font.ITALIC, new Color(255, 0, 0))); u 典型字体1: 在本指南中,除了第九章外(你可 阅读全文
posted @ 2011-03-06 12:29 长风一剑 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 在代码窗口顶部添加两个引用: using iTextSharp.text; using iTextSharp.text.pdf;利用iText五步创建一个PDF文件:helloword。 第一步,创建一个 iTextSharp.text.Document对象的实例: Document document = new Document(); 第二步,为该Document创建一个Writer实例: PdfWriter.getInstance(document, new FileStream("Chap0101.pdf", FileMode.Create)); 第三步,打开当前Do 阅读全文
posted @ 2011-03-06 12:28 长风一剑 阅读(532) 评论(0) 推荐(0) 编辑
摘要: public partial class UserControl_Simulation_ProjectNeedsManagement : System.Web.UI.UserControl{ private ArrayList arrProjectID { get { if (ViewState["ControlCount"] == null) ViewState["ControlCount"] = new ArrayList(); return (ArrayList)ViewState["ControlCount"]; } set 阅读全文
posted @ 2011-03-06 12:04 长风一剑 阅读(332) 评论(0) 推荐(0) 编辑