Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   embed custom font (http://www.flasher.ru/forum/showthread.php?t=131421)

AK88 20.10.2009 12:48

embed custom font
 
Добрый день,
возникла проблема с внедрением своего шрифта, следующий код на AS3 упорно не работает, хотя именно он приведен на всех сайтах как пример:
[Embed(source="ууу.pfb", fontName="ууу", mimeType="application/x-font-truetype")]
var PLUMBSOB:Class;
Font.registerFont(PLUMBSOB);
//пишет, что PLUMBSOB == null

набор файлов для шрифта в pfb лежит в том же каталоге, что и флешка...
может кто сталкивался с подобным?

Doctor76 20.10.2009 13:43

Если через флеш компилишь - то можно просто во флеше его внедрить в библиотеку.

AK88 20.10.2009 13:51

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

Doctor76 20.10.2009 14:01

В терьем я так конечно не пробовал. а во втором делал. Внедрял всякие шрифты в папку Windows/Font
Потом во влеше в панели Library на верхней кнопочке -- New Font
И выбирал из списка нужный шрифт)

Тут конечно нужно что бы шрифт лежал не рядом с swf а в папке Windows/Font

AK88 20.10.2009 14:15

я так понимаю, что недостаточно просто скопировать в эту папку шрифт, надо его еще где то прописать?

Doctor76 20.10.2009 14:24

Я больше нигде не прописывал.

А таким методом, как Вы пробуете , я попробовал.
Все нормально работает

вот пример:

Код AS3:

 [Embed(source="C:/Projects/test/roman.fon",fontName="roman",mimeType="application/x-font-truetype")]
        public class Test_dataGrid extends Sprite {
 
 
                private var dataGrid_arr : Array;
 
                public function Test_dataGrid() {                       
                        testDataGrid();
                }
 
                private function testDataGrid() : void {
 
                        var format : TextFormat = new TextFormat();
                        format.size = 12;
                        format.color = 0xFF0000;
                        format.font = "roman";
 
                        var textField : TextField = new TextField();
                        textField.height = 20;
                        textField.embedFonts = true;
                        textField.x = 100;
                        textField.type = TextFieldType.INPUT;
                        textField.border = true;               
 
                        textField.setTextFormat(format);
                        textField.defaultTextFormat = format;
                        addChild(textField);
}


AK88 20.10.2009 14:38

гм... тупо скопировал, у меня не работает.... рамку показывает, а текста в ней не появляется и не ввести

Doctor76 20.10.2009 15:27

Слушай, и у меня такая засада оказывается.
Просто textField.embedFonfs был выключен
а включил и нифика..
Интересно..:quiet:

Felicast 20.10.2009 15:47

Цитата:

[Embed(source="ууу.pfb", fontName="ууу", mimeType="application/x-font-truetype")]
как я понял, ты используешь flash ide. в нем тега embed нет.
мельком прочитал ваше обсуждение, и вот, что хочу сказать: не надо внедрять шрифты в библиотеку!!!!!
можно просто взять какое-нибудь текстовое поле и указать для него embeded шрифт. геморроя будет в десятки раз меньше

AK88 20.10.2009 16:14

спасибо, что сказал про отсутствие тэга)
а как тогда для текстового поля указать embedded шрифт? там же можно выбрать только из набора стандартных рифтов и выбрать набор глифов


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

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