GetElementResult() null iText 7
GetElementResult() null iText 7
我正在将 html 转换为 pdf 并尝试获取标签坐标以便能够找到示例文本。
<html>
<body>
<p><font><strong>example text</strong></font></p>
</body>
</html>
private class CustomSpanTagWorker : SpanTagWorker
{
public CustoSpanTagWorker(IElementNode element, ProcessorContext context) : base(element, context)
{
}
public override void ProcessEnd(IElementNode element, ProcessorContext context)
{
base.ProcessEnd(element, context);
IPropertyContainer elementResult = GetElementResult();
}
}
public class CustomTagWorker : DefaultTagWorkerFactory
{
public override ITagWorker GetCustomTagWorker(IElementNode tag, ProcessorContext context)
{
if (tag.Name().Equals(TagConstants.STRONG, StringComparison.OrdinalIgnoreCase))
{
return new CustoSpanTagWorker(tag, context);
}
return null;
}
}
但是当我迭代元素时,我得到一个 GetElementResult () null。请帮我解决这个问题。提前致谢。
一个<span>
HTML元素可能映射到多个布局元素,所以你应该使用SpanTagWorker#getAllElements
而不是SpanTagWorker#getElementResult
我正在将 html 转换为 pdf 并尝试获取标签坐标以便能够找到示例文本。
<html>
<body>
<p><font><strong>example text</strong></font></p>
</body>
</html>
private class CustomSpanTagWorker : SpanTagWorker { public CustoSpanTagWorker(IElementNode element, ProcessorContext context) : base(element, context) { } public override void ProcessEnd(IElementNode element, ProcessorContext context) { base.ProcessEnd(element, context); IPropertyContainer elementResult = GetElementResult(); } }
public class CustomTagWorker : DefaultTagWorkerFactory { public override ITagWorker GetCustomTagWorker(IElementNode tag, ProcessorContext context) { if (tag.Name().Equals(TagConstants.STRONG, StringComparison.OrdinalIgnoreCase)) { return new CustoSpanTagWorker(tag, context); } return null; } }
但是当我迭代元素时,我得到一个 GetElementResult () null。请帮我解决这个问题。提前致谢。
一个<span>
HTML元素可能映射到多个布局元素,所以你应该使用SpanTagWorker#getAllElements
而不是SpanTagWorker#getElementResult