在本章中,我们将更改pdfHTML插件的两个最重要的内部机制。
-
我们将覆盖将 HTML 标记与 iText 对象匹配的默认功能,更具体地说是DefaultTagWorkerFactory(Java/.NET)机制,以及
-
我们将覆盖将 CSS样式 与 iText 样式匹配的默认功能,更具体地说是DefaultCssApplierFactory(Java/.NET)机制。
其中一些示例是相当人工的,但通过检查它们,您将更好地了解pdfHTML的内部工作原理。
更改标记的行为
到目前为止,我们一直隐式使用DefaultTagWorkerFactory(Java/.NET)类。这是一个实现ITagWorkerFactory(Java/.NET)接口的类。这个工厂接口中只有一个方法:getTagWorker(IElementNode标记,ProcessorContext上下文)/getTagWorker(IElementNode标记,ProcessorContext上下文)。
-
IElementNode(Java/.NET)对象可以为您提供有关正在处理的标记的信息(例如,标记的名称);
-
ProcessorContext(Java/.NET)可以让您访问PdfDocument(Java/.NET)和其他几个转换器属性。
这个 getTagWorker()/getTagWorker() 方法返回一个 ITagWorker(Java/.NET)实例。