在Silverlight中显示®符号

5

大家好!

我正在尝试在我的Silverlight应用程序中显示®和上标TM符号。我想将包含这些符号的文本保存在resx文件中。

我尝试过的事情:

  • 从任何文档中复制粘贴®符号到resx文件中。 ®符号会显示在resx文件中。但是,在运行Silverlight应用程序时,会抛出xamlparseexception异常。

  • 在resx文件中使用unicode文本&#174代替®符号。同样会抛出xamlparseexception异常。

我的resx文件编码为utf-8。

感谢您的想法!

编辑:
错误地提到了@而不是®。

快照中的红框是Silverlight中符号的显示方式。蓝框是它需要显示的方式。
alt text

编辑2和解决方案: 符号的显示方式取决于所使用的字体。此外,在Silverlight中显示上标有点棘手。但是,我发现的最简单的解决方案是在Windows字符映射工具中创建上标文本,然后将其复制粘贴到您的应用程序资源文件中。


将此页面上的®符号复制并粘贴到resx文件中,我在使用VS2008中的Silverlight 3时成功了。您使用的是哪个版本?您使用什么代码将resx文件中的值设置到屏幕上? - John
@John:我成功地显示了这个符号,但是它的大小很小,以至于®符号被显示为一个带有圆点的圆圈。我已经附上了一个快照,其中红色框中显示了实际效果,而蓝色框中则是期望的效果。感谢您的回复! - pencilslate
1个回答

1

®符号的大小取决于所使用的字体。有些字体将其绘制为上标,而其他字体将其绘制为标准字符。例如,“Lucida Sans Unicode”字体将其视为上标,而“Lucida Grande”字体则将其绘制为普通字符。因此,您需要小心选择要用于呈现它的字体。

正如我写这篇文章时所看到的那样,这是一个典型的例子。我正在写这篇文章的文本框中,®字符作为上标显示,而在下面的预览框中,该字符的大小是正常的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接