Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Встраиваю шрифт, что не так? (http://www.flasher.ru/forum/showthread.php?t=142220)

mj_nooker 15.07.2010 17:13

Встраиваю шрифт, что не так?
 
1) Есть XML, utf-8. В нём - списки названий кнопок меню. Две версии названий - английская и русская

2) В библиотеке создаю New font: имя:Europe_12, шрифт: Europe_Ext, размер 12, называю линк для AS: Europe_12_lnk, Export in 1st frame (выключал экспорт в 1м кадре - ложил текстовое поле, описанное встроенным шрифтом на сцену/за пределы/)

3) прописываю leftMenuTextFormat:
Код AS1/AS2:

var leftMenuTextFormat:TextFormat = new TextFormat();
        leftMenuTextFormat.font = 'Europe_12_lnk';
        leftMenuTextFormat.letterSpacing=2.8;
        leftMenuTextFormat.size=12;
        leftMenuTextFormat.align='center';

4) Циклом вешаю на кнопки названия:
* читаю XML;
* присваиваю menuName_txt (текстовое поле) .embedFonts = true;
* присваиваю menuName_txt.text = XMLзначение; //присваивается, проверял!
* присваиваю формат menuName_txt.setTextFormat(leftMenuTextFormat);
После этого фонт не отображается вообще (пустое место, ни "загогулины")

5) выключаю присваивание текстовому полю setTextFormat'а - просто
* читаю XML;
* присваиваю menuName_txt (текстовое поле) .embedFonts = true;
* присваиваю menuName_txt.text = XMLзначение;
Аглицкий текст отображается, кирилический нет.

6) Текстовому полю, которое выложил на сцену, чтоб из него брать встроенные шрифты, присваиваю свойства: шрифт = Europe_12*, Embedding: All (а зачем мелочиться:)), компилирую - то-же самое: Английские - есть, Киррилических - нету.

-------------2й вариант:----------------
2.1) "Образцовому" текст.полю на сцене задаю шрифт Europe_Ext (который в списке системных шрифтов), выставляю параметры отображения. Встраиваю: Embedding: All
2.2)
* читаю XML;
* присваиваю menuName_txt (текстовое поле) .embedFonts = true;
* присваиваю menuName_txt.text = XMLзначение;
Текст Английский - отображается, !!! Кириллический-квадратами !!!

2.3) корректирую leftMenuTextFormat:
убираю строчку с заданием свойства .font:

Код AS1/AS2:

var leftMenuTextFormat:TextFormat = new TextFormat();
        leftMenuTextFormat.letterSpacing=2.8;
        leftMenuTextFormat.size=12;
        leftMenuTextFormat.align='center';

текстФормат мне необходим, т.к. программно должны обрабатываться .antialiasing и .thickness

Компилирую: текстформат работает (заметно глазом по .antialiasing и .thickness), но вывод остаётся таким-же - Английские - корректно, Кирилические - квадраты.

Пожалуйста, помогите хоть рассуждениями, хоть ссылкой на топик с решенным вопросом (а не с кучей кустарных решений или дилетанских рассуждений), хоть чем-нибудь работающим.

В процессе поиска инфы натыкался на статью об UTF-8 совместимости шрифтов, в тот момент не посчитал инфу нужной, сейчас не могу найти посещённого урл"а. Может дело в этой самой "совместимости"? как проверить - не знаю.
шрифт: http://www.free-fonts-ttf.org/true-t...3-download.htm

AzagThoth 15.07.2010 18:14

1. В шрифте может просто не быть кириллицы.
2. Глифы надо встраивать в среде разработки.

mj_nooker 15.07.2010 18:51

1) проверено - кириллица есть, набирал киррилические символы данным шрифтом, статик-текст выдаёт нормальный шрифт
2) а проще говоря?)) не понял что такое глифы, и, соответственно, термина "вставлять в среде разработки"

KirAmp 15.07.2010 18:54

mj_nooker
Если у тебя CS5 флеш, то надо тебе зайти в text => font embedding и добавить твой шрифт...... возможно из за этого

mj_nooker 15.07.2010 21:51

CS4 :(

in4core 15.07.2010 22:00

в CS4 так же

mj_nooker 16.07.2010 02:44

как это? там есть только кнопка "Character Embedding", в которой перечисляются стандартные наборы шрифтов, но как "исключения" - моего встроенного или "добавить мой шрифт" там нет.
Имелось в виду просто "встроить перечисляемые" = "киррилический" + "латинский" + блабла?
Если да, то я выше об этом подробно написал.

udaaff 16.07.2010 11:42

Цитата:

Сообщение от in4core (Сообщение 922630)
в CS4 так же

не так же.

mj_nooker, выкладывайте пример.

Что такое хорошо? 20.07.2010 02:17

Бывают шрифты кривые. Такими можно даже писать кириллицей в статических полях и все будет отображаться, а при динамической загрузке - нет ))
Хотя у тебя шрифт Europe_Ext и сам по себе он нормальный (юзал его когда-то в проекте), но на всякий случай попробуй всеже Arial-ом для проверки.


Часовой пояс GMT +4, время: 08:19.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.