最近在做一个html转pdf功能,在转换静态界面的过程中,出现异常如下:
java.lang.IllegalArgumentException: Font size too small: 0.0
at com.lowagie.text.pdf.PdfContentByte.setFontAndSize(Unknown Source)
at org.xhtmlrenderer.pdf.ITextOutputDevice.drawString(ITextOutputDevice.java:501)
at org.xhtmlrenderer.pdf.ITextTextRenderer.drawString(ITextTextRenderer.java:42)
at org.xhtmlrenderer.render.AbstractOutputDevice.drawText(AbstractOutputDevice.java:78)
at org.xhtmlrenderer.render.InlineText.paint(InlineText.java:129)
at org.xhtmlrenderer.render.InlineLayoutBox.paintInline(InlineLayoutBox.java:276)
at org.xhtmlrenderer.layout.Layer.paintInlineContent(Layer.java:274)
at org.xhtmlrenderer.layout.Layer.paintAsLayer(Layer.java:469)Disconnected from the target VM, address: '127.0.0.1:63876', transport: 'socket'
at org.xhtmlrenderer.render.BlockBox.paintInline(BlockBox.java:265)
at org.xhtmlrenderer.layout.Layer.paintInlineContent(Layer.java:274)
at org.xhtmlrenderer.layout.Layer.paint(Layer.java:332)
at org.xhtmlrenderer.pdf.ITextRenderer.paintPage(ITextRenderer.java:401)
at org.xhtmlrenderer.pdf.ITextRenderer.writePDF(ITextRenderer.java:349)
at org.xhtmlrenderer.pdf.ITextRenderer.createPDF(ITextRenderer.java:306)
at org.xhtmlrenderer.pdf.ITextRenderer.createPDF(ITextRenderer.java:243)
at cn.fintecher.hr.server.util.ItextUtil.convertHtmlToPdf(ItextUtil.java:75)
at cn.fintecher.hr.server.util.ItextUtil.main(ItextUtil.java:88)
原因:引用的css样式中,font-size 不能为 0,如:
font-size: 0;
font-size: ;
解决方案:删除该样式,或者设置font-size大于0即可