Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Общие вопросы о Flash (не затрагивающие ActionScript)

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 18.06.2008, 14:59
Whim вне форума Посмотреть профиль Отправить личное сообщение для Whim Найти все сообщения от Whim
  № 1  
Ответить с цитированием
Whim

Регистрация: Jun 2006
Сообщений: 56
По умолчанию Embedded font при программной генерации swf

Разбираю формат swf, чтобы генерировать файлы программно.
Создать текст, использующий device font проблемы нет. Но вот застряла на том, чтобы встроить шрифт в swf.
Понятно, что нужно использовать GlyphShapeTable в DefineFont.
Но как создать shape для каждого символа и куда его записывать?
Может кто-нибудь сталкивался и может направить в нужное русло?

Старый 18.06.2008, 15:18
Dendroid вне форума Посмотреть профиль Отправить личное сообщение для Dendroid Посетить домашнюю страницу Dendroid Найти все сообщения от Dendroid
  № 2  
Ответить с цитированием
Dendroid
 
Аватар для Dendroid

Регистрация: Dec 1999
Адрес: Магадан
Сообщений: 763
По-моему, проще всего нагенерить разных swf c фонтами через swfmill (http://swfmill.org/doc/using-swfmill.html), и смотреть как оно внутри это устроило.

Код:
<?xml version="1.0" encoding="iso-8859-1" ?>
<movie version="9">
    <background color="#555555"/>
    <frame>
    <library>
        <font name="Symbols" import="font/dejavusans.ttf" 
glyphs="&#x2605;&#x2606;&#x2613;&#x2620;&#x2713;&#x2714;&#x2715;&#x2716;&#x2717;&#x2718;&#x2764;"/>
    </library>
    </frame>
</movie>
__________________
Верить никому нельзя. Мне - можно. :)

Старый 18.06.2008, 15:53
Whim вне форума Посмотреть профиль Отправить личное сообщение для Whim Найти все сообщения от Whim
  № 3  
Ответить с цитированием
Whim

Регистрация: Jun 2006
Сообщений: 56
Видно что был сделан импорт определенных символов из файла .TTF. А как его сделать от этого то все равно понятнее не становится

Старый 18.06.2008, 18:02
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 4  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,784
Пишете парсер ttf в вектор, потом из вектора в бинарный вид тега и вуаля.

Старый 19.06.2008, 21:44
Whim вне форума Посмотреть профиль Отправить личное сообщение для Whim Найти все сообщения от Whim
  № 5  
Ответить с цитированием
Whim

Регистрация: Jun 2006
Сообщений: 56
Получить контур символа из ttf и засунуть его в swf получилось Единственная загвоздка - размер шрифта.
В спецификации написано:
Цитата:
SWF glyphs are always defined on an EM square of 1024 by 1024 units. Glyphs from other
sources (such as TrueType fonts) may be defined on a different EM square. To use these
glyphs in SWF file format, they should be scaled to fit an EM square of 1024.
Во-первых, тогда не понимаю: почему когда делаешь fla, если используешь, например, символ 'А' Tahoma 12px и его же размером 16px, то нужно же вроде делать embedded и для размера 12 и для 16.
Во-вторых, никак не могу сделать, чтобы отрисованные мной символы совпадали с нужным размером. Если генерирую контур символа из шрифта размером 1024px, то отрисовывается с очень хорошим по точности качеством, но когда задаю потом нужный размер текстовому полю, содержащему этот символ - размер больше чем нужный

Старый 19.06.2008, 22:08
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 6  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Цитата:
Во-первых, тогда не понимаю: почему когда делаешь fla, если используешь, например, символ 'А' Tahoma 12px и его же размером 16px, то нужно же вроде делать embedded и для размера 12 и для 16.
Не нужно. Возможно речь идет о Bitmap Text, но и там можно использовать любой размер, просто качественно он будет выглядить дря размеров кратных базовому. Но на то он и Bitmap Text
Цитата:
Во-вторых, никак не могу сделать, чтобы отрисованные мной символы совпадали с нужным размером. Если генерирую контур символа из шрифта размером 1024px, то отрисовывается с очень хорошим по точности качеством, но когда задаю потом нужный размер текстовому полю, содержащему этот символ - размер больше чем нужный
Размер поля всегда больше, чем размер символа в нем.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 20.06.2008, 16:14
Whim вне форума Посмотреть профиль Отправить личное сообщение для Whim Найти все сообщения от Whim
  № 7  
Ответить с цитированием
Whim

Регистрация: Jun 2006
Сообщений: 56
я отрисовываю символ в масштабе относительно рамок 1024x1024(как требует спецификация)
Потом использую этот символ в текстовом поле. Тексту установлена высота шрифта, например, 44
Pядом располагаю поле для сравнения, которое использует тот же шрифт, но из системы(т.е. не embedded), высота шрифта тоже 44px.
И мой отрисованный символ получается больше по размерам.
Значит что-то я делаю не так, а что не могу понять никак

Старый 20.06.2008, 17:19
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 8  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Device font и из ситсемы, во флеше могут отличаться по размерам, не ориентируйтесь на них. Ориентируйтесь на встроенные во флеш.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 20.06.2008, 18:35
Whim вне форума Посмотреть профиль Отправить личное сообщение для Whim Найти все сообщения от Whim
  № 9  
Ответить с цитированием
Whim

Регистрация: Jun 2006
Сообщений: 56
Но как же так: 2 поля текстовых(в одном device font, в другом glyph font) с одинаковым размером шрифта - но в одном он заметно больше - это как-то неправильно

Старый 20.06.2008, 18:41
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 10  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
За device font отвечает система, а не плеер.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Создать новую тему Ответ Часовой пояс GMT +4, время: 19:43.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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