//设置文件属性的PDF

package com.wf.zhang.test;

import java.io.FileOutputStream;

import com.itextpdf.text.BaseColor;
import com.itextpdf.text.Document;
import com.itextpdf.text.Font;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.BaseFont;
import com.itextpdf.text.pdf.PdfWriter; public class test01 { public static void main(String[] args) {
Document document = new Document();
try
{
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("设置文件属性的PDF.pdf"));
document.open();
//设置宋体
BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); //设置字大小 颜色
Font font = new Font(bfChinese, 20, Font.NORMAL, BaseColor.RED); //准备Person类
Person person = new Person();
person.setName("娃哈哈");
person.setAge(99);
person.setAdress("杭州西湖区文一路"); document.add(new Paragraph(person.toString(), font)); //Set attributes here
document.addAuthor("没有正经的人"); //作者
document.addCreationDate(); //创建时间
document.addCreator("销售报表.com"); //创建程序
document.addTitle("新的标题"); //标题
document.addSubject("第二次+++++++++生成pdf"); //主题 document.close();
writer.close();
} catch (Exception e)
{
e.printStackTrace();
}
} }

//带图片的PDF

package com.wf.zhang.test;

import java.io.FileOutputStream;
import java.net.URL; import com.itextpdf.text.BaseColor;
import com.itextpdf.text.Document;
import com.itextpdf.text.Font;
import com.itextpdf.text.Image;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.BaseFont;
import com.itextpdf.text.pdf.PdfWriter; public class test02 {
public static void main(String[] args) {
Document document = new Document();
try {
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("带图片的PDF.pdf"));
document.open(); //设置宋体
BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); //设置字大小 颜色
Font font = new Font(bfChinese, 20, Font.NORMAL, BaseColor.RED); //准备Person类
Person person = new Person();
person.setName("娃哈哈");
person.setAge(99);
person.setAdress("杭州西湖区文一路"); document.add(new Paragraph("带图片的123456PDF"+ "\r\n" +person.toString(), font)); // Add Image
Image image1 = Image.getInstance("temp.jpg");
// Fixed Positioning
image1.setAbsolutePosition(100f, 550f); //图片在PDF中的绝对位置
// Scale to new height and new width of image
image1.scaleAbsolute(100, 100); //图片在PDF中的大小
// Add to document
document.add(image1); String imageUrl = "http://www.eclipse.org/xtend/images/java8_logo.png";
Image image2 = Image.getInstance(new URL(imageUrl));
document.add(image2); document.close();
writer.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}

//带表格的PDF

package com.wf.zhang.test;

import java.io.FileOutputStream;

import com.itextpdf.text.BaseColor;
import com.itextpdf.text.Document;
import com.itextpdf.text.Element;
import com.itextpdf.text.Font;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.BaseFont;
import com.itextpdf.text.pdf.PdfPCell;
import com.itextpdf.text.pdf.PdfPTable;
import com.itextpdf.text.pdf.PdfWriter; public class test03 {
public static void main(String[] args) {
Document document = new Document();
try {
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("表格的PDF.pdf"));
document.open(); //设置宋体
BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); //设置字大小 颜色
Font font = new Font(bfChinese, 20, Font.NORMAL, BaseColor.RED); PdfPTable table = new PdfPTable(3); // 3 columns.
table.setWidthPercentage(100); // Width 100%
table.setSpacingBefore(10f); // Space before table
table.setSpacingAfter(10f); // Space after table // Set Column widths
float[] columnWidths = { 1f, 1f, 1f };
table.setWidths(columnWidths); PdfPCell cell1 = new PdfPCell(new Paragraph("序号",font));
cell1.setBorderColor(BaseColor.BLUE);
cell1.setPaddingLeft(10);
cell1.setHorizontalAlignment(Element.ALIGN_CENTER);
cell1.setVerticalAlignment(Element.ALIGN_MIDDLE); PdfPCell cell2 = new PdfPCell(new Paragraph("日期",font));
cell2.setBorderColor(BaseColor.GREEN);
cell2.setPaddingLeft(10);
cell2.setHorizontalAlignment(Element.ALIGN_CENTER);
cell2.setVerticalAlignment(Element.ALIGN_MIDDLE); PdfPCell cell3 = new PdfPCell(new Paragraph("销售量",font));
cell3.setBorderColor(BaseColor.RED);
cell3.setPaddingLeft(10);
cell3.setHorizontalAlignment(Element.ALIGN_CENTER);
cell3.setVerticalAlignment(Element.ALIGN_MIDDLE); // To avoid having the cell border and the content overlap, if you
// are having thick cell borders
// cell1.setUserBorderPadding(true);
// cell2.setUserBorderPadding(true);
// cell3.setUserBorderPadding(true); table.addCell(cell1);
table.addCell(cell2);
table.addCell(cell3); document.add(table); document.close();
writer.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}

