Просмотр полной версии : Object to shape
klafuda_klalafu
21.12.2006, 17:02
А можно ли превратить объект в шейп программно! то есть на экране будет нарисован объект но его не будет ...
в частности интересует вопрос как сделать так что бы текст был не в текстфилде а простыми шейпами....
:wacko:
уже сума схожу не вижу решения
motor4ik
21.12.2006, 17:56
embed fonts Это и есть вектор шрифта
klafuda_klalafu
21.12.2006, 20:54
Зачем?
шоб ресурсов меньше жрало. попробуй нарисовать на мувиклипе 5000 текстовых полей createTextField'ом и посмотри сколько это памяти сожрёт и как тормозить будет...теперь попробуй сделать кэшасбитмап и посмотри ещё раз...
теперь сделай драг'н'дроп
а теперь подумай над квотом!
надо их нарисовать один раз на канве и не хранить 5000 объектов в памяти!
klafuda_klalafu
21.12.2006, 22:13
а как текст рисовать обычным текстфилом или шо ?
Сначала сгенерить кучу текстфилдов в мувике. Срисовать мувик, убить его, а вместо него положить битмап.
шоб ресурсов меньше жрало. попробуй нарисовать на мувиклипе 5000 текстовых полей createTextField'ом и посмотри сколько это памяти сожрёт и как тормозить будет...теперь попробуй сделать кэшасбитмап и посмотри ещё раз...
теперь сделай драг'н'дроп
а теперь подумай над квотом!
надо их нарисовать один раз на канве и не хранить 5000 объектов в памяти!5000 текстовых полей будут тормозить так же как 5000 (*на количество символов в поле) шейпов.
Aziz Zaynutdinoff
22.12.2006, 13:55
klafuda_klalafu, а зачем тебе 5000 текстовых полей? :)
Кажется он будет генерировать текстовое поле из отдельных буковок. Это лабуда нужна для приданию тексту определенных свойств, визуальных - цвет выделения, особенная выключка, еще кое что. Да вообще такая проблемма не нова, но решений бывает много
import flash.display.BitmapData;
function toBitmap (t_txt:TextField):Void {
if (!t_txt.length) {
return;
}
t_txt.autoSize = true;
var bitmap:BitmapData = new BitmapData(t_txt._width-4, t_txt._height-4, true, 0x00000000);
t_txt._x = -2;
t_txt._y = -2;
bitmap.draw(t_txt._parent);
t_txt._parent.attachBitmap(bitmap, t_txt.getDepth());
} - создаешь тект поле с одной буквой и конвертишь его в битмап
в данном случае битмап просто заменяет собой текст поле, но при необходимости можно докидывать его в какой-нибудь один битмап, чтобы не плодить их много.
да, мой код - это довольно частный случай, выдранный из готового проекта.
просто для иллютсрации того что можно и примерно как.
при желании можно сделать всё покрасивше и поуниверсальней.
klafuda_klalafu
28.12.2006, 20:57
спасибо, это то что надо!....
klafuda_klalafu
29.12.2006, 11:33
есть такое... надо сделать так что бы текст рисовался но не объектами...
шота я запарился....
и в то же время надо так что бы текст перекрывался
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.