iText使用入门:编辑,增加,导入,水印,合并PDF的例子
2009-01-08 14:51
573 查看
这个例子比较复杂,大家自己看清楚吧
package com.laozizhu.lowagie.itext;
import java.io.FileOutputStream;
import java.net.URL;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Element;
import com.lowagie.text.Image;
import com.lowagie.text.PageSize;
import com.lowagie.text.pdf.BaseFont;
import com.lowagie.text.pdf.PdfContentByte;
import com.lowagie.text.pdf.PdfReader;
import com.lowagie.text.pdf.PdfStamper;
/**
* iText使用入门:编辑,增加,导入,水印,合并PDF的例子
*
* @author 老紫竹(laozizhu.com)
*/
public class HelloWorldModify {
public static void main(String[] args) throws Exception, DocumentException {
PdfReader reader = new PdfReader("HelloWorld.pdf", "World".getBytes());
PdfStamper stamp = new PdfStamper(reader, new FileOutputStream("stamped.pdf"));
// 拿到第一页的上部内容部分
PdfContentByte over = stamp.getOverContent(1);
// 增加内容
over.beginText();
over.setTextMatrix(30, 30);
BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.EMBEDDED);
over.setFontAndSize(bf, 18);
over.showText("page1");
over.showTextAligned(Element.ALIGN_LEFT, "DUPLICATE", 230, 430, 45);
over.endText();
// 增加新的一页2
stamp.insertPage(2, PageSize.A4);
// 写上内容
over = stamp.getOverContent(2);
over.beginText();
over.setFontAndSize(bf, 18);
over.showTextAligned(Element.ALIGN_LEFT, "DUPLICATE OF AN EXISTING PDF DOCUMENT", 30, 600, 0);
over.endText();
// 插入水印
Image img = Image.getInstance(new URL(
"http://www.java2000.net/images/company/www.java2000.net.gif"));
img.setAbsolutePosition(200, 400);
PdfContentByte under = stamp.getUnderContent(2);
under.addImage(img);
// 增加新的一页
stamp.insertPage(3, PageSize.A4);
// 从现有的别的pdf合并过来
PdfReader reader2 = new PdfReader("HelloWorld.pdf", "World".getBytes());
under = stamp.getUnderContent(3);
under.addTemplate(stamp.getImportedPage(reader2, 1), 1, 0, 0, 1, 0, 0);
// 关闭
stamp.close();
}
}
运行结果的缩略图
package com.laozizhu.lowagie.itext;
import java.io.FileOutputStream;
import java.net.URL;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Element;
import com.lowagie.text.Image;
import com.lowagie.text.PageSize;
import com.lowagie.text.pdf.BaseFont;
import com.lowagie.text.pdf.PdfContentByte;
import com.lowagie.text.pdf.PdfReader;
import com.lowagie.text.pdf.PdfStamper;
/**
* iText使用入门:编辑,增加,导入,水印,合并PDF的例子
*
* @author 老紫竹(laozizhu.com)
*/
public class HelloWorldModify {
public static void main(String[] args) throws Exception, DocumentException {
PdfReader reader = new PdfReader("HelloWorld.pdf", "World".getBytes());
PdfStamper stamp = new PdfStamper(reader, new FileOutputStream("stamped.pdf"));
// 拿到第一页的上部内容部分
PdfContentByte over = stamp.getOverContent(1);
// 增加内容
over.beginText();
over.setTextMatrix(30, 30);
BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.EMBEDDED);
over.setFontAndSize(bf, 18);
over.showText("page1");
over.showTextAligned(Element.ALIGN_LEFT, "DUPLICATE", 230, 430, 45);
over.endText();
// 增加新的一页2
stamp.insertPage(2, PageSize.A4);
// 写上内容
over = stamp.getOverContent(2);
over.beginText();
over.setFontAndSize(bf, 18);
over.showTextAligned(Element.ALIGN_LEFT, "DUPLICATE OF AN EXISTING PDF DOCUMENT", 30, 600, 0);
over.endText();
// 插入水印
Image img = Image.getInstance(new URL(
"http://www.java2000.net/images/company/www.java2000.net.gif"));
img.setAbsolutePosition(200, 400);
PdfContentByte under = stamp.getUnderContent(2);
under.addImage(img);
// 增加新的一页
stamp.insertPage(3, PageSize.A4);
// 从现有的别的pdf合并过来
PdfReader reader2 = new PdfReader("HelloWorld.pdf", "World".getBytes());
under = stamp.getUnderContent(3);
under.addTemplate(stamp.getImportedPage(reader2, 1), 1, 0, 0, 1, 0, 0);
// 关闭
stamp.close();
}
}
运行结果的缩略图
相关文章推荐
- 使用itext生成PDF文档入门
- 滴水穿石--Java 生成PDF文件--iText使用之入门
- iText使用入门,生成HelloWorld.PDF详解
- Itext 使用入门 之 创建pdf 文档 附中文解决方案
- OpenOffice 3增加PDF导入和编辑功能
- iText使用入门,输出pdf到浏览器
- Itext 使用入门 之 创建pdf 文档 附中文解决方案
- Java 使用poi导入excel,结合xml文件进行数据验证的例子(增加了jar包)
- java使用itext合并pdf文件
- Itext 使用入门 之 创建pdf 文档 附中文解决方案
- 使用iText为PDF加图片水印
- 从零开始学习使用iText PDF(2):跟着官网学几个例子
- iText使用入门,打开加密的pdf文件(itext Bad user Password的解决方法)
- 一个使用itext导出pdf的例子
- 简单编辑器的入门使用,修改编辑工具增加表情
- iText的使用例子说明(利用Itext画模板导出word、pdf,纯java实现)
- Java 使用poi导入excel,结合xml文件进行数据验证的例子(增加了jar包)
- 一个使用itext导出pdf的例子
- 在windows平台下php使用imagick库把pdf转换成(合并)图片
- Java 使用 iText动态生成PDF文档