在itext的com.lowagie.text包中有Chunk,Phrase,Paragraph这三种text编辑单元
其中Chunk是最小的单元
也就是说Paragraph可以包含多个Phrase,Phrase可以包含多个Chunk
下面是Chunk的例子
public class Chunk_Example {
public Chunk_Example() throws Exception{
Document document = new Document();
PdfWriter.getInstance(document,
new FileOutputStream("chunk_example.pdf"));
document.open();
Font font = new Font(Font.COURIER, 10, Font.BOLD); // 设置font
font.setColor(new Color(0x92, 0x90, 0x83));
Chunk chunk =
new Chunk("testing text element", font); // 初始化Chunk
chunk.setBackground(new Color(0xff, 0xe4, 0x00)); // 设置背景
document.add(chunk); // 添加chunk到文档
document.close();
}
public static void main(String[] args) {
try{
Chunk_Example textExample = new Chunk_Example();
}catch(Exception e){
System.out.println(e);
}
}
}
我们一般不使用Chunk生成文本,因为Chunk不能自动换行,而是使用Phrase代替
public class Phrase_Example {
public Phrase_Example() throws Exception{
Document document = new Document();
PdfWriter.getInstance(document,
new FileOutputStream("phrase_example.pdf"));
document.open();
Font font = new Font(Font.COURIER, 10, Font.BOLD);
font.setColor(new Color(0x92, 0x90, 0x83));
Chunk chunk = new Chunk("testing text element ", font);
chunk.setBackground(new Color(0xff, 0xe4, 0x00));
Phrase phrase =
new Phrase(20, "This is initial text. ");
//初始化Phrase,有20像素的间距
for(int i=0; i < 10; i++)
{
phrase.add(chunk); // 添加110个Chunk到Phrase
}
document.add(phrase);
document.close();
}
public static void main(String[] args) {
try{
Phrase_Example textExample = new Phrase_Example();
}catch(Exception e){
System.out.println(e);
}
}
}
Phrase已经满足大部分需求,但是如果我们想要一个分成几段来显示文本,可以使用
phrase.add("\n");
也可以通过Paragraph来实现
public class Paragraph_Example {
public Paragraph_Example() throws Exception{
Document document = new Document();
PdfWriter.getInstance(document,
new FileOutputStream("paragraph_example.pdf"));
document.open();
Font font = new Font(Font.COURIER, 10, Font.BOLD);
font.setColor(new Color(0x92, 0x90, 0x83));
Chunk chunk = new Chunk("testing text element ", font);
chunk.setBackground(new Color(0xff, 0xe4, 0x00));
Phrase phrase = new Phrase(20, "This is initial text. ");
for(int i=0; i < 10; i++)
{
phrase.add(chunk);
}
Paragraph paragraph = new Paragraph();
paragraph.add(phrase);//添加phrase对象
document.add(paragraph); //添加 paragraph
document.add(paragraph); //添加 paragraph
document.close();
}
public static void main(String[] args) {
try{
Paragraph_Example textExample =
new Paragraph_Example();
}catch(Exception e){
System.out.println(e);
}
}
}
引用
http://www.geek-tutorials.com/java/itext/insert_control_text.php
分享到:
相关推荐
iTextPDF的API设计直观且强大,例如,`Document`类作为PDF文档的容器,`PdfWriter`负责将内容写入PDF,而`Paragraph`、`Chunk`等则是构建内容的基本单元。使用`PdfStamper`可以对已有PDF进行修改,添加或删除内容。 ...
5. **iText7-kernel-7.0.5**:这是iText7的核心库,提供了PDF文档的基本操作,如创建新文档、打开现有文档、添加页面、插入文本和图像、应用样式等。它是其他所有模块的基础。 6. **iText7-hyph-7.0.5**:这部分...
在第二章中,作者介绍了iText的基本构建块。这些基础组件是创建PDF文档的核心,包括页面、段落、表格等基本元素。通过组合这些基础组件,可以构建出复杂的PDF文档结构。 ##### 2.2 页面 页面是构成PDF文档的基础...
iText是一款广泛使用的Java库,专门用于创建、编辑和处理PDF文档。在标题中提到的“iText-2.1.5.jar”是iText的一个早期版本,它提供了基础的PDF操作功能,而“iTextAsian.jar”则是一个扩展包,主要用于支持亚洲...
首先,我们需要了解iText的基本概念。iText是开源的,它提供了API来处理PDF文档,包括创建、编辑、添加文本、图像、表格等元素。虽然iText主要针对PDF,但通过一些扩展,它也能支持生成Word文档,这通常涉及到将PDF...
`Paragraph`包含多个`Chunk`,`Chunk`是基本的文本单元,可以设置字体、颜色等。`Font`定义文本的样式,如大小、粗体、斜体等。 3. **表格处理**:` PdfPTable`类用于创建表格,通过`addCell()`方法添加单元格。...
这本书通过丰富的示例代码,帮助开发者深入理解Itext库的功能和用法,涵盖了从基本文本输出到复杂的表格、图像、超链接以及表单填写等PDF操作。 在描述中提到的"NULL 博文链接:...
3. **Paragraph和Chunk类**:`Paragraph`用于创建段落,`Chunk`则是构成文本的基本单元,可以设置字体、颜色、大小等属性。 4. **Font类**:用于定义文本的字体、大小、颜色等样式信息,通过`FontFactory`获取或...
例如,`Chunk`用于创建基本的文本单元,`Font`定义文本的字体、大小和颜色。 4. **图像处理**:可以使用`Image`类将图片插入PDF文档,支持JPEG、PNG等多种格式。 5. **表格处理**:`PdfPTable`类用于创建表格,...
iText是一款功能强大的Java库,专门用于创建、编辑和处理PDF文档。在PDF文档的生成和管理领域,iText有着广泛的应用,它提供了丰富的API,使得开发者能够方便地实现PDF文档的各种操作。以下是对iText API的一些核心...
2. **PDF文档结构**:理解PDF的基本结构是使用iText7的前提。PDF由一系列的对象组成,包括页面、字体、图像、链接等。iText7通过这些对象提供了构建PDF文档的工具。 3. **PDF绘制**:iText7提供了Canvas类,它允许...
本文将重点介绍如何使用Java库iText来制作PDF文件,帮助开发者掌握PDF文件的创建、编辑和美化技巧。 **前言** 在信息化社会,PDF文件在文档分享、报告生成、电子书制作等领域发挥着重要作用。iText是一款开源的...
10. **测试和调试**:编写单元测试和集成测试,使用IDE如Eclipse或IntelliJ IDEA的内置调试工具,确保代码的正确性和稳定性。 11. **发布和打包**:将项目打包成可执行的JAR文件,或者使用Java Web Start或JavaFX的...
首先,iText是一个开源的Java库,专门用于创建和编辑PDF文档。在Java中使用iText时,`PdfWriter`类用于创建一个新的PDF文档,它负责将内容写入PDF文件。`Paragraph`类则用于构建文档的文本段落,它可以包含文本、...
这个库提供了丰富的API,允许开发者进行读取、编写和编辑这些文档,实现数据的导入导出,格式转换等功能。然而,由于文件结构可能没有进行很好的组织,对于初学者来说,理解并运用这些类可能会有些挑战。 在Java中...
`Acrobat_DC_C_2021.001.20138_SP_20210216` 这个文件名看起来像是Adobe Acrobat Reader DC的一个版本号,它是查看和编辑 PDF 文件的常用软件。开发者可能会用它来验证生成的 PDF 文件是否符合预期,检查排版、格式...
该系统能够添加、编辑和删除供应商信息,包括供应商名称、联系方式、地址等。这些功能可能通过专门的Controller类实现,而数据则存储在数据库的供应商表中。 5. **商品管理** 商品管理模块允许用户录入商品的基本...
在MFC框架下设计学生成绩管理系统,首先需要理解MFC的基本概念和架构。MFC通过类库提供了窗口、对话框、控件、文档/视图结构等组件,这些组件对于构建图形用户界面(GUI)至关重要。开发者可以利用MFC中的C++类来...
通过这个项目,学习者不仅能了解到Java Web开发的基本流程,还能接触到实际项目开发中的问题解决策略,如异常处理、日志记录、单元测试等。此外,免费的部署协助和问题解答服务也增加了学习的便利性。 总之,“java...
Eclipse是广泛使用的开源Java集成开发环境,提供了代码编辑、调试、构建和部署等多种功能。将Java报表项目导入Eclipse,可以利用其强大的代码提示、自动格式化、错误检查等功能,提高开发效率。同时,Eclipse支持...