PDA

Просмотр полной версии : Нужно сделать примочку (плагин) к Adobe Flash CS3


drupe_net
12.02.2009, 11:53
Появилось задание по практике сделать плагин для Adobe Flash CS3, который работает с буфером обмена. Точнее копирует и вставляет объекты с одного кадра на другой. С сохранением общего позиционирования (для анимации мимики)
Проблема в том, что копаю в тоннах мануалов целый день и не могу найти как с этой задачей бороться...

Подскажите новичку как такие задачи решаются и какие программные средства используются. Куда смотреть и что искать.
Спасибо.

aksios
12.02.2009, 12:28
Как делать плагин: в поиске набрать jsfl
Что нужно для приготовления: это (http://help.adobe.com/en_US/Flash/10.0_ExtendingFlash/WS5b3ccc516d4fbf351e63e3d118a9024f3f-7e2d.html), это (http://help.adobe.com/en_US/Flash/10.0_ExtendingFlash/WS5b3ccc516d4fbf351e63e3d118a9024f3f-7e02.html) и это (http://help.adobe.com/en_US/Flash/10.0_ExtendingFlash/WS5b3ccc516d4fbf351e63e3d118a9024f3f-7e2b.html).

drupe_net
13.02.2009, 04:25
Спасибо, вы очень помогли. Теперь знаю, что искать :-)

drupe_net
19.02.2009, 04:57
Почитал... нашел самую полезную на мой взгляд статью по схожей тематике:
http://gotoandflash.ru/forum/index.php?showtopic=3011

Там как раз описано создание панели (по типу той, что нужна) и дальнейшее интегрирование в пакеты для установки плагина (*.mxp )

В тех ссылках на хелп непонятными остались самые важные вопросы, из-за чего собственно и приходится делать плагин:
1) в методе document.clipCopy() не передается параметров на позиционирование копируемого объекта.
2) для вставки - The following example pastes the Clipboard contents in place in the current document:
fl.getDocumentDOM().clipPaste(true); - это обычная команда вставить в тоже место. Без true вставляет в центр документа...

У меня самого не получилось повторить эту ситуацию, но иногда при копировании и модификации символа в отдельном документе и последующей его вставке в другие кадры изначального документа он немного смещался (при работе с мимикой и т.п.)
Видимо это как-то было связано с центральным маркером объекта, который смещался при растягивании или сужении.
Поэтому решил переспросить так, чтобы не было разночтений:

Нужно сделать панельку с тремя кнопками (встраиваемую в саму среду разработки): копировать, вырезать и вставить + повесить на них "горячие клавиши".
И сделать обработчики событий при их нажатии. Но при этом нужно, чтобы выделенный и скопированный элемент вставлялся в любой новый документ или кадр в тоже самое место. Т.е. при повторном копировании на исходный кадр он практически полностью совпадает с исходным объектом, за исключением модифицированных частей.

Где-то прочитал про временные слои, на которые можно переносить объект, но не знаю как это согласуется с работой в разных документах, и что самое печальное теперь не могу вспомнить где это нашел :-(

P.S. если я все-таки ошибся и это не та же самая функция Past in plase, или что во Флеше просто не может быть таких проблем с позиционированием объекта при работе с ClipBoard'ом, то с радостью услышу эту новость ибо плодить дублирующий функционал дело нехитрое, но и не полезное.

И еще вопрос не в тему: в более ранних версиях Flash возможна такая реализация? Например, в Macromedia Flash MX 2004?