Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   FAQ (http://www.flasher.ru/forum/forumdisplay.php?f=86)
-   -   Как встроить шрифт (http://www.flasher.ru/forum/showthread.php?t=65953)

Churinga 08.04.2004 17:02

Как встроить шрифт
 
пишу такой код:

chattext.createTextField("mytext",1,0,0,200,500);

chattext.mytext.wordWrap=true;
chattext.mytext.multiline=true;
format = chattext.mytext.getTextFormat();
format.font = "assa";
chattext.mytext.setNewTextFormat(format);
chattext.mytext.html = true;
chattext.mytext.embedFonts = true;
chattext.mytext.border = true;

далее пишу

chattext.mytext.htmlText = "<b>bla bla</b>"
и ничего не работает :(
есть ли какой-то выход?
Оговорюсь, что без html все работает отлично, а шрифт вынимается из библиотеки без проблем.

Nox Noctis 09.04.2004 13:22

тут есть две грабли. два грабля. двое граблей. тьфу.

вобщем грабли основные, 2шт.

1. для каждого вида декорации шрифта (i, b, i+b, без декорации) придётся отдельно включить шрифт в свфку.

можно сделать попроще - положить прямо на сцену несколько пустых динамических текстовых полей, со включенным в них шрифтом в разных декорациях. это только вопрос удобства в данном случае.

самый оптимальный вариант: (я его назначаю оптимальным :) )

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

— задаём всем этим символам линкейджи (не важно какие, главное сам факт :) )

— в текстовом поле указываем все что надо, embedFonts = true, но не указываем какой шрифт.

— в хтмле пишем:
TF.htmlText = "<font face='имя_шрифта'>plain <b> bold </b><i> italic</i></font>"
...при чем в качестве face указываем имя самого шрифта, а не линкейджи, которые есть у шрифтовых символов. (чтобы наверняка узнать под каким именем идёт шрифт, нужно в паблиш сеттингзах поставить галку Generate size report, и понаблюдать как там в репорте шрифт назван)

2. если в формате всё же указан font, то по независящим от редакции причинам, порядок выполнения строчек
chattext.mytext.setNewTextFormat(format);
chattext.mytext.text = "....";
имеет значение.
если при установке хитрого шрифта сначала записать в поле текст, а потом назначить формат - то нифига работать не будет.


Цитата:

Оригинал написал(а) Churinga
паажааалустаа! :)
незачт :)

Churinga 09.04.2004 14:09

Вложений: 1
to Nox Noctis: погляди , че не так, а то начинаю чувствовать себя второгодником школы даунов.

Nox Noctis 09.04.2004 14:20

Цитата:

1. для каждого вида декорации шрифта (i, b, i+b, без декорации) придётся отдельно включить шрифт в свфку.
то есть по одному шрифтовому символу для КАЖДОГО из случаев:
1. для недекорированного текста
2. для болда
3. для италика
4. болд+италик


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

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