Форум 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=97479)

d0cent 22.06.2007 02:55

Опять со шрифтами ерунда
 
Сделал вот так:
Код:

System.useCodepage = true;

_root.createTextField('text1', 10, 170, 13, 445, 405);
               
var my_fmt:TextFormat = new TextFormat();
my_fmt.font = "my_font";

var my_lv2:LoadVars = new LoadVars();
my_lv2.onData = function(txt2:String):Void  {
        _root.text1.wordWrap = true;
        _root.text1.textColor=0xCCCCCC;
        _root.text1.html=true;
        _root.text1.embedFonts = true;
        _root.text1.multiline = true;
        _root.text1.selectable = true;
        _root.text1.mouseWheelEnabled = true
        _root.text1.setTextFormat(my_fmt);
        _root.text1.htmlText = txt2;
       
};
my_lv2.load("text.html");

my_font - динамическое поле за пределами кадра.
Если в нем установлен шрифт Times New Roman - текст виден, но если там выбрать любой другой, например Arial - все, текст не виден.
Мне б и Таймса хватило, но клиенту таймс не нравится, просит Arial, а с ним такая вот ерунда...

В чем может быть дело?

screamge 22.06.2007 03:02

Это уберите:
Код:

System.useCodepage = true;
Усли не поможе значиту вас фонт не правильно заембден

d0cent 22.06.2007 03:15

Цитата:

Сообщение от screamge
Это уберите:
Код:

System.useCodepage = true;
Усли не поможе значиту вас фонт не правильно заембден

Не помогло. К тому же это надо, что бы текст выводился в загружающей флешке (там есть маска).

А как правильно заэмбедить? У меня там в текстовом поле в EmbedFonts включен набор символов АБВГДЕЖЗабвгде..... ну и так далее. Даже если All поставить - всеравно не катит.

screamge 22.06.2007 03:19

Набор символов нужно указывать для шрифта который в формате прописан:

Код:

var my_fmt:TextFormat = new TextFormat();
my_fmt.font = "Verdana"; //нужно подключить шрифт именно для Верданы

System.useCodepage = true - к маске никакого отношения не имеет

d0cent 22.06.2007 03:46

Цитата:

Сообщение от screamge
Набор символов нужно указывать для шрифта который в формате прописан:

Код:

var my_fmt:TextFormat = new TextFormat();
my_fmt.font = "Verdana"; //нужно подключить шрифт именно для Верданы


Неа, не прокатило... :(

screamge 22.06.2007 04:14

Выкладывайте исходник

d0cent 22.06.2007 05:35

Цитата:

Сообщение от screamge
Выкладывайте исходник

Так там больше ничего кроме того что уже показал и нету...

screamge 22.06.2007 05:36

А должен ещё быть импортирован фонт:)

d0cent 22.06.2007 06:23

Цитата:

Сообщение от screamge
А должен ещё быть импортирован фонт:)

а это как?

screamge 22.06.2007 08:25

Способ набер ван:
1. Создаёте на сцене динамик текстовое поле
2. Выбераете шрифт который хотите подключить
3. Тыкаете накнопке Embed
4. Из списка выбираете Uppercase [A-Z], Lowercase [a-z], Numerals [0-9], Punctuation, Basic Latin.
5. Если хотите чтобы русские буквы тоже читались, убеждаетесь что выбранный фонт их поддерживает и в поле Include this characters пишите:
"абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ" (без кавычек)

Теперь код:
1. Создаете TextFormat и в его свойстве font пишете в кавычках название вами уже подключенного шрифта.
2. Тексфилфу embedFonts выставляете в true и присваиваете созданный TextFormat.

Способ намбер ту:
1. В библиотеку добаляете шрифт
2. в линкейдж идентифаере прописываете уникальное имя.

Далее тот же код что и в предидущем способе за исключением того что имя шрифта уже задается соответствующее линкейджу.


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

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