在阿拉伯语中绘制x图像文本

时间:2014-08-08 09:42:46

标签: vb.net image pdf pdfsharp

我正在使用代码打击在图像上绘制文本,我将添加到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)

2 个答案:

答案 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和阿拉伯字形 我不知道这意味着什么。也许它足以反转字符串并在您的代码中选择初始,中间和最终字形,也许您根本无法获得正确的阿拉伯语。