AcroFields ITextSharp的pdf格式的Rich文本框

本文关键字:文本 Rich pdf ITextSharp AcroFields 格式 | 更新日期: 2023-09-27 18:29:22

我使用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上只显示了一个空字段。。。

知道为什么吗?

AcroFields ITextSharp的pdf格式的Rich文本框

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(Sharp)是否认为设置该值成功的布尔结果。您可能也需要检查此结果。