//创建列表项的PDF

package com.wf.zhang.test;

import java.io.FileOutputStream;

import com.itextpdf.text.BaseColor;
import com.itextpdf.text.Chunk;
import com.itextpdf.text.Document;
import com.itextpdf.text.Font;
import com.itextpdf.text.FontFactory;
import com.itextpdf.text.GreekList;
import com.itextpdf.text.List;
import com.itextpdf.text.ListItem;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.RomanList;
import com.itextpdf.text.ZapfDingbatsList;
import com.itextpdf.text.pdf.BaseFont;
import com.itextpdf.text.pdf.PdfWriter; public class test04 {
public static void main(String[] args) {
Document document = new Document();
try {
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("创建列表项的PDF.pdf"));
document.open(); //设置宋体
BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); //设置字大小 颜色
Font font = new Font(bfChinese, 20, Font.NORMAL, BaseColor.RED); document.add(new Paragraph("首页",font)); // Add ordered list
List orderedList = new List(List.ORDERED);
orderedList.add(new ListItem("第一行",font));
orderedList.add(new ListItem("第二行",font));
orderedList.add(new ListItem("第三行",font));
document.add(orderedList); // Add un-ordered list
List unorderedList = new List(List.UNORDERED);
unorderedList.add(new ListItem("第一条",font));
unorderedList.add(new ListItem("第二条",font));
unorderedList.add(new ListItem("第三条",font));
document.add(unorderedList); // Add roman list
RomanList romanList = new RomanList();
romanList.add(new ListItem("第一项",font));
romanList.add(new ListItem("第二项",font));
romanList.add(new ListItem("第三项",font));
document.add(romanList); // Add Greek list
GreekList greekList = new GreekList();
greekList.add(new ListItem("第一点",font));
greekList.add(new ListItem("第二点",font));
greekList.add(new ListItem("第三点",font));
document.add(greekList); // ZapfDingbatsList List Example
ZapfDingbatsList zapfDingbatsList = new ZapfDingbatsList(43, 30);
zapfDingbatsList.add(new ListItem("第一步",font));
zapfDingbatsList.add(new ListItem("第二步",font));
zapfDingbatsList.add(new ListItem("第三步",font));
document.add(zapfDingbatsList); // List and Sublist Examples
List nestedList = new List(List.UNORDERED);
nestedList.add(new ListItem("Item 1")); List sublist = new List(true, false, 30);
sublist.setListSymbol(new Chunk("", FontFactory.getFont(FontFactory.HELVETICA, 6)));
sublist.add("A");
sublist.add("B");
nestedList.add(sublist); nestedList.add(new ListItem("Item 2")); sublist = new List(true, false, 30);
sublist.setListSymbol(new Chunk("", FontFactory.getFont(FontFactory.HELVETICA, 6)));
sublist.add("C");
sublist.add("D");
nestedList.add(sublist); document.add(nestedList); document.close();
writer.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}

//带样式的PDF 在wps 会变成两页  不知道是什么鬼  使用网站的图片

package com.wf.zhang.test;

import java.io.FileOutputStream;

import com.itextpdf.text.Chapter;
import com.itextpdf.text.Document;
import com.itextpdf.text.Font;
import com.itextpdf.text.FontFactory;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.Section;
import com.itextpdf.text.pdf.CMYKColor;
import com.itextpdf.text.pdf.PdfWriter; public class test05 {
public static void main(String[] args) {
Font blueFont = FontFactory.getFont(FontFactory.HELVETICA, 8, Font.NORMAL, new CMYKColor(255, 0, 0, 0));
Font redFont = FontFactory.getFont(FontFactory.COURIER, 12, Font.BOLD, new CMYKColor(0, 255, 0, 0));
Font yellowFont = FontFactory.getFont(FontFactory.COURIER, 14, Font.BOLD, new CMYKColor(0, 0, 255, 0));
Document document = new Document();
try {
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("带样式的PDF.pdf"));
document.open();
// document.add(new Paragraph("Styling Example")); // Paragraph with color and font styles
Paragraph paragraphOne = new Paragraph("Some colored paragraph text", redFont);
document.add(paragraphOne); // Create chapter and sections
Paragraph chapterTitle = new Paragraph("Chapter Title", yellowFont);
Chapter chapter1 = new Chapter(chapterTitle, 1);
chapter1.setNumberDepth(0); Paragraph sectionTitle = new Paragraph("Section Title", redFont);
Section section1 = chapter1.addSection(sectionTitle); Paragraph sectionContent = new Paragraph("Section Text content", blueFont);
section1.add(sectionContent); document.add(chapter1); document.close();
writer.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}

//用户密码  和所有者密码都能打开PDF

package com.wf.zhang.test;

import java.io.File;
import java.io.FileOutputStream; import com.itextpdf.text.Document;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfWriter; public class test06 { private static String USER_PASSWORD = "123456"; //用户密码
private static String OWNER_PASSWORD = "asdfgh"; //所以者密码 public static void main(String[] args) {
try {
java.io.OutputStream file = new FileOutputStream(new File("加密的PDF.pdf"));
Document document = new Document();
PdfWriter writer = PdfWriter.getInstance(document, file); writer.setEncryption(USER_PASSWORD.getBytes(), OWNER_PASSWORD.getBytes(), PdfWriter.ALLOW_PRINTING,
PdfWriter.ENCRYPTION_AES_128); document.open();
document.add(new Paragraph("Password Protected pdf example !!"));
document.close();
file.close(); } catch (Exception e) {
e.printStackTrace();
}
} }

//具有权限的PDF

package com.wf.zhang.test;

import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream; import com.itextpdf.text.Document;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfWriter; public class test07 { public static void main(String[] args) {
try {
OutputStream file = new FileOutputStream(new File("具有权限的PDF.pdf"));
Document document = new Document();
PdfWriter writer = PdfWriter.getInstance(document, file); writer.setEncryption("".getBytes(), "".getBytes(),
PdfWriter.ALLOW_PRINTING , //Only printing allowed; Try to copy text !!
PdfWriter.ENCRYPTION_AES_128); document.open();
document.add(new Paragraph("Limited Access File !!"));
document.close();
file.close(); } catch (Exception e) {
e.printStackTrace();
}
}
}

//文字加图片的PDF  修改之前的HelloWorldPDF

package com.wf.zhang.test;

import java.io.FileOutputStream;
import java.io.IOException; import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Image;
import com.itextpdf.text.pdf.PdfContentByte;
import com.itextpdf.text.pdf.PdfReader;
import com.itextpdf.text.pdf.PdfStamper; public class test08 {
public static void main(String[] args) {
try {
// Read file using PdfReader
PdfReader pdfReader = new PdfReader("HelloWorld.pdf"); // Modify file using PdfReader
PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileOutputStream("HelloWorld-modified.pdf")); Image image = Image.getInstance("temp.jpg");
image.scaleAbsolute(100, 50);
image.setAbsolutePosition(100f, 500f); for (int i = 1; i <= pdfReader.getNumberOfPages(); i++) {
PdfContentByte content = pdfStamper.getUnderContent(i);
content.addImage(image);
} pdfStamper.close(); } catch (IOException e) {
e.printStackTrace();
} catch (DocumentException e) {
e.printStackTrace();
}
}
}

用iText5-2-其他类型PDF的更多相关文章

  1. Java iText5.5.1 绘制PDF表格

    iText下载链接:http://sourceforge.net/projects/itext/files/ 会有两个文件夹:extrajars中的extrajars-2.3.jar文件用于解决中文不 ...

  2. itext5和itext7操作pdf平铺和图层叠加(tiling, and N-upping)

    区别 itext5 生成pdf版本:1.4(Acrobat5.x) itext7 生成pdf版本:1.7(Acrobat8.x) iText7生成的pdf文件大, itext7 Java库更加系统和完 ...

  3. Java使用Itext5.5.10进行pdf签章

    说到PDF数字签名签章,这个其实也是数字证书信息安全的应用范畴,关于数字证书和数字签名,网上有很多解释说明,但讲解都多不够详细准确,这边推荐一篇大神的博文,讲解浅显易懂形象数字证书 数字签名 数据加密 ...

  4. ABBYY PDF Transformer+功能概述

    ABBYY PDF Transformer+是一个新的.全面的巧妙解决PDF文档的工具,它将泰比的光学字符识别(OCR)技术和Adobe®PDF技术完美结合,以确保实现便捷地处理任何类型的PDF文件, ...

  5. PHP通过PDFParser解析PDF文件

    之前一直找到的资料都是教你怎么生成pdf文档,比如:TCPDF.FPDF.wkhtmltopdf.而我碰到的项目里需要验证从远程获取的pdf文件是否受损.文件内容是否一致这些问题,这些都不能直接提供给 ...

  6. 打印信息,通过.jasper工具将集合输出到PDF文件 然后利用打印机打印文件

    我们上一次成功的利用iReport工具制作了一张报表,并且预览了报表最后的效果,也生成了格式为“jrpxml”.“jrxml”与“jasper”的文件.这次,我们使用jasper提供的java的api ...

  7. Java获取URL链接的文件类型

    问题发生: Java从网络批量读取图片并保存至本网站服务器后再插入文章中 今天转入一篇文章 http://news.qq.com/a/20170605/045860.htm 发现图片未能成功上传 查看 ...

  8. Font and PDF

    1. 独立存在的Font文件 有三类: Type 1 Font TrueType Font OpenType Font Type 1 是由Adobe开发的,它是基于PostScript的Font,它通 ...

  9. ASP.NET 中 ContentType 类型

    在ASP.NET中使用Response.ContentType="类型名";来确定输出格式 不同的ContentType 会影响客户端所看到的效果.默认的ContentType为 ...

随机推荐

  1. Crush 算法以及PG和PGP调整经验

    PG和PGP调整经验调整前准备为了降低对业务的影响,需要调整以下参数ceph tell osd.* injectargs ‘–osd-max-backfills 1’ceph tell osd.* i ...

  2. Orleans的深入

    1.序列化  序列化配置有几个坑这里我写出来 2.负载均衡 3.定时器与提醒 4.服务启动执行代码 5.监控 序列化 新建实体类 引用的包 Microsoft.Orleans.Core V2.12 M ...

  3. Day 02 作业

    作业 一 什么是编程? 基于编程语言的语法格式将自己脑中里想让计算机做的事,写到文件中. 二 简述计算机五大组成 控制器,运算器,存储器,输入设备,输出设备 三 操作系统有什么用? 操作系统直接与硬件 ...

  4. java面试题干货96-125

    这部分主要是与Java Web和Web Service相关的面试题. 96.阐述Servlet和CGI的区别? 答:Servlet与CGI的区别在于Servlet处于服务器进程中,它通过多线程方式运行 ...

  5. AWVS 10.5使用指南

    前言 AWVS是一款可与IBM AppScan比肩的.功能十分强大的Web漏洞扫描器.由Acunetix开发,官方站点提供了关于各种类型漏洞的解释和如何防范,具体参考:Acunetix Web Vul ...

  6. django admin配置以及使用

    admin组件使用 Django 提供了基于 web 的管理工具(django 2.0+, python3.6+). Django 自动管理工具是 django.contrib 的一部分.你可以在项目 ...

  7. Python 使用中出现错误:ImportError: No module named _sqlite3

    解决办法: 1.先安装sqlite3    从sqlite官网:https://www.sqlite.org/download.html 上下载linux环境下的安装包:sqlite-autoconf ...

  8. CentOS 磁盘在线扩容

    场景介绍: 操作系统Centos7.x 系统有一块vdisk,容量为20G,共分为3个区(swap和boot分区为标准分区xfs文件系统,根分区为LVM分区,xfs文件系统) 业务需求:在VM系统不关 ...

  9. RF之简介

    robot framework 是一个通用型的自动测试框架 - 自动测试用例的实现方式 - 自动测试用例的开发支持 :  IDE.库 - 和用例管理系统的集成 - 测试执行:相关测试套件和测试用例的执 ...

  10. Aery的UE4 C++游戏开发之旅(1)基础对象模型

    目录 UObject Actor种类 AActor APawn(可操控单位) AController(控制器) AGameMode(游戏模式) AHUD(HUD) ... Component种类 UA ...