Java 使用iText将html转换为pdf时出现iText 7异常:无法将UnitValue转换为BorderRadius
我正在使用iText 7.1.1使用HtmlConverter将html转换为pdf:Java 使用iText将html转换为pdf时出现iText 7异常:无法将UnitValue转换为BorderRadius,java,html,pdf,itext,Java,Html,Pdf,Itext,我正在使用iText 7.1.1使用HtmlConverter将html转换为pdf: ConverterProperties props = new ConverterProperties(); FontProvider fp = new DefaultFontProvider(true, false, false); for (String font : FONTS) { FontProgram fontProgram
ConverterProperties props = new ConverterProperties();
FontProvider fp = new DefaultFontProvider(true, false, false);
for (String font : FONTS) {
FontProgram fontProgram = FontProgramFactory.createFont(font);
fp.addFont(fontProgram);
}
props.setFontProvider(fp);
//HtmlConverter.convertToPdf(htmlBody, outputStream, props);
com.itextpdf.kernel.pdf.PdfWriter writer = new com.itextpdf.kernel.pdf.PdfWriter(outputStream);
PdfDocument pdf = new PdfDocument(writer);
Document document = new Document(pdf);
List<IElement> elements = HtmlConverter.convertToElements(new ByteArrayInputStream(htmlBody.getBytes(StandardCharsets.UTF_8)), props);
for (IElement element : elements) {
document.add((IBlockElement)element);
}
html看起来像:
警报
####
日期:2018年1月1日12:12:12 UTC-00:00
发件人:谷歌否-reply@accounts.google.com
致:mmm@mydomain.com
#####
.awl a{color:#ffffffff;文本装饰:无;}.abml a{color:#000000;字体系列:Roboto Medium,Helvetica,Arial,无衬线;字体重量:粗体;文本装饰:无;}.afal a{color:#B0B0B0B0B0B0;文本装饰:无;}@media屏幕和(最小宽度:600px){.v2sp{padding:6px 30px 0px;}.v2rsp{padding:0px 10px;}
我的名字
Neues Gerät Angeldet
我们已经收到了一封电子邮件,这封电子邮件是谷歌公司和谷歌信息公司的合作伙伴。
©2018谷歌公司。,
美国加利福尼亚州山景城圆形剧场公园路1600号,邮编94043
东部时间:31
我已经能够重现这个问题,但是有一个简单的解决方法,因为它本质上是一个依赖性问题
如果您将依赖项更新到最新版本的html2pdf
,即2.0.1
,则您的工作流应该会成功
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>html2pdf</artifactId>
<version>2.0.1</version>
</dependency>
com.itextpdf
html2pdf
2.0.1
仅供参考,我是一名iText员工,我会确保记录此不兼容情况。您能指定您使用的pdfHtml版本吗?@blagae:html2pdf version 2.0.0:com.itextpdf html2pdf 2.0.0非常感谢,您的建议解决了我的问题。
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>html2pdf</artifactId>
<version>2.0.1</version>
</dependency>