2017-10-04 199 views
0

我想逃避欧元符号在C#与\u20AC但由于某种原因结果是这样的:?€。那里有个问号。我使用PdfSharp将代码转换为PDF文件,我需要使用欧元符号。欧元符号越狱输出:?€

我已经试过这样:

  • 粘贴欧元符号,而逃逸
  • 使用:.Replace("?", "")

但是这两个选项没有工作。

这是绘制String与欧元符号的代码:

gfx.DrawString("‎\u20AC " + myString, normalFont, textColor, 
       new XRect(0, 0, 0, 0), XStringFormats.Default); 

注:%其他符号正在

编辑:

应用意见后form PDFSharpNovice我已经添加这个了

XPdfFontOptions options = new XPdfFontOptions(PdfFontEncoding.Unicode, 
    PdfFontEmbedding.Always); 

这是新的输出:

desc

+0

检查网站上的Unicode样本,并在问题依然存在时提供MCVE。在PDFsharp中使用带有Unicode的欧元符号没有一般问题。像“%”这样的ASCII符号可以工作,但是您可以测试其他Unicode符号或非ASCII符号,如“ÄÖÜäöüß”http://www.pdfsharp.net/wiki/Unicode-sample.ashx –

+0

@PDFsharpNovice checkout my edit –

回答

3

的问题是不是与欧元符号。 您的字符串在引号和反斜杠之间包含零宽度的Unicode字符。当你用“光标左移”或“光标右移”来移动该行时,你会发现在这个位置需要两步。

不可见的零宽度字符会导致问号。删除它,你就完成了。

更新:“字符”是e2 80 8e,左对右标记。

+0

谢谢,不知道存在。 +1 –