我正在尝试实现HTML到PDF的即时转换。 我使用iText来实现这一目标。 我已经成功进行了转换,但是卡在了一个情况下,必须将外部CSS文件应用于将此HTML转换为PDF的情况。 我浏览了iText邮件列表和Google,但是很长时间都没有找到解决方法。所有我了解的是不可能应用外部CSS文件。
如果我错了,请问有人可以更正吗?还是有办法将外部CSS应用于即时将HTML转换为PDF的情况中?如何继续进行的任何提示将不胜感激。
我正在尝试实现HTML到PDF的即时转换。 我使用iText来实现这一目标。 我已经成功进行了转换,但是卡在了一个情况下,必须将外部CSS文件应用于将此HTML转换为PDF的情况。 我浏览了iText邮件列表和Google,但是很长时间都没有找到解决方法。所有我了解的是不可能应用外部CSS文件。
如果我错了,请问有人可以更正吗?还是有办法将外部CSS应用于即时将HTML转换为PDF的情况中?如何继续进行的任何提示将不胜感激。
你不能直接加载外部CSS文件,但是你可以使用iText库中的“StyleSheet”类定义样式表中指定的样式。请参考下面的URL示例。
您可以将外部样式表用作内部样式表进行测试,如果一切正常,请使用此方法。
public void generatePDFDesdeDoc()
{
Document document = new Document();
PdfWriter writer;
String lsPath = Environment.getExternalStorageDirectory().getPath();
try {
writer = PdfWriter.getInstance(document, new FileOutputStream(
lsPath + getResources().getString(R.string.path_pdf)));
document.open();
try {
XMLWorkerHelper.getInstance().parseXHtml(writer, document
, new FileInputStream(lsPath + getResources().getString(R.string.path_html))
, new FileInputStream(lsPath + getResources().getString(R.string.path_css))
);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (FileNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (NotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (DocumentException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
document.close();
}