读书人

Html代码转换成PDF格式,该如何处理

发布时间: 2012-03-22 17:43:57 作者: rapoo

Html代码转换成PDF格式
拿到的代码格式如下:
<h3 style="color: blue; text-align: center">测试</h3>

需要将其转换后写入PDF文件。
现成的工具谢绝。


[解决办法]
没有做过类似的应用,帮楼主顶。
[解决办法]
使用这个
flying sauser,项目主页是:https://xhtmlrenderer.dev.java.net/
对汉字,css有很好的支持

参考:
/*
* ITextRendererTest.java *
* Copyright 2009 Shanghai TuDou.
* All rights reserved.
*/

package itext;

import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;

import org.xhtmlrenderer.pdf.ITextFontResolver;
import org.xhtmlrenderer.pdf.ITextRenderer;

import com.lowagie.text.pdf.BaseFont;

/**
* TODO class description *
*
* @author pcwang
*
* @version 1.0, 上午11:03:26 create $Id$
*/
public class ITextRendererTest {
public static void main(String[] args) throws Exception {
String inputFile = "conf/template/test.html";
String url = new File(inputFile).toURI().toURL().toString();
String outputFile = "firstdoc.pdf";
OutputStream os = new FileOutputStream(outputFile);
ITextRenderer renderer = new ITextRenderer();
renderer.setDocument(url);

// 解决中文支持问题
ITextFontResolver fontResolver = renderer.getFontResolver();
fontResolver.addFont("C:/Windows/Fonts/arialuni.ttf", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);

// 解决图片的相对路径问题
renderer.getSharedContext().setBaseURL("file:/D:/Work/Demo2do/Yoda/branch/Yoda%20-%20All/conf/template/");

renderer.layout();
renderer.createPDF(os);

os.close();
}
}

[解决办法]
你看看request.setContent("?/?")
MIME的知识看看。。。我做过转word
[解决办法]
网上有很多的API可以用!
[解决办法]
up

[解决办法]

探讨
二楼的
import org.xhtmlrenderer.pdf.ITextFontResolver;
import org.xhtmlrenderer.pdf.ITextRenderer;

需要导入什么jar?

[解决办法]
呵呵感觉好费劲哦
[解决办法]
好的~~~~~~~~~~~~~~~~顶一个~~~~~~~~~~~~~~~~~~~~~~~~~~
[解决办法]
探讨
使用这个
flying sauser,项目主页是:https://xhtmlrenderer.dev.java.net/
对汉字,css有很好的支持

参考:
/*
* ITextRendererTest.java *
* Copyright 2009 Shanghai TuDou. 
* All rights reserved.
*/

package itext;

import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;

import org.xhtmlrenderer.pdf.ITextFontResolver;
import org.xhtmlrenderer.pdf.ITextRenderer;

import com.lowagie.text.pdf.BaseFont;

/**
* TODO class description *
*
* @author pcwang
*
* @version 1.0, 上午11:03:26  create $Id$
*/
public class ITextRendererTest {
public static void main(String[] args) throws Exception {
String inputFile = "conf/template/test.html";
        String url = new File(inputFile).toURI().toURL().toString();
        String outputFile = "firstdoc.pdf";


        OutputStream os = new FileOutputStream(outputFile);
        ITextRenderer renderer = new ITextRenderer();
        renderer.setDocument(url);

        // 解决中文支持问题
        ITextFontResolver fontResolver = renderer.getFontResolver();
        fontResolver.addFont("C:/Windows/Fonts/arialuni.ttf", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);

        // 解决图片的相对路径问题
        renderer.getSharedContext().setBaseURL("file:/D:/Work/Demo2do/Yoda/branch/Yoda%20-%20All/conf/template/");
       
        renderer.layout();
        renderer.createPDF(os);
       
        os.close();
}
}


[解决办法]
探讨
引用:
使用这个
flying sauser,项目主页是:https://xhtmlrenderer.dev.java.net/
对汉字,css有很好的支持

参考:
/*
* ITextRendererTest.java *
* Copyright 2009 Shanghai TuDou. 
* All rights reserved.
*/

package itext;

import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;

import org.xhtmlrenderer.pdf.ITextFontResolver;
import org.xhtmlrenderer.pdf.ITextRenderer;

import com.lowagie.text.pdf.BaseFont;

/**
* TODO class description *
*
* @author pcwang
*
* @version 1.0, 上午11:03:26  create $Id$
*/
public class ITextRendererTest {
public static void main(String[] args) throws Exception {
String inputFile = "conf/template/test.html";
        String url = new File(inputFile).toURI().toURL().toString();
        String outputFile = "firstdoc.pdf";
        OutputStream os = new FileOutputStream(outputFile);
        ITextRenderer renderer = new ITextRenderer();
        renderer.setDocument(url);

        // 解决中文支持问题
        ITextFontResolver fontResolver = renderer.getFontResolver();
        fontResolver.addFont("C:/Windows/Fonts/arialuni.ttf", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);

        // 解决图片的相对路径问题
        renderer.getSharedContext().setBaseURL("file:/D:/Work/Demo2do/Yoda/branch/Yoda%20-%20All/conf/template/");
       
        renderer.layout();
        renderer.createPDF(os);
       
        os.close();
}
}






读书人网 >Java Web开发

热点推荐