gpt4 book ai didi

java - 使用 itext 从 html 生成 pdf 时不采用 CSS 样式

转载 作者:太空宇宙 更新时间:2023-11-04 03:54:21 25 4
gpt4 key购买 nike

我可以从 html 字符串成功生成 pdf,但问题是它不采用 css 脚本。如何生成具有 css 样式的 pdf?请帮忙!我试过 cssresolver als

我的代码在这里:

{String result = "failed";

try
{
String html2 ="<html>"+.....+"</html>" ;
long timemilli = System.currentTimeMillis();
String filename = "EastAfriPack2014_Ticket_"+timemilli;
String writePath = Global.PDF_SAVE_PATH + filename ;
System.out.println("----------writePath--------------"+ writePath);

OutputStream file = new FileOutputStream(new File(writePath+".pdf"));
Document document = new Document();
PdfWriter writer = PdfWriter.getInstance(document, file);
document.open();
InputStream is = new ByteArrayInputStream(k.getBytes());

CSSResolver cssResolver = XMLWorkerHelper.getInstance().getDefaultCssResolver(false);
cssResolver.addCss("table {color: red; background-color: blue; } ", true);

XMLWorkerHelper.getInstance().parseXHtml(writer, document, is);
document.close();
file.close();
System.out.println("pdf created");
result = filename;
return filename;
} catch (Exception e) {
e.printStackTrace();
return result;
}
}

最佳答案

我认为您的方法行不通。我之前尝试过,因为这是从 HTML 创建 PDF 的最简单方法,但遇到了同样的问题。

您可以通过表格的样式属性提供内联样式

分别使用HTML、CSS文件并将它们发送给HelperClass

XMLWorkerHelper.getInstance().parseXHtml(writer, document, 
new FileInputStream("myhtmlFile.html"),
new FileInputStream("myCSSFile.css"));

HTML 部分也可以是您在上面的代码中创建的 inputStream。

关于java - 使用 itext 从 html 生成 pdf 时不采用 CSS 样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23005424/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com