#actionscript-3 #fonts #euro
#actionscript-3 #шрифты #Евро
Вопрос:
Я создаю флеш-рекламу, использующую шрифт Neo Sans, текст, который отображается, содержит символ евро, но я могу заставить показывать символ евро. Вот как я встраиваю шрифт:
[Embed(source='C:/WINDOWS/Fonts/NeoSans Medium.otf', fontFamily='_NeoSansMedium', embedAsCFF='false', mimeType="application/x-font", unicodeRange="U 20AC")]
public static var _NeoSansMedium:Class;
Как вы можете видеть, я использую unicodeRange, чтобы попытаться отобразить символ евро, но он по-прежнему не отображается.
Вот как я использую этот встроенный шрифт:
var subPriceFormat:TextFormat = new TextFormat();
subPriceFormat.font = "_NeoSansMedium";
subPriceFormat.size = 40;
subPriceFormat.letterSpacing = 0;
subPriceFormat.color = 0xdc188c;
var testFont:TextField = new TextField();
testFont.type = TextFieldType.DYNAMIC;
testFont.defaultTextFormat = subPriceFormat;
testFont.selectable = false;
testFont.multiline = false;
testFont.embedFonts = false;
testFont.width = 400;
testFont.text = "£31,90sdfsdf €";
trace(testFont.text);
addChild(testFont);
Как я могу проверить, поддерживает ли этот шрифт символ Евро, и является ли unicodeRange причиной, по которой символ евро не отображается?
Спасибо
Стивен
Комментарии:
1. вы уверены, что не хотите вместо этого иметь
testFont.embedFonts = false;
значение true?2. да, я действительно нашел причину проблемы. Используемый шрифт не поддерживает символ евро. Пришлось перейти на другой шрифт, который похож и поддерживает символ евро.
Ответ №1:
если вы уже расширили свой swf-файл, внедрив шрифт, вам также следует его использовать, поэтому установите
embedFont = true;
также убедитесь, что вы указали правильный диапазон unicode, хорошим инструментом является http://inspiritgames.com/blog/2010/09/unicode-range-generator-for-as3 /