itextsharp with xmlworker 5.5.3 vs 5.5.7在最新的

时间:2015-11-17 12:56:40

标签: c# itextsharp itext xmlworker

现在我使用版本5.5.3并且它没有问题,但我尝试更新到最新的一个,我有抛光字符的问题(他们只是缺少)。 我从rtf转换为html,从html转换为pdf,如下所示:

 private ElementList htmlToElementList(string htmlText)
    {
     ICSSResolver cssResolver = XMLWorkerHelper.GetInstance().GetDefaultCssResolver(true);

        // HTML
        HtmlPipelineContext htmlContext = new HtmlPipelineContext(null);
        htmlContext.SetTagFactory(Tags.GetHtmlTagProcessorFactory());
        htmlContext.AutoBookmark(false);
        // Pipelines
        ElementList elements = new ElementList();
        ElementHandlerPipeline end = new ElementHandlerPipeline(elements, null);
        HtmlPipeline html = new HtmlPipeline(htmlContext, end);
        CssResolverPipeline css = new CssResolverPipeline(cssResolver, html);
        // XML Worker
        XMLWorker worker = new XMLWorker(css, true);
        XMLParser p = new XMLParser(worker);

        p.Parse(new StringReader(htmlText));

        return elements;
     }

它的工作方式与5.5.3相同。我尝试调查,我发现他们之间有一个区别(5.5.3 vs 5.5.7): 在字体内的元素中的每个块BaseFont不仅仅为null: ({itextSharp.text.pdf.TrueTypeFontUnicode})

image

版本5.5.7上的

BaseFont为空。

我只使用Century Gothic字体(在html中)(在FontFactory中注册)。

在新版本中使用它有什么缺点?

1 个答案:

答案 0 :(得分:4)

我也有同样的问题,我的PDF中缺少土耳其语字符。 我已经解决了这个问题。

{}

请查看Missing Character issue in PDF using Itext

此致 Vinit patel