Встроенные шрифты не будут отображаться

Я пытаюсь встроить шрифт в FlashDevelop. Моя структура папок

Структура папки FlashDevelop

Мои метаданные для вставки

[Embed(source = 'resources/04B08.TTF', fontName = '04b08')] public var _04b08:Class;

Мой код

    public var titleFormat:TextFormat;
    public var titleText:TextField;

    private function init(e:Event = null):void 
    {
        // entry point
        titleText = new TextField();
        titleFormat = new TextFormat();
        titleFormat.font = "04b08";
        titleFormat.color = 0xFFFFFF;
        titleFormat.size = 72;

        //titleText.embedFonts = true;
        titleText.autoSize = TextFieldAutoSize.LEFT;
        titleText.antiAliasType = AntiAliasType.NORMAL;
        titleText.defaultTextFormat = titleFormat;
        titleText.text = "TEST";

        titleText.x = 10;
        titleText.y = 10;

        addChild(titleText);
    }

Если я использую это, я получаю

ТЕСТОВОЕ ЗАДАНИЕ

Но я раскомментирую titleText.embedFonts = true; линия, я получаю

Это метод, который я могу найти во всех руководствах. Что я должен сделать, чтобы заставить его работать?

1 ответ

Решение

Вы должны попробовать метод registerFont() перед его использованием:

import flash.text.Font;
Font.registerFont(_04b08);

Кроме того, попробуйте другие параметры метаданных, такие как embedAsCFF='false' а также fontFamily='fontName', а затем использовать titleFormat.font = "fontName";,

Для более надежного тестирования не устанавливайте шрифт в вашей ОС.

Другие вопросы по тегам