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

Rich text box on a pdf with AcroFields 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 上只出现一个空白字段...

知道为什么吗?

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>

(第 12.7.3.4 富文本字符串 ISO 32000-1 中)

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

此外 AcroFields.SetFieldRichValue returns 一个布尔结果,指示 iText(Sharp) 是否认为设置该值已成功。您可能也想查看此结果。