package cn.jn.bq.itext.pdf;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.MalformedURLException;
import org.simpleframework.xml.Serializer;
import org.simpleframework.xml.core.Persister;
import com.itextpdf.text.BadElementException;
import com.itextpdf.text.BaseColor;
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Font;
import com.itextpdf.text.Image;
import com.itextpdf.text.PageSize;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.Phrase;
import com.itextpdf.text.pdf.BaseFont;
import com.itextpdf.text.pdf.PdfContentByte;
import com.itextpdf.text.pdf.PdfWriter;
public class GenPDF {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
Document tDoc = new Document(PageSize.A4, 50, 50, 50, 50); //创建文档
String mFileFullPath="/home/grid/taobao/files/test3.pdf";
String mImgPath="/home/grid/taobao/files/";
PdfWriter tWriter = PdfWriter.getInstance(tDoc, new FileOutputStream(mFileFullPath.toString())); //创建写入流
tWriter.setEncryption(null,"1".getBytes(), PdfWriter.ALLOW_SCREENREADERS|PdfWriter.ALLOW_PRINTING,PdfWriter.STANDARD_ENCRYPTION_128); //加密
tDoc.open(); //打开文档
Serializer serializer = new Persister();
File result = new File("/home/grid/taobao/files/template.xml");
Template t2 = serializer.read(Template.class,result);
//Image tImgCover = Image.getInstance(mImgPath+"background.jpg");
Image tImgCover = Image.getInstance(t2.background);
/* 设置图片的位置 */
tImgCover.setAbsolutePosition(0, 0);
/* 设置图片的大小 */
tImgCover.scaleAbsolute(595, 842);
tDoc.add(tImgCover); //加载图片
tDoc.addTitle("你妹啊");
BaseFont bfChinese = BaseFont.createFont("/home/grid/taobao/files/Fonts/simyou.ttf",BaseFont.IDENTITY_H,false);
Font fontChinese = new Font(bfChinese,16,Font.NORMAL,BaseColor.RED);
tDoc.add(new Paragraph("你妹啊!",fontChinese));
tDoc.add(new Paragraph("Hello no chinese!"));
PdfContentByte cb = tWriter.getDirectContent();
BaseFont bf2 = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.NOT_EMBEDDED);
cb.beginText();
cb.setFontAndSize(bf2, 12);
cb.setTextMatrix(100, 400);
cb.showText("Text at position 100,400.");
cb.endText();
Image img = Image.getInstance(mImgPath + "tss.jpg");// 选择图片
//img.setAlignment(1);
img.setAbsolutePosition(100, 300);// 控制图片位置
img.scaleAbsolute(100, 100);// 控制图片大小
tDoc.add(img);
//new page 搞定多页问题 (这里)
tDoc.newPage();
tDoc.add(tImgCover);
tDoc.add(img);
tDoc.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (BadElementException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}
}
}
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.MalformedURLException;
import org.simpleframework.xml.Serializer;
import org.simpleframework.xml.core.Persister;
import com.itextpdf.text.BadElementException;
import com.itextpdf.text.BaseColor;
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Font;
import com.itextpdf.text.Image;
import com.itextpdf.text.PageSize;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.Phrase;
import com.itextpdf.text.pdf.BaseFont;
import com.itextpdf.text.pdf.PdfContentByte;
import com.itextpdf.text.pdf.PdfWriter;
public class GenPDF {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
Document tDoc = new Document(PageSize.A4, 50, 50, 50, 50); //创建文档
String mFileFullPath="/home/grid/taobao/files/test3.pdf";
String mImgPath="/home/grid/taobao/files/";
PdfWriter tWriter = PdfWriter.getInstance(tDoc, new FileOutputStream(mFileFullPath.toString())); //创建写入流
tWriter.setEncryption(null,"1".getBytes(), PdfWriter.ALLOW_SCREENREADERS|PdfWriter.ALLOW_PRINTING,PdfWriter.STANDARD_ENCRYPTION_128); //加密
tDoc.open(); //打开文档
Serializer serializer = new Persister();
File result = new File("/home/grid/taobao/files/template.xml");
Template t2 = serializer.read(Template.class,result);
//Image tImgCover = Image.getInstance(mImgPath+"background.jpg");
Image tImgCover = Image.getInstance(t2.background);
/* 设置图片的位置 */
tImgCover.setAbsolutePosition(0, 0);
/* 设置图片的大小 */
tImgCover.scaleAbsolute(595, 842);
tDoc.add(tImgCover); //加载图片
tDoc.addTitle("你妹啊");
BaseFont bfChinese = BaseFont.createFont("/home/grid/taobao/files/Fonts/simyou.ttf",BaseFont.IDENTITY_H,false);
Font fontChinese = new Font(bfChinese,16,Font.NORMAL,BaseColor.RED);
tDoc.add(new Paragraph("你妹啊!",fontChinese));
tDoc.add(new Paragraph("Hello no chinese!"));
PdfContentByte cb = tWriter.getDirectContent();
BaseFont bf2 = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.NOT_EMBEDDED);
cb.beginText();
cb.setFontAndSize(bf2, 12);
cb.setTextMatrix(100, 400);
cb.showText("Text at position 100,400.");
cb.endText();
Image img = Image.getInstance(mImgPath + "tss.jpg");// 选择图片
//img.setAlignment(1);
img.setAbsolutePosition(100, 300);// 控制图片位置
img.scaleAbsolute(100, 100);// 控制图片大小
tDoc.add(img);
//new page 搞定多页问题 (这里)
tDoc.newPage();
tDoc.add(tImgCover);
tDoc.add(img);
tDoc.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (BadElementException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}
}
}