Попытка вывести латинский перекрестный символ Unicode (hex: 271D) в C # - PullRequest
1 голос
/ 26 марта 2012

Я пытаюсь вывести латинский перекрестный символ Unicode, описанный в этой таблице:

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

Итак, из программы winforms я попробовал это:

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

но он показывает небольшую коробку в форме, где ожидался крест.

Есть ли безопасный * способ вывода этого символа?

Примечание *: «Безопасный», что означает, что он будет работать на среднем ПК, на котором установлены стандартные шрифты Windows.

(Я действительно хочу вывести этот символ в отчете SSRS. Если это невозможно сделать в тексте, мне придется использовать изображение).

1 Ответ

6 голосов
/ 26 марта 2012

Это похоже на проблему со шрифтом; небольшая коробка обычно указывает на это. Символ «✝» LATIN CROSS (U + 271D) имеет ограниченное покрытие в шрифтах . Ни один из шрифтов, обычно поставляемых с Windows, не содержит его. Шрифт Arial Unicode MS делает, но он не является частью Windows, но поставляется с Microsoft Office (и некоторыми другими продуктами).

Подумайте об использовании широко поддерживаемого «†» DAGGER (U + 2020) вместо этого, жирным шрифтом или большим размером, если это необходимо.

Тем не менее, в зависимости от используемого программного обеспечения, существует уродливый хак, который может работать или не работать: установите шрифт Wingdings 2 (обычно доступен в Windows) и выведите \ u0085 или \ u0086. Это зависит от использования Wingdings 2 в качестве шрифта с 8-битной кодировкой. Я не ожидаю, что трюк сработает в большинстве современных сред.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...