`

iText PDF template

阅读更多
useful materials
http://svn.assembla.com/svn/jarbilling/billing/trunk/billing/vendor/pdfmanipulator/Fdf.java
http://svn.assembla.com/svn/jarbilling/billing/trunk/billing/vendor/pdfmanipulator/test/BatchFormFill.java
http://www.coderanch.com/t/63861/open-source/iText-Silent-Print
http://threebit.net/mail-archive/itext-questions/msg02068.html

part4.chapter13.PrintPreferencesExample:
http://itextpdf.com/examples/iia.php?id=230

http://comments.gmane.org/gmane.comp.java.lib.itext.general/28053

import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.Map.Entry;
import java.util.Set;

import com.itextpdf.text.Document;
import com.itextpdf.text.FontFactory;
import com.itextpdf.text.PageSize;
import com.itextpdf.text.pdf.AcroFields;
import com.itextpdf.text.pdf.AcroFields.Item;
import com.itextpdf.text.pdf.BaseFont;
import com.itextpdf.text.pdf.PdfReader;
import com.itextpdf.text.pdf.PdfStamper;

public class PdfTest2 {
	public static void main(String[] args) throws Exception {
		// Create output PDF
		Document document = new Document(PageSize.A4);

		document.open();

		// Load existing PDF
		PdfReader reader = new PdfReader(new FileInputStream(
				"Sample application form_ENG edit.pdf"));
		// PdfImportedPage page = writer.getImportedPage(reader, 1);

		// we'll create the file in memory
		ByteArrayOutputStream baos = new ByteArrayOutputStream();
		// Now we create the PDF
		PdfStamper stamper = new PdfStamper(reader, baos);
		// We alter the fields of the existing PDF
		AcroFields fields = stamper.getAcroFields();

		 BaseFont baseFont = FontFactory.getFont(FontFactory.TIMES_ITALIC,BaseFont.IDENTITY_H, new Float(12)).getBaseFont();

		Set<Entry<String, Item>> entrySet = fields.getFields().entrySet();
		for (Entry<String, Item> entry : entrySet) {
			String key = entry.getKey();
			System.out.println(key);
			fields.setField(key, key);
//			if (fields.getFieldType(key) == AcroFields.FIELD_TYPE_TEXT) {
				fields.setFieldProperty(key, "textfont", baseFont, null);
				fields.setFieldProperty(key, "textsize", new Float(16), null);
//			}
		}
		fields.setField("tradeID", "007");
		// close the stamper
		fields.setField("acNo", "9527");
		 
	 
		stamper.close();

		document.close();

		// let's write the file in memory to a file anyway
		FileOutputStream fos = new FileOutputStream("HelloWorld-Gavin.pdf");
		fos.write(baos.toByteArray());
		fos.close();

	}
}

分享到:
评论

相关推荐

    itextpdf按模版导出PDF(表单,表格,条码,二维码)

    **ITextPDF库在Java中的应用:创建模板化的PDF文档** `iTextPDF`是一个流行的开源Java库,用于创建、编辑和操作PDF文档。在这个场景中,我们将探讨如何使用iTextPDF来根据模板生成包含表单、表格、条形码和二维码的...

    Itext.jar+itextpdf.jar

    5. **PdfTemplate** 和 **ColumnText**:前者用于创建自定义的可重用元素,后者用于在PDF页面上排列多列文本。 6. **Image** 类:用于插入图像到PDF文档中,支持多种格式。 7. **AcroFields** 和 **...

    itext根据模板导出pdf.zip

    import com.itextpdf.text.Paragraph; import com.itextpdf.text.pdf.*; public class PdfGenerator { public static void main(String[] args) throws Exception { // 加载模板 PdfReader reader = new Pdf...

    itext生成pdf所需的jar包

    1. iText相关的jar:这可能包括`itextpdf.jar`,这是iText的主要库,包含了创建和操作PDF的基本功能。 2. Freemarker的jar:例如`freemarker.jar`,这是Freemarker模板引擎的核心库。 3. XMLWorker的jar:例如`...

    springboot使用itext生成pdf并保存到本地

    页眉和页脚可以通过自定义PdfPHeaderFooter实现,而水印则可以使用PdfTemplate和ColumnText在每一页上绘制。 ```java public void addHeaderAndFooter(PdfDocument pdfDoc) { PdfPage page = pdfDoc.getPage(1); ...

    java通过itext操作pdf模板写入pdf合同数据

    &lt;artifactId&gt;itextpdf &lt;version&gt;5.x.x&lt;/version&gt; &lt;!-- 替换为实际版本号 --&gt; ``` 确保使用的版本与项目兼容,并已正确导入。 4. **操作PDF** - **读取模板**:使用`PdfReader`类读取PDF模板文件,创建`...

    itext7 根据pdf模板填充图像框

    官方提供了详细的下载和安装指南([访问链接](https://developers.itextpdf.com/itext7/download-and-install-information/))。 - 如果是Java项目,还可以通过Maven依赖进行集成。 #### 四、关键步骤解析 ##### ...

    velocity+itext导出pdf

    在这个场景中,我们将讨论如何结合Velocity和Itext来实现PDF的导出。 首先,Velocity的工作原理是通过模板语言,允许开发者将静态内容与动态数据结合,生成最终的输出。它的语法简洁,易于理解,特别适合生成基于...

    itext_itext_pdf编辑_

    PdfReader reader = new PdfReader("template.pdf"); AcroFields fields = reader.getAcroFields(); fields.setField("fieldName", "填入的值"); ``` 数字签名是确保PDF文档完整性和未被篡改的关键特性。iText提供...

    Itext API帮助文档下载.chm格式下载

    `PdfTemplate`和`Canvas`类则提供了低级别的绘图功能,可以绘制自定义图形和线条。 对于更高级的应用,例如表单处理,iText的`PdfFormXObject`和`AcroFields`类可以帮助你创建和填写交互式PDF表单。你可以获取和...

    基于itext7+freemarker模板导出pdf

    &lt;groupId&gt;com.itextpdf&lt;/groupId&gt; &lt;artifactId&gt;itext7-core &lt;version&gt;7.x.x &lt;groupId&gt;org.freemarker &lt;artifactId&gt;freemarker &lt;version&gt;2.x.x ``` 请替换`x.x.x`为最新版本号。 步骤二:创建...

    itext5template.rar

    《使用iTextPDF5创建合同模板的实战指南》 在IT行业中,生成PDF文档是常见的需求,尤其是在处理法律文件、报告或合同等正式文档时。iText是一个强大的Java库,专门用于生成和处理PDF文档。本篇文章将深入探讨如何...

    itext设置段落行间距.zip

    1. 加载PDF模板文件,获取AcroFields对象:`PdfReader reader = new PdfReader("template.pdf"); AcroFields fields = reader.getAcroFields();` 2. 查找表单字段:`String fieldName = "你的表单字段名";` 3. 填充...

    使用IText将html文件转PDF文件项目

    该项目实现了使用IText将html文件转为pdf文件功能。 步骤: (1):将字体文件按代码中写的路径放到磁盘对应位置。 (2):将template.html文件按代码中路径放到磁盘对应位置。 (3):直接运行HtmlToPdfUtilForCss...

    C#生成电子发票PDF文件的样例(使用了iText7)

    `template`文件夹存放了PDF模板,可能是一个预设格式的PDF文件,包含固定布局和样式,iText7将据此填充数据。 总的来说,这个示例展示了如何利用C#和iText7库,结合预先定义的模板,生成具有专业格式的电子发票PDF...

    itext加载velocity生成PDF

    &lt;artifactId&gt;itextpdf &lt;version&gt;5.x.x&lt;/version&gt; &lt;!-- 使用合适的版本 --&gt; &lt;groupId&gt;org.apache.velocity &lt;artifactId&gt;velocity &lt;version&gt;1.x.x&lt;/version&gt; &lt;!-- 使用合适的版本 --&gt; ``` 然后,创建一个...

    使用adobe acrobat DC 生成pdf模板后,用在java里使用itext填充pdf并转格式

    3. 加载PDF模板:使用`com.itextpdf.text.pdf.PdfReader`读取保存的PDF模板,并通过`com.itextpdf.text.pdf.PdfStamper`创建一个可写入的PDF对象,这将用于填充模板。 4. 填充表单字段:利用`PdfStamper....

    java生成pdf文件分页输出并添加水印

    PdfTemplate template = PdfTemplate.createTemplate(pdfDocument, 500, 500); template.beginText(); template.setFontAndSize(BaseFont.createFont(), 50); template.setTextMatrix(200, 200); template....

    itext+velocity 填充字段 html转pdf

    在与 Velocity 结合使用时,iText 可以接受由 Velocity 渲染的模板,将动态数据填充到预先设计好的PDF模板中,生成具有个性化内容的PDF文件。 **Velocity** 是Apache软件基金会的一个项目,是一个Java模板引擎。它...

    JAVA项目代码绘制PDF和通过freemarker动态生成PDF

    # 本项目主要介绍 1. itextpdf(CreatePdf) ...对于不会HTML的制作,熟悉**itextpdf**的,完全可以使用PdfTemplate,该方法其实就是将itextpdf中PDF的元素逆解析 5. xdocreport 复杂word动态生成上功能很强大

Global site tag (gtag.js) - Google Analytics