我有一个代码,它采用PDF模板,将一些输入值插入模板并创建输出PDF文件
PDF文件中的一个字段是一个自由文本,其中可以包含希伯来语/英语/数字或符号字符的值。
我使用以下代码使用希伯来语显示文本:RTL显示:
iText.Kernel.Pdf.PdfReader reader = new iText.Kernel.Pdf.PdfReader(pdfTemplatePath); //src);
iText.Kernel.Pdf.PdfWriter writer = new iText.Kernel.Pdf.PdfWriter(pdfOutPutFile); //dest);
iText.Kernel.Pdf.PdfDocument pdf = new iText.Kernel.Pdf.PdfDocument(reader, writer);
iText.Forms.PdfAcroForm form = iText.Forms.PdfAcroForm.GetAcroForm(pdf, true);
IDictionary<String, iText.Forms.Fields.PdfFormField> fields = form.GetFormFields();
// iText.Kernel.Font.PdfFont = iText.Kernel.Font.PdfFontFactory.CreateFont(iText.IO.Font.FontProgram
FontProgramFactory.RegisterFont(@"C:\Windows\Fonts\ARIALUNI.TTF", "arialUnicode");
iText.Kernel.Font.PdfFont myFont = PdfFontFactory.CreateRegisteredFont("arialUnicode", iText.IO.Font.PdfEncodings.IDENTITY_H, true);
pdf.GetFirstPage().GetResources().AddFont(pdf, myFont);
// Set Field value by Fields mapping
foreach (string fieldName in formFieldMap.Keys)
{
fields[fieldName].SetValue(formFieldMap[fieldName].ToString());
fields[fieldName].SetFont(myFont);
// displaying the text: 0 Left-justified 1 Centered 2 Right-justified
**fields[fieldName].SetJustification(2);**
}
我的问题是文本没有正确对齐。
带左对齐文字的字段:
我还可以在右边设置text-align吗?