日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java 其他文件转pdf_java 其他文件转成pdf java生成pdf

發布時間:2024/10/8 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 其他文件转pdf_java 其他文件转成pdf java生成pdf 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

java生成pdf需要用到的包pd4ml.jar

下載地址:http://download.csdn.net/detail/yanning1314/7124741

package com.cular.util;

import java.awt.Dimension;

import java.awt.Insets;

import java.io.ByteArrayOutputStream;

import java.io.File;

import java.io.FileOutputStream;

import java.io.InputStreamReader;

import java.net.URL;

import org.apache.http.HttpResponse;

import org.apache.http.client.HttpClient;

import org.apache.http.client.methods.HttpGet;

import org.apache.http.impl.client.DefaultHttpClient;

import org.zefer.pd4ml.PD4ML;

import org.zefer.pd4ml.PD4PageMark;

public class PDFConverter {

//public byte[] generatePDF(InputStreamReader isr, String pdfFilename, String baseurl){

FileOutputStream fos = null;

//byte[] res = null;

//ByteArrayOutputStream baos = null;

//try{

fos = new FileOutputStream(new File(pdfFilename));

//baos = new ByteArrayOutputStream();

//PD4ML pd4ml = new PD4ML();

//pd4ml.setPageInsets(new Insets(10, 10, 10, 10));

//pd4ml.setHtmlWidth(1000);

//pd4ml.enableImgSplit(false);

Dimension format = PD4ML.A4;

pd4ml.setPageSize(pd4ml.changePageOrientation(format)); // landscape page orientation

//pd4ml.useTTF("java:fonts", true );

pd4ml.enableDebugInfo();

//

footer if needed

PD4PageMark footer = new PD4PageMark();

footer.setPageNumberTemplate("page $[page] of $[total]");

footer.setPageNumberAlignment(PD4PageMark.RIGHT_ALIGN);

footer.setInitialPageNumber(1);

footer.setPagesToSkip(1);

footer.setFontSize(10);

footer.setAreaHeight(18);

pd4ml.setPageFooter(footer);

//

//

//pd4ml.render(isr, baos, new URL(baseurl));

//

//res = baos.toByteArray();

//}catch(Exception e){

//e.printStackTrace();

try{fos.close();fos=null;}catch(Exception ee){}

fos=null;

//try{baos.close();baos=null;}catch(Exception ee){}

//baos=null;

//}finally{

try{fos.close();fos=null;}catch(Exception ee){}

//try{baos.close();baos=null;}catch(Exception ee){}

//}

//

//return res;

//}

public static void main(String[] args) {

PDFConverter pdf = new PDFConverter();

pdf.processFile("d://123/", "123.pdf", "http://localhost:8080/CULAR/", "test.jsp");

}

/**

*

* @param folder 生成pdf后放在哪個目錄

* @param filename pdf的名稱

* @param baseurl 要生成pdf的url

* @param jspString 要把哪個生成pdf

* @return

*/

public boolean processFile(String folder, String filename,String baseurl,String jspString){

boolean res = false;

InputStreamReader isr = null;

try{

File f = new File(folder);

if (f.isDirectory()) {

f.mkdir();

}

String fullfilename = folder + filename;

HttpClient client = new DefaultHttpClient();

HttpGet h_request = new HttpGet(baseurl + jspString);

HttpResponse h_response = client.execute(h_request);

isr = new InputStreamReader(h_response.getEntity().getContent(), "UTF-8");

PDFConverter converter = new PDFConverter();

//String localpath = getServletContext().getInitParameter("pdfDir") + admin.getUserid() + "/" + lessonid + ".pdf";

//String downloadUrl = getServletContext().getInitParameter("pdfUrl") + admin.getUserid() + "/" + lessonid + ".pdf";

res = converter.generatePDF(isr, fullfilename, baseurl);

}catch(Exception e){

e.printStackTrace();

}finally{

try{isr.close();isr=null;}catch(Exception e){}

}

return res;

}

/**

* 生成pdf

* @param isr

* @param pdfFilename

* @param baseurl

* @return

*/

public boolean generatePDF(InputStreamReader isr, String pdfFilename, String baseurl){

FileOutputStream fos = null;

boolean res = false;

try{

fos = new FileOutputStream(new File(pdfFilename));

PD4ML pd4ml = new PD4ML();

pd4ml.setPageInsets(new Insets(10, 10, 10, 10));

pd4ml.setHtmlWidth(1000);

pd4ml.enableImgSplit(false);

//Dimension format = PD4ML.A4;

//pd4ml.setPageSize(pd4ml.changePageOrientation(format)); // landscape page orientation

pd4ml.useTTF("java:fonts", true );

//pd4ml.enableDebugInfo();

// footer if needed

//PD4PageMark footer = new PD4PageMark();

//footer.setPageNumberTemplate("page $[page] of $[total]");

//footer.setPageNumberAlignment(PD4PageMark.RIGHT_ALIGN);

//footer.setInitialPageNumber(1);

//footer.setPagesToSkip(1);

//footer.setFontSize(10);

//footer.setAreaHeight(18);

//pd4ml.setPageFooter(footer);

pd4ml.render(isr, fos, new URL(baseurl));

res = true;

//res = baos.toByteArray();

}catch(Exception e){

e.printStackTrace();

}finally{

try{fos.close();fos=null;}catch(Exception ee){}

}

return res;

}

}

總結

以上是生活随笔為你收集整理的java 其他文件转pdf_java 其他文件转成pdf java生成pdf的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。