|
|
|||||
Простейшайя рисовалка
Открыл тут от нечего делать flash, перетащил на сцену Picker, и в итоге экспериментов пришел к какому то подобию рисовалки:
http://vkontakte.ru/app1834387 (не знаю, откроется или нет) fla во вложении. Как видно все очень убого - событие MOUSE_MOVE срабатывает почему то редко, и получаются отрывистые кружочки. И еще не понятно как ограничить размер Sprite - вот сейчас можно закрасить весь экран=\ Может не его использовать тут? Уважаемые форумчане, какие можете дать советы?) |
|
|||||
Lorem ipsum
|
я думал и вправду редко прям. да приемлемо. просто не кружочками все это делай, а толстыми линиями =)
clear вываливает в fullscreen 0о
__________________
Поймай яблоко 2! |
|
|||||
Регистрация: Nov 2008
Адрес: Атланта
Сообщений: 1,271
|
а сохранить то что нарисовал, можно?
__________________
Пока я жив, Вы горем обеспечены |
|
|||||
добился неприрывных линий)
Честно сказать даже не представляю как это сделать. У спрайта нет вроде никаких методов преобразования в bitmap, да и сохранить на компьютере из web приложения вроде нельзя. |
|
|||||
в 10 плеере есть метод файлреференса save, фоткаете спрайт в битмап, битмап при помощи jpg енкодера преобразуете в байт-аррай для сохранения файлрефернсем.
Однако заковыка файл референс чето стал сохранять файлы без расширения, поэтому надо попросить пользователя дописать расширение ручками. Я тож сделал рисовалку, но векторную, можете заценить, надо при сохранении дописать расширение swf, однако ниче хорошего не получилось, тк. большинство пользователей векторами рисовать не умеют, в основном. кроме виндовского Паинта и фотошопа ничем не рисовали и надо делать целый тутор по тому как рисовать в моем редакторе, так что обилие кнопок только пугают пользователя. По поводу ограничения, сделайте просто маска на спрайт на котором рисуется контент или скроллрект.
__________________
Гоночка Последний раз редактировалось Alex Lexcuk; 08.05.2010 в 01:51. |
|
|||||
Цитата:
private function onSave(e:MouseEvent):void { var temp:BitmapData = new BitmapData(imageWidth, imageHeight); temp.draw(easel); image = new Bitmap(temp); var jpgimage:JPGEncoder = new JPGEncoder(100); var ba:ByteArray = jpgimage.encode(image.bitmapData); var save:FileReference = new FileReference(); save.save(ba, "image.jpg"); } Цитата:
ps Распрощался с flash ide - переписал все в flash develop http://vkontakte.ru/app1834387 to Alex Lexcuk Занятное приложение. Но все же если не тутариал, то хотя бы всплывающие названия кнопок при наведении были бы не лишними) Как у тебя реализован карандаш? даже при очень быстрых движениях мыши - он ставит точки на одинаковом расстоянии ... |
|
|||||
Lorem ipsum
|
хм... а стыки линий отрисованы точечками =)
если не ошибаюсь BlendMode.LAYER поможет. но тогда, в самом простом случае, нужно будет при смене "Жесткости" (лучше назвать "Прозрачность", бо "Жесткость" — это немного не это) заводить новый спрайт, кидать его на холст, делать ему BlendMode.LAYER и alpha соответственно жесткости. и рисовать все новые линии в нем. до следующей смены жесткости.
__________________
Поймай яблоко 2! |
|
|||||
Lorem ipsum
|
ну если историю — то да. главное за памятью/быстродействием следить. ну и тоже =) стараться все-таки в процессе все спрайты в один битмап складывать, чтобы само рисование не тормозило. а историю уже подымать включением всех спрайтов до нужного — и снова отрисовкой.
__________________
Поймай яблоко 2! |
Часовой пояс GMT +4, время: 17:33. |
|
« Предыдущая тема | Следующая тема » |
|
|