试图在C#中输出unicode拉丁十字字符(十六进制:271D)

本文关键字:字符 十六进制 271D 丁十字 unicode 输出 | 更新日期: 2023-09-27 18:29:09

我正在尝试输出此图表中描述的unicode拉丁十字字符:

http://en.wikipedia.org/wiki/List_of_Unicode_characters

所以,从一个winforms程序中,我尝试了这个:

MessageBox.Show("Unicode latin cross character follows : 'u271D");

但它显示了一个小盒子的形状,在那里十字架是预期的。

有没有一种安全的方法来输出这个字符?

注*:"安全",意味着它可以在安装了标准Windows字体的普通电脑上工作。

(我实际上想在SSRS报告中输出这个字符。如果不能在文本中完成,我将不得不使用图像)。

试图在C#中输出unicode拉丁十字字符(十六进制:271D)

这似乎是字体问题;一个小方框通常表示这一点。角色"✝"LATIN CROSS(U+271D)的字体覆盖范围有限。Windows通常附带的字体都不包含它。Arial Unicode MS字体包含它,但它不是Windows的一部分,而是Microsoft Office(和其他一些产品)附带的。

考虑使用广泛支持的"†"DAGGER(U+2020),如果需要,可以使用粗体或更大的尺寸。

然而,根据使用的软件,有一种丑陋的破解方法可能有效,也可能无效:将字体设置为Wingdings 2(通常在Windows上可用)并输出''u0085或''u0086。这取决于使用Wingdings 2作为具有8位编码的字体。我不希望这种把戏在大多数现代环境中都能奏效。