- 浏览: 77280 次
- 性别:
- 来自: 重庆
最新评论
-
禀圣含华:
怎么弄空格呢?___________然后我固定这些空格,怎么弄 ...
第18章. iText PDF 生成 -
super0555:
managed
第13章 Seam 应用程序框架 -
Javakeith:
代码呢?共享下代码呗!
第18章. iText PDF 生成 -
tonyshen277:
同感啊。还在做Win32下的开发,楼主所说的一个都不能少啊。
转自baidu wqqq 给软件开发初学者 -
kdboy:
的确,把人放在宇宙中去看,从上帝的眼中去看,人的确是非常渺小, ...
人生是什么
第18章. iText PDF 生成
18.1. 使用PDF支持
18.1.1. 创建一个文档
18.1.2. 基本的文本元素
18.1.3. 页眉和页脚
18.1.4. 章节
18.1.5. 列表
18.1.6. 表格
18.1.7. 文档常量
18.2. 图表
18.3. 条形码
18.4. 填写表单
18.5. 渲染Swing/AWT组件
18.6. 配置iText
18.7. 进一步的文件
Seam现在包括了一个生成iText文档的组件集。 Seam的iText文档主要是关注对PDF文档生成的支持, 但是Seam 也提供对RTF文档生成的基本支持。
18.1. 使用PDF支持
jboss-seam-pdf.jar提供iText支持。这个JAR包含iText JSF控件, 它被用来构建能渲染PDF的视窗,并且DocumentStore 组件,它提供渲染文档给用户。为在你的应用程序中包含PDF支持,jboss-seam-pdf.jar 连同iText JAR 一起包含在你的WEB-INF/lib 目录中。为使用Seam的iText支持不需要更进一步的配置。
Seam iText模块需要用Facelets作为视窗技术来使用。未来的库版本可能也支持JSP使用。另外,它需要seam-ui 包的使用。
examples/itext项目在实践中包含了一个PDF支持的例子。 它示范了正确的部署包,并且它包含一些例子,示范了目前支持的PDF生成的关键特性。
18.1.1. 创建一个文档
<p:document> |
描述 文档是由namespacefacelet XHTML文件利用了在http://jboss.com/products/seam/pdf命名空间中的标签生成。文档应该总是在文档的根结点有document标签。document标签为Seam生成一个文档到文档库和渲染一个HTML重定向到库内容做准备。 属性:
元数据属性
用法 <p:document xmlns:p="http://jboss.com/products/seam/pdf"> The document goes here. </p:document> |
18.1.2. 基本的文本元素
有用的文档需要包含的不仅仅是文本。然而,标准的UI组件是面向HTML生成的,并不利于生成PDF内容。作为替换,Seam提供了一种特殊的UI组件为生成适当的PDF内容。 如<p:image> 和 <p:paragraph>标签是简单文档的基础。如 <p:font>标签给围绕它们的所有内容都提供了字体信息。
<p:paragraph> |
描述 为了文本片能以逻辑组方式布局、格式化、样式化,大部分使用的文本被分成段落。 属性
用法 <p:paragraph alignment="justify"> This is a simple document. It isn't very fancy. </p:paragraph>
|
<p:text> |
描述 text 标签允许根据使用了标准的JSF转换机制的应用程序数据产生文本片段。它是非常类似于在渲染HTML文档时使用的 outputText 标签。 属性
用法 <p:paragraph> </p:paragraph> |
<p:html> |
描述 html标签渲染HTML内容成PDF。 属性 值 — 显示的文本。 用法 <p:html value="This is HTML with <b>some markup</b>." /> <p:html> </p:html> |
<p:font> |
描述 font标签为它内部的所有文本定义要使用的默认字体。 属性
用法 <p:font name="courier" style="bold" size="24"> |
<p:newPage> |
描述
用法 <p:newPage /> |
<p:image> |
描述
资源也能由应用程序代码动态生成。 属性 · · · · · · · · · · · · · · · · 用法 <p:image value="/jboss.jpg" /> <p:image value="#{images.chart}" /> |
<p:anchor> |
描述
属性 · · 用法 <p:listItem><p:anchor reference="#reason1">Reason 1</p:anchor></p:listItem> <p:anchor name="reason1">It's the quickest way to get "rich"</p:anchor> </p:paragraph> |
18.1.3. 页眉和页脚
<p:header> <p:footer> |
描述 p:header 和 p:footer 组件提供了将页眉和页脚文本放在生成文档的每个页面上的能力。除了第一个页面之外。页眉和页脚声明应该显示在文档的顶部。 属性
<p:facet name="header"> |
<p:pageNumber> |
描述 使用 p:pageNumber 标签能够把当前页码放到页眉或者页脚的内部。 页码标签只能用在页眉或者页脚的上下文中,并且只能使用一次。 用法
<p:footer borderWidthTop="1" borderColorTop="blue" borderWidthBottom="0" alignment="center"> Why Seam? [<p:pageNumber />] </p:footer> |
18.1.4. 章节
<p:chapter> <p:section> |
描述 如果产生的文档追求书/文章的结构,p:chapter 和 p:section标签能被用来提供必要的结构。 节只能用在章内,然而它们能任意深度地嵌套。大部分PDF阅读器在文档的章节间提供容易的导航 属性
用法 <p:document xmlns:p="http://jboss.com/products/seam/pdf" title="Hello"> <p:chapter number="1"> <p:title><p:paragraph>Hello</p:paragraph></p:title> <p:paragraph>Hello #{user.name}!</p:paragraph> </p:chapter> <p:chapter number="2"> <p:title><p:paragraph>Goodbye</p:paragraph></p:title> <p:paragraph>Goodbye #{user.name}.</p:paragraph> </p:chapter> </p:document> |
<p:header> |
描述 任何章或节可以包含一个p:title。 标题会紧挨着章/节数显示。标题的主体可以包含原始文本或是一个p:paragraph。 |
18.1.5. 列表
列表结构可以使用p:list 和 p:listItem 标签显示。列表里可以包含任意嵌套的子列表。列表项不能用在列表的外面。下面的文档使用ui:repeat标签显示取自一个Seam组件的值的列表。
<p:document xmlns:p="http://jboss.com/products/seam/pdf"
xmlns:ui="http://java.sun.com/jsf/facelets"
title="Hello">
<p:list style="numbered">
<ui:repeat value="#{documents}" var="doc">
<p:listItem>#{doc.name}</p:listItem>
</ui:repeat>
</p:list>
</p:document>
<p:list> |
属性
用法 <p:list style="numbered"> <ui:repeat value="#{documents}" var="doc"> <p:listItem>#{doc.name}</p:listItem> </ui:repeat> </p:list> |
<p:listItem> |
描述 p:listItem 支持以下属性: 属性
用法 ... |
18.1.6. 表格
使用p:table和 p:cell标签可以创建表结构。 不象其他表结构,没有明确的行声明。如果一个表有三列,那么每三个单元格会自动形成一行。页眉和页脚行可以声明,并且在活动的一个表结构横跨多个页面,它们会被重复。
<p:table> |
描述 p:table 支持以下属性。 属性
用法
<p:table columns="3" headerRows="1"> <p:cell>name</p:cell> <p:cell>owner</p:cell> <p:cell>size</p:cell> <ui:repeat value="#{documents}" var="doc"> <p:cell>#{doc.name}</p:cell> <p:cell>#{doc.user.name}</p:cell> <p:cell>#{doc.size}</p:cell> </ui:repeat> </p:table> |
<p:cell> |
描述 p:cell 支持下面的属性。 属性
用法 <p:cell>...</p:cell> |
18.1.7. 文档常量
本节评述了在多数标签上的属性所共享的一些常量
18.1.7.1. 颜色值
Seam文档还不支持全彩色规格。目前,仅支持命名颜色。它们是: white, gray, lightgray, darkgray, black, red, pink(粉红), yellow, green, magenta(洋红), cyan(青色) 和 blue。
18.1.7.2. 对齐值
在对齐值使用的地方,Seam PDF 支持下面的水平对齐值: left, right, center, justify 和 justifyall。 垂直对齐值: top, middle, bottom, 和 baseline。
18.2. 图表
使用jboss-seam-pdf.jar也提供对图表的支持。图表可以使用在PDF文档中,或者作为一图象使用在HTML页面。图表需要JFreeChart库(jfreechart.jar 和 jcommon.jar)被添加到WEB-INF/lib库目录。目前支持三种类型的图表:pie charts(饼状图表), bar charts(柱状图表)和 line charts(线状图表)。
<p:barchart> |
描述 显示一个柱状图表。 属性
用法
<p:barchart title="Bar Chart" legend="true" width="500" height="500"> <p:series key="Last Year"> <p:data columnKey="Joe" value="100" /> <p:data columnKey="Bob" value="120" /> </p:series> <p:series key="This Year"> <p:data columnKey="Joe" value="125" /> <p:data columnKey="Bob" value="115" /> </p:series> </p:barchart> |
<p:linechart> |
描述 显示一个线状图表。 属性
用法 <p:linechart title="Line Chart" width="500" height="500"> <p:series key="Prices"> <p:data columnKey="2003" value="7.36" /> <p:data columnKey="2004" value="11.50" /> <p:data columnKey="2005" value="34.625" /> <p:data columnKey="2006" value="76.30" /> <p:data column
|
相关推荐
asp.net生成PDF详解 asp.net生成PDF PDF详解 用C#制作PDF文件全攻略 丽水市汽车运输集团有限公司信息中心 苟安廷 目 录 前 言 3 第一部分 iText的简单应用 4 第一章 创建一个Document 4 第一步 创建一个Document实例...
1.2. 第一个例子:注册示例.............................................................................................................................................. 15 1.2.1. 了解代码.................
用C#制作PDF文件全攻略 目 录 前 言 3 第一部分 iText的简单应用 4 第一章 创建一个Document 4 第一步 创建一个Document实例: 5 第二步 创建Writer实例 6 第三步 打开Document 6 ...第十二章 页面和表格事件 34
itextsharp文件外加在网上下的一个制作表格的案例 第一部分 iText的简单应用 第一章 创建一个Document 第一步 创建一个Document实例: 第二步 创建Writer实例 第三步 打开Document ...第十二章 页面和表格事件
实例138 用iText生成Word文件 205 实例139 利用POI读取Word文件中的内容 208 7.3 字符流 209 实例140 按顺序创建文件 210 实例141 按顺序读取文件 211 实例142 追加文件内容 211 实例143 只显示文件中指定的字符 214...
PDF格式扫描版,全书分为24章,共817页。2011年1月出版。 全书压缩打包成4部分,这是第3部分 注:本系列图书的第I、II卷再版时均相应改名为《xxx开发实例大全》(基础卷)及(提高卷),但内容基本无变化,需要的童鞋可...
实例138 用iText生成Word文件 205 实例139 利用POI读取Word文件中的内容 208 7.3 字符流 209 实例140 按顺序创建文件 210 实例141 按顺序读取文件 211 实例142 追加文件内容 211 实例143 只显示...
实例138 用iText生成Word文件 205 实例139 利用POI读取Word文件中的内容 208 7.3 字符流 209 实例140 按顺序创建文件 210 实例141 按顺序读取文件 211 实例142 追加文件内容 211 实例143 ...
实例138 用iText生成Word文件 205 实例139 利用POI读取Word文件中的内容 208 7.3 字符流 209 实例140 按顺序创建文件 210 实例141 按顺序读取文件 211 实例142 追加文件内容 211 实例143 只显示文件中指定的字符 214...
实例138 用iText生成Word文件 205 实例139 利用POI读取Word文件中的内容 208 7.3 字符流 209 实例140 按顺序创建文件 210 实例141 按顺序读取文件 211 实例142 追加文件内容 211 实例143 只显示文件中指定的...