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

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

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

Регистрация: Jul 2013
Адрес: Днепр
Сообщений: 529
Отправить сообщение для alexandrratush с помощью ICQ Отправить сообщение для alexandrratush с помощью Skype™
По умолчанию Проблема с текстовым шрифтом после копирования колеса

Здравствуйте! Суть проблемы, есть колесо фортуны-спрайт, на нем текстовые поля-значения. После того как добавлен нужный текст, копирую колесо и потом уже кручу один объект (а не несколько). Но возникла проблема со шрифтом, см. файлы. Как этого избежать? Возможно ли скопировать чтобы текстовые поля не выглядели так ужасно? Вот код, который приводит ко второму результату:
Код AS3:
var bmd:BitmapData = new BitmapData(_circleAsset.width, _circleAsset.height, true, 0xFFF);
var m:Matrix = new Matrix();
m.translate(_circleAsset.width * .5, _circleAsset.height * .5);
bmd.drawWithQuality(_circleAsset, m, null, null, null, null, StageQuality.BEST);
m.translate(-bmd.width, -bmd.height);
 
while (_circle.numChildren > 0) _circle.removeChildAt(0);
_circle.graphics.beginBitmapFill(bmd, m, false, true);
_circle.graphics.drawRect(-bmd.width * .5, -bmd.height * .5, bmd.width, bmd.height);
_circle.graphics.endFill();
где, _circleAsset - входной, а _circle - результат.
Буду рад любым идеям. Спасибо!
Название: 1.jpg
Просмотров: 146

Размер: 100.7 Кб Название: 2.jpg
Просмотров: 147

Размер: 83.1 Кб

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

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
слева до кеширования, на сцене или в асетах, справа - после?

Явно проблема при снятии. Возможно ты меняешь размеры? Тогда попробуй обернуть в контейнер и снять с контейнера.

Добавлено через 53 секунды
или у тебя альфа канал, и просто две карусели одна на одну налаживается)

Добавлено через 3 минуты
на всяк, если ты потерял
Код AS3:
public static function get( ARG_object:DisplayObject, ARG_x:Number = 0, ARG_y:Number = 0, ARG_width:Number = 0, ARG_height:Number = 0,transpend:Boolean=true):BitmapData {
 
			if (!ARG_width) ARG_width = (ARG_object.mask) ? ARG_object.mask.width : ARG_object.width;
			if (!ARG_height) ARG_height = (ARG_object.mask) ? ARG_object.mask.height : ARG_object.height;
 
			var cropArea:Rectangle = new Rectangle(0, 0, ARG_width, ARG_height);
			var fillColor:uint = transpend
					? 0x00000000
					: 0x0;
			var bmpd:BitmapData = new BitmapData(ARG_width, ARG_height,true,fillColor);
 
			var croppedBitmap:Bitmap = new Bitmap(bmpd, PixelSnapping.ALWAYS, true);
 
			var cropMatrix:Matrix = new Matrix();
			cropMatrix.translate(-ARG_x, -ARG_y);
 
			bmpd.draw( ARG_object, cropMatrix, null, null, cropArea, true );
 
			return bmpd; 
		}
возможно что ты пытаешься залить шейп, загрузи в Битмапу,
Код AS3:
new Bitmap( bmd )
или
Код AS3:
bitmap.bitmapData = bmd;
__________________
return this...

Старый 08.06.2015, 18:30
alexandrratush вне форума Посмотреть профиль Отправить личное сообщение для alexandrratush Найти все сообщения от alexandrratush
  № 3  
Ответить с цитированием
alexandrratush
 
Аватар для alexandrratush

Регистрация: Jul 2013
Адрес: Днепр
Сообщений: 529
Отправить сообщение для alexandrratush с помощью ICQ Отправить сообщение для alexandrratush с помощью Skype™
да, слева на сцене, справа - после.
Меняю только размер круга-основы. Текстовые поля потом уже добавляются. Разве это как-то влияет?
нет, карусель одна, та что справа.

Старый 08.06.2015, 18:42
AlexCooper вне форума Посмотреть профиль Отправить личное сообщение для AlexCooper Найти все сообщения от AlexCooper
  № 4  
Ответить с цитированием
AlexCooper
 
Аватар для AlexCooper

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
сделай все транформации над оригиналом, помести в контейнер и снего снимай

Добавлено через 3 минуты
а вообще, пора Starling подключать к своим проектам)
__________________
return this...

Старый 12.06.2015, 23:31
alexandrratush вне форума Посмотреть профиль Отправить личное сообщение для alexandrratush Найти все сообщения от alexandrratush
  № 5  
Ответить с цитированием
alexandrratush
 
Аватар для alexandrratush

Регистрация: Jul 2013
Адрес: Днепр
Сообщений: 529
Отправить сообщение для alexandrratush с помощью ICQ Отправить сообщение для alexandrratush с помощью Skype™
AlexCooper, спасибо за советы! Проблема решилась сама собой, почистил код, сменил подход к решению задачи. +, узнал что не нужно два раза применять матрицу (при снятии битмапДаты и при рисовании, что видно в первом посте).

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

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

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


 


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


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