itextsharp 5.5.6 填充文本域后,文字不显示

ost86 2015-06-12 11:05:50
想用itextsharp来填充pdf模板文件,代码如下:
PdfReader pdfReader = new PdfReader("temp.pdf");
PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileStream("result.pdf", FileMode.Create));
pdfStamper.Writer.CompressionLevel = 0;
//获取域的凑集
AcroFields pdfFormFields = pdfStamper.AcroFields;
//为需要赋值的域赋值
pdfFormFields.SetField("sendUserCardNo", "123456789");
pdfFormFields.SetField("receiveUserCardNo", "012345678");
pdfFormFields.SetField("year", "2015");
pdfFormFields.SetField("receivePlace_Sheng", "湖北");
pdfStamper.FormFlattening = true;
pdfStamper.Close();
pdfReader.Close();

程序执行完后,发现填充的文本内容完全不显示。
如果将pdfStamper.FormFlattening = true;这句代码注释掉后,当用鼠标点击文本框位置,或者按Tab键使文本框获得焦点时,插入的文本才显示。

以前用的5.0.5的版本,因为要填充的文字为中文,缺少语言包的问题,程序执行不过去。网上搜了下添加亚洲语言包的方案,几乎都是java的示例,也没调通。所以才下了最新的5.5.6的版本。

请问大家有碰到过类似情况吗,求解?谢谢。
...全文
516 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
湛蓝色的天空 2019-02-20
  • 打赏
  • 举报
回复
添加中文字体 如:BaseFont font = BaseFont.CreateFont(@"E:\Test Demo\Practice\PDF\Content\fonts\simfang.ttf", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
minglilv 2015-10-23
  • 打赏
  • 举报
回复
问题解决了吗?若解决,求答,我也用到这个

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