简易PDF生成(JAVA)
2016-07-14 11:29
591 查看
package com.pdf; import java.awt.Color; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import com.lowagie.text.Document; import com.lowagie.text.DocumentException; import com.lowagie.text.Font; import com.lowagie.text.Image; import com.lowagie.text.PageSize; import com.lowagie.text.Paragraph; import com.lowagie.text.pdf.BaseFont; import com.lowagie.text.pdf.PdfWriter; public class turnToPDF { //先建立document对象 Document doc = new Document(PageSize.A4,36.0F,36.0F,36.0F,36.0F); public void setPdfDemo() throws DocumentException,IOException{ //定义字体 BaseFont bsFont = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", false); Font font = new Font(bsFont,10.0F,0,new Color(59,54,54)); //保存本地目录 savePdf(); doc.open(); ByteArrayOutputStream by = new ByteArrayOutputStream(); doc.open(); //获取此编译文件的路径 String path = this.getClass().getClassLoader().getResource("").getPath(); //获取根目录 String filePath = path.substring(1,path.length()-16); //获取图片路径,想要放在pdf里的图片 //图片路径根据你放在项目的位置而定,主要还是通过路径找到图片 String picPath = filePath + "\\resources\\images\\"; //往pdf里添加段落文字 Paragraph pHeader = new Paragraph(); pHeader.add(new Paragraph("啦啦啦啦啦(此处为生成的文字)",new Font(bsFont,8.0F,1))); //将内容放到文档中 doc.add(pHeader); //获取图片 Image img = Image.getInstance(picPath + "logo.jpg"); //定义图片显示的位置 img.scaleAbsolute(137.0F, 140.0F); img.setAbsolutePosition(330.0F, 37.0F); //将图片放入文档中 doc.add(img); doc.close(); } public static void main(String[]args) throws DocumentException,IOException{ turnToPDF tt = new turnToPDF(); tt.setPdfDemo(); } //指定文件进行保存 public void savePdf() throws DocumentException,IOException{ //生成PDF,指定生成到D盘newPdf。pdf File file = new File("D:\\newPdf.pdf"); if(!file.exists()){ try{ file.createNewFile(); }catch(IOException e){ e.printStackTrace(); } } PdfWriter.getInstance(doc, new FileOutputStream(file)); } }
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树