当前位置: 首页 > 知识库问答 >
问题:

IText 7与C#acroforms在使用RTL时的平面化问题

白宏放
2023-03-14

我正在使用iText7和C#以编程方式填充“Acroforms”。在处理RTL语言时,我发现了如何做到这一点。

PdfDocument pdf = new PdfDocument(new PdfReader(@"C:\test\test.pdf"), new PdfWriter(@"C:\test\test2.pdf"));
PdfAcroForm form = PdfAcroForm.GetAcroForm(pdf, true);
form.SetNeedAppearances(true);
IDictionary<String, PdfFormField> fields = form.GetFormFields();
PdfFormField toSet;
fields.TryGetValue("CM@SHEM_PRATI@1", out toSet);
toSet.SetValue("גגג");
form.PartialFormFlattening("CM@SHEM_PRATI@1");
form.FlattenFields();
pdf.Close();

我是否错过了用于扁平化RTL插入字段的配置?用C#iText7禁用输入字段还有其他方法吗?

共有1个答案

锺离宸
2023-03-14

问题解决了。我添加了itext7.pdfcalligraph加载项。然后在上面的代码中添加了一个rtl字体:

PdfFont heb = PdfFontFactory.CreateFont(@"/path/to/font.ttf", "Identity-H", true);
toSet.SetFont(heb);

输入字段变平,仍然可以看到值。

 类似资料:
  • 我有一个私人钥匙在档案里。“privatekey.pem”并且不知道如何创建谁能帮助我吗?我正在尝试使用IText7签名pdf。

  • 我正在尝试使用iText7扩展PDF的第一页。网其余的页面应该保持不变。 如果PDF包含一个页面,下面的方法是有效的,但是如果有多个页面,第一个页面(应该缩放)是空白的,而剩余的页面被正确添加。 我错过了什么?

  • 我需要添加一个HTML块作为使用iText7的所有页面的标题。标题包含一个图像徽标和一些文本。 在关闭文档对象之前,我现在有这样一个问题: 页脚工作正常,但页眉工作正常。 标题是这样加载的: 其中,的定义如下: 当我使用方法,效果很好,但只适用于第一页。所有其他内容都遵循它。 当我尝试使用方法添加它时,所有页面中只呈现图像。 顺便问一下,有没有办法得到标题段落的实际高度?我想,一旦解决了标题定位,

  • 我正在尝试使用iText7库升级我的代码。以前我使用过iTextSharp库,但看起来iText7是全新的。我尝试阅读pdf文档,但在“未找到pdf标题”之间遇到了一个异常。这是我的密码 我做错了什么?

  • 我在使用SpecifyKind时遇到问题。我发现,如果我将字符串(“O”)应用于DateTime.Now或new DateTime(),则会使spantime不同。我不知道这是怎么可能的。我尝试将这些日期时间保存为数据库中的Utc,但由于跨度不同,时间将不正确。 我就是这样做的: 现在:2021-12-08 13:40:35现在:2021-12-08T13:40:35.1159209 01:00日

  • 我的代码是这样的: