我正在使用代码打击在图像上绘制文本,我将添加到PDF,这在我添加英文文本时工作正常。我想知道如何做到这一点并添加阿拉伯语文本。当我单步执行代码时,我可以清楚地看到刺痛的txtModule'拿着阿拉伯语的文本。当前它正在将文本更改为????
Dim page As PdfPage = document.AddPage
page.Orientation = PageOrientation.Landscape
Dim gfx As XGraphics = XGraphics.FromPdfPage(page)
Dim XImage As XImage = XImage.FromFile("C:\Projects\CISIPR\currentPr\images\Certificate\prCertificate.jpg")
gfx.DrawImage(XImage, 20, 20, 800, 564)
Dim fontModule As New XFont("arial", 20, XFontStyle.Bold)
' Draw the Module text box
gfx.DrawString(txtModule, fontModule, New PdfSharp.Drawing.XSolidBrush(PdfSharp.Drawing.XColor.FromArgb(103, 154, 165)), _
New XRect(0, 10, page.Width.Point, page.Height.Point), XStringFormats.Center)
答案 0 :(得分:2)
此处的代码可用于转换字体;
Dim options = New XPdfFontOptions(PdfFontEncoding.Unicode, PdfFontEmbedding.Always)
Dim fontModule As New XFont("arial", 20, XFontStyle.Bold, options)
答案 1 :(得分:1)
您应该获得超过" ????",但您必须启用Unicode。见这个样本:
http://pdfsharp.net/wiki/Unicode-sample.ashx
但是有一个显示停止:PDFsharp(尚未)支持LTR和阿拉伯字形 我不知道这意味着什么。也许它足以反转字符串并在您的代码中选择初始,中间和最终字形,也许您根本无法获得正确的阿拉伯语。