带有AcroFields ITextSharp的pdf上的富文本框

时间:2016-01-06 12:34:51

标签: c# pdf itextsharp

我正在使用C#和ITextSharp。 我需要根据键/值字典生成PDF文档。

一切正常,但富文本框中的值除外。

这是我的代码:

Output.AcroFields.GenerateAppearances = false;
Output.AcroFields.SetFieldRichValue(key, value);

我尝试了不同的值(这是一个例子)

<p><em>No rece</em>nt c<s>hanges in marital st</s>atus or dependen<strong>ts test</strong></p>

<p>&nbsp;</p>

<h2><s><em><strong>Hello !</strong></em></s></h2>

我的PDF上只显示一个空字段...

知道为什么吗?

1 个答案:

答案 0 :(得分:1)

PDF规范中的示例richt文本字符串看起来像一个更完整的XML:

<?xml version="1.0"?>
<body xmlns="http://www.w3.org/1999/xtml" xmlns:xfa="http://www.xfa.org/schema/xfa-data/1.0/" xfa:contentType="text/html" xfa:APIVersion="Acrobat:8.0.0" xfa:spec="2.4">
  <p style="text-align:left">
    <b>
      <i>
        Here is some bold italic text
      </i>
    </b>
  </p>
  <p style= "font-size:16pt">
    This text uses default text state parameters but changes the font size to 16.
  </p>
</body>

ISO 32000-1中的第12.7.3.4节富文本字符串

您可能希望使用这样的示例开始测试。

此外AcroFields.SetFieldRichValue返回一个布尔结果,表示iText(夏普)是否认为设置值已成功。您可能也想检查此结果。