Fonts 如何在iTextSharp中使用波斯语IranNastaliq字体

Fonts 如何在iTextSharp中使用波斯语IranNastaliq字体,fonts,itextsharp,persian,Fonts,Itextsharp,Persian,当我使用irannastaliq字体时,所有的文字都显示错误 我给你寄去侦察计划的样本 程序创建的pdf图像和我想创建但无法创建的pdf图像 谢谢你的关注 [1] “现在” 示例项目: [2] 首先将您的.TTF字体文件放入根路径,以便于在代码中访问,然后使用以下代码创建一个新的字体对象: // this code is for VB FontFactory.Register(Server.MapPath(".") + "/IranNastaliq.ttf") Dim Mitra As Font

当我使用irannastaliq字体时,所有的文字都显示错误 我给你寄去侦察计划的样本 程序创建的pdf图像和我想创建但无法创建的pdf图像 谢谢你的关注

[1] “现在”

示例项目:
[2]

首先将您的
.TTF
字体文件放入根路径,以便于在代码中访问,然后使用以下代码创建一个新的字体
对象

// this code is for VB
FontFactory.Register(Server.MapPath(".") + "/IranNastaliq.ttf")
Dim Mitra As Font = FontFactory.GetFont("Mitra", BaseFont.IDENTITY_H)
Mitra.Size = 11
创建一个新的
FontSelector
对象
,并将您的字体添加到其中,如下所示:

Dim fontSelector = New FontSelector()
fontSelector.AddFont(Mitra)
然后创建新的
PdfPCell
对象

Dim contentCell = New PdfPCell With {.RunDirection = PdfWriter.RUN_DIRECTION_LTR}
最后,使用此代码应用字体:

contentCell.Phrase = fontSelector.Process(row(i).ToString())
注意

如果您的编码语言是
C#
,您可以使用在线工具将上述所有代码转换为
C#

,据我所知,iTextSharp无法处理复杂字体的GSUB

  • 更多信息请点击此处:

如果您发现上述代码有问题,请在此处留下评论。他的问题是关于
IranNastaliq.ttf
font的。iTextSharp无法正确读取其GSUB。我测试了它的
Mitra.ttf
,它工作正常,请问GSUB是什么?它用于渲染复杂字体,如
IranNastaliq.ttf
。我对IranNastaliq fontIt的问题确实还没有得到支持。这是我们明年(2014年)的路线图。每个草书定位是在GPO上完成的。请参见一个示例,了解它需要定位的原因。