我正在使用iTextSharp使用以下语法填充现有PDF文档上的预定义字段:
PdfStamper压模=新的PdfStamper(读者,流);
stamper.AcroFields.SetField("A","O'Henry");
stamper.FormFlattening = true;
stamper.Close();
不幸的是,输出PDF中不显示撇号(以及可能的其他形式的常见标点符号) . 例如,在上面的代码中,字段“A”显示文本“OHENRY”而不是“O'HENRY” .
如何获取输出PDF以显示包含撇号的文本?
另请注意,我无法控制创建/修改正在填写的原始PDF . 我从外部源获得了PDF,并且随着表单的更改,可能会获得PDF的新版本 .
谢谢!
2 回答
一个简单的解决方法是用`字符替换单引号 .
我在这里找到了一个解决方案http://www.nabble.com/Populating-form-fields-with-Unicode-data-td21610346.html .
该解决方案涉及将可以处理所需字符的字体嵌入每个字段中 .