我正在使用iTextSharp(C#iText端口)从text/html创建pdf。我的大部分文字都是希伯来语,即从右到左的语言。

我的问题是PDF以相反的方式显示RTL语言,因此我需要以只能反转RTL文本而不反转任何数字或英语文本的方式反转字符串。
据我了解,fribidi允许在linux上执行此操作,但是我找不到针对Windows的此问题的任何解决方案。

我欢迎任何建议,包括iTextSharp的替代方案,它将自动执行此操作(如果存在)。

最佳答案

要通过正确使用iTextSharp来显示RTL文本,请执行以下操作:

  • 您需要将字体的编码设置为BaseFont.IDENTITY_H
  • 然后,您必须使用支持RunDirection的容器元素,例如PdfPCellColumnText等,现在您可以设置它们的element.RunDirection = PdfWriter.RUN_DIRECTION_RTL
  • 关于c# - 在iTextSharp中反转从右到左(双向)语言的字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1553748/

    10-14 19:30