HTML串与iText的XML解析器解析

问题描述:

我利用iText的xmlworker-5.5.9.jarHTML串与iText的XML解析器解析

String FOOTER = "<table width=\"100%\" border=\"0\"><tr><td><span class=\"bold\">Footer</span></td><td align=\"right\">Some title</td></tr></table>"; 

通过下面的辅助类是无法分析以下HTML字符串:

XMLWorkerHelper.parseToElementList(FOOTER, CSS); 

我得到低于错误:

Exception in thread "main" java.lang.NoSuchMethodError: com.itextpdf.tool.xml.html.pdfelement.NoNewLineParagraph.setMultipliedLeading(F)V 

我看到了iText的documentatin和answer in this forum too

任何帮助将不胜感激。谢谢。

+1

您正在使用XML Worker 5.5.9,但您使用的是哪种版本的iText?另外:你是否确实在编译时执行代码时使用的是相同的版本?这看起来不像是一个真正的iText问题。它看起来像一个普通的Java编译与执行问题。 –

+0

我检查了github上的提交,并且发现该字段以及您正在查找的方法已在类别词组中移动。这里[commit](https://github.com/itext/itextpdf/commit/10e415435474c0d78a997ca9a46ba9d8ad698aeb),我想现在你可以找到这个类的方法了,这个类是itext/src/main/java/com/itextpdf/text/Phrase .java –

+0

或者,您可以按照@BrunoLowagie的建议降级版本。可以肯定的是,5.5.6版本有你正在寻找的方法。 –

上述异常是由于xmlWorker.jar和itextpdf.jar不兼容导致的。因此,为避免上述异常,在您的项目中使用单个itextpdf.jar,并且该版本高于itextpdf-5.5.1.jar版本。