java使用pd4ml将html转换成pdf

来源:互联网 发布:一人能开几个淘宝店 编辑:程序博客网 时间:2024/06/01 21:39
import java.awt.Insets;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStream;import java.io.StringReader;import java.security.InvalidParameterException;import org.zefer.pd4ml.PD4Constants;import org.zefer.pd4ml.PD4ML;public class HtmlToPdf { public static byte[] generatePDF( StringReader strReader) {   try { //FileOutputStream fos = new FileOutputStream(outputPDFFile);   ByteArrayOutputStream os = new ByteArrayOutputStream();        PD4ML pd4ml = new PD4ML();          pd4ml.setPageInsets(new Insets(5, 5, 5, 5));          pd4ml.setHtmlWidth(900);          pd4ml.setPageSize(PD4Constants.A4);  // A4竖向显示  pd4ml.changePageOrientation(PD4Constants.A4)横向显示        pd4ml.useTTF("java:fonts", true);          pd4ml.setDefaultTTFs("SimHei", "YouYuan", "SimSun");  //fonts.jar的配置文件中的值,用于中文乱码        pd4ml.enableDebugInfo();          pd4ml.render(strReader, os);  //如果用上面的fos,就是写出到指定的文件        return os.toByteArray();} catch (FileNotFoundException e) {e.printStackTrace();} catch (InvalidParameterException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}return null;                   }    public static void main(String[] args) throws Exception { // File pdfFile = new File("pdf/test11.pdf");          String html="<p>协议编号:ZRXY-201707021</p>"+"<p><strong>债权转让</strong><strong>协议</strong></p>"+"<p><strong>甲方(转让方):123</strong></p>"+"<p>地址:天津市</p>"+"<p>姓名:张三</p>"+"<p>身份证号:2222222222</p>"+"<p><strong>乙方(受让方):详见附表1</strong></p>"+"<p><strong>丙方(</strong><strong>居间</strong><strong>服务方):</strong><strong>XXXX网络科技有限公司</strong></p>"+"<p><strong>注册号:2588888888</strong></p>"+"<p>地址: 天津市滨海高新区</p>"+"<p>法定代表人:王五</p>"+"<p> </p>"+"<p><strong>鉴于:</strong></p>"+"<p>现甲乙丙三方本着互惠互利的原则,经过平等协商就乙方受让甲方债权相关事宜特签订本《债权转让协议》(以下简称“本协议”),并承诺共同遵守。</p>"+"<p><strong>2.1转让的债权资产详情</strong></p>"+"<table border=\"1\" style=\"width:90%\">"+"<tbody>"+"<tr>"+"<td>"+"<p><strong>转让的债权资产本金金额</strong></p>"+"</td>"+"<td>13593.86</td>"+"<td>"+"<p><strong>债权转让垫付利息</strong></p>"+"</td>"+"<td>28.61</td>"+"<td>"+"<p><strong>债权资产转让日期</strong></p>"+"</td>"+"<td>2017-07-02</td>"+"</tr>"+"<tr>"+"<td>"+"<p><strong>借款利率</strong></p>"+"</td>"+"<td>12.80<strong>%</strong></td>"+"<td>"+"<p><strong>还款方式</strong></p>"+"</td>"+"<td colspan=\"3\">一次性还本付息</td>"+"</tr>"+"<tr>"+"<td>"+"<p><strong>原担保措施</strong></p>"+"</td>"+"<td colspan=\"6\">"+"<p><strong>债务人正常还款</strong></p>"+"</td>"+"</tr>"+"<tr>"+"<td>"+"<p><strong>手续费</strong></p>"+"</td>"+"<td colspan=\"6\">0.00</td>"+"</tr>"+"<tr>"+"<td>"+"<p><strong>债权资产转让价款</strong></p>"+"</td>"+"<td colspan=\"6\">13622.47</td>"+"</tr>"+"</tbody>"+"</table>"+"<p><strong>附表1:受让方信息</strong></p>"+"<table border=\"1\" style=\"text-align:center; width:90%\">"+"<tbody>"+"<tr>"+"<th style=\"width:18%x\">姓名</th>"+"<th style=\"width:18%\">用户名</th>"+"<th style=\"width:18%\">转让本金(元)</th>"+"<th style=\"width:18%\">转让垫付利息(元)</th>"+"<th style=\"width:18%\">转让价款(元)</th>"+"</tr>"+"<tr>"+"<td colspan=\"5\"><tr><td>孟**</td><td>177****3402</td><td>997.90</td><td>2.10</td><td>1000.00</td></tr><tr><td>刘*</td><td>187****0161</td><td>997.90</td><td>2.10</td><td>1000.00</td></tr><tr><td>陈*</td><td>131****0826</td><td>997.90</td><td>2.10</td><td>1000.00</td></tr><tr><td>金**</td><td>152****1431</td><td>997.90</td><td>2.10</td><td>1000.00</td></tr><tr><td>徐**</td><td>181****1917</td><td>997.90</td><td>2.10</td><td>1000.00</td></tr><tr><td>邱**</td><td>159****3743</td><td>997.90</td><td>2.10</td><td>1000.00</td></tr><tr><td>许**</td><td>151****1256</td><td>997.90</td><td>2.10</td><td>1000.00</td></tr><tr><td>顾**</td><td>137****6456</td><td>997.90</td><td>2.10</td><td>1000.00</td></tr><tr><td>许**</td><td>152****8882</td><td>997.90</td><td>2.10</td><td>1000.00</td></tr><tr><td>张**</td><td>157****9908</td><td>997.90</td><td>2.10</td><td>1000.00</td></tr><tr><td>杨**</td><td>170****0411</td><td>997.90</td><td>2.10</td><td>1000.00</td></tr><tr><td>李**</td><td>155****7556</td><td>997.90</td><td>2.10</td><td>1000.00</td></tr><tr><td>朱**</td><td>177****2942</td><td>997.90</td><td>2.10</td><td>1000.00</td></tr><tr><td>白**</td><td>182****6155</td><td>621.16</td><td>1.31</td><td>622.47</td></tr></td>"+"</tr>"+"</tbody>"+"</table>";         StringReader strReader = new StringReader(html.toString());          generatePDF( strReader);          System.out.println(2);}}

需导入包:pd4ml_demo.jar ss_css2.jar fonts.jar

下载:http://download.csdn.net/download/wy240036141/10016357



原创粉丝点击