我正在尝试使用€
转义C#中的欧元符号\u20AC
,但由于某种原因,结果是:?€
。那里有一个问号。我正在使用PdfSharp将代码转换为PDF文件,我需要使用欧元符号。
我试过这个:
.Replace("?", "")
但这两种选择都不起作用。
这是使用欧元符号绘制String
的代码:
gfx.DrawString("\u20AC " + myString, normalFont, textColor,
new XRect(0, 0, 0, 0), XStringFormats.Default);
注意:其他符号如%
正在运作
修改
在应用建议表格PDFSharpNovice之后我添加了这个
XPdfFontOptions options = new XPdfFontOptions(PdfFontEncoding.Unicode,
PdfFontEmbedding.Always);
这是新输出:
答案 0 :(得分:3)
问题不在于欧元符号。 您的字符串在引号和反斜杠之间包含零宽度Unicode字符。使用"光标向左移动"或者"光标右边"你会注意到这个位置需要两步。
隐形的零宽字符会导致问号。删除它,你就完成了。
更新:"字符"是e2 80 8e,LEFT-TO-RIGHT MARK。