Бесплатно скачать Adobe Flash Player
Flash Ripper RSS Readers

XML2SWF и SWF2XML - встречайте новый язык: RVML и новый swf-(де)компилятор KineticFusion

Цитируем: "После двух лет исследования и разработки Kinesis Software представляет свой первый продукт KineticFusion, основанный на Rich Vector Markup Language (RVML), являющийся полноценным представлением формата SWF в языке XML. KineticFusion написан на языке Java.

В первом релизе продукта KineticFusion мы уделили главное внимание полноценным трансформациям swf-Файлов разных версий в формат RVML и обратно.

Версия: 1.0.2 Размер: 1.3 MB. Скачать самоинсталлирующийся JAR (или ZIP с JAR'ом внутри)"

Конец цитаты.
Цитируемая страница: www.kinesissoftware.com/products.html.

(Чтобы установить продукт, достаточно кликнуть по ссылке с JAR и в открывшемся окне выбрать "Open", все остальное происходит автоматически). Программа бесплатная, распространяется по freeware-лицензии. К системе прилагается неплохая полная документация.

Речь идет о новом языке описания SWF-файлов, язык называется RVML и является подмножеством языка XML. Применив программу KineticFusion, вы можете получить из RVML-файла готовый к использованию SWF-файл. И наоборот, вы можете также декомпилировать SWF-файл и получить его RVML-представление. Все это происходит без привлечения среды разработки Flash.

Например, вот RVML-описание SWF-файла, в котором программно создаются прямоугольник и текстовое поле:

<?xml version="1.0" encoding="UTF-8" standalone="yes" 
?>

<!— <!DOCTYPE Movie SYSTEM 'dtd/RVML.dtd'> —>

<Movie version='6' width='250' height='200' rate='12' backgroundColor='white'
compressed='Yes'>

<Definitions />

<Timeline frameCount='1'>

<Frame frameNo='1'>

<FrameActions><![CDATA[



_global.root_scp = this;

root_scp.createEmptyMovieClip( "rectangle_mc", 1000 );

rectWidth=100;

rectHeight=100;

with(rectangle_mc) {

this._x = Stage.width/2 - rectWidth/2;

this._y = Stage.height/2 - rectHeight/2;

this.beginFill( "0xFFCC00", 60 );

this.lineStyle(0, "0xFF0000", 100);

this.moveTo (0,0);

this.lineTo (rectWidth,0);

this.lineTo (rectWidth,rectHeight);

this.lineTo (0,rectHeight);

this.lineTo (0,0);

endFill();

};

root_scp.createTextField( "title_txt", 1010, rectangle_mc._x, rectangle_mc._y,
rectWidth, rectHeight );

title_txt.html = true;

//title_txt.multiline = true;

title_txt.wordWrap = true;

title_txt.htmlText = "Этот swf-файл создан в <u><a href='http://kinesissoftware.com/products.html' target='_blank'>KineticFusion</a></u> от Kinesis Software (с применением RVML).";


]]></FrameActions>

</Frame>

</Timeline>

</Movie>

Откомпилировав исходный файл с помощью KineticFusion, мы получили результат:




В процеесе компиляции происходит отслеживание ошибок в коде, причем более строгое, чем в "родной" среде разработки Flash. Например, мы получали сообщения об ошибках, пока не расставили точки с запятыми везде, где они должны быть (Flash MX) посмотрел бы на это сквозь пальцы:

12:18:00,381 INFO Main  - Processing XML file: D:\Swf\Experiments\RVML\square100x100.rvml
12:18:00,461 WARNING gQ -
this.moveTo (0,0);
Element: Frame 1, Line: 6, Col: 9 Message: unexpected token: this
this.moveTo (0,0);
Element: Frame 1, Line: 6, Col: 35 Message: expecting SEMICOLON, found ')'

12:18:00,511 INFO Main - Completed processing SWF file: D:\Swf\Experiments\RVML\square100x100.rvml
12:18:22,502 INFO Main - Processing XML file: D:\Swf\Experiments\RVML\square100x100.rvml
12:18:22,603 INFO Main - Completed processing SWF file: D:\Swf\Experiments\RVML\square100x100.rvml


Чтобы получить представление о возможностях данной системы, посмотрите список примеров, включенных в дистрибутив:


ColorTransform.xml
Rectangle.xml
Colors.xml
Polyline.xml
Curve.xml
Replace.xml
ClipActionsSetParametersLoadEnterFrame.xml
Polygon.xml
EArcs.xml
Segments.xml
ClipActionSetParameters.xml
MovingClipDepth.xml
EArcsAndCArcs.xml
ShapeFills.xml
Circle.xml
MorphShape.xml
EArcsSVG.xml
ShapeOrigins.xml
CArcs.xml
LineStyleScale.xml
EditField.xml
ShapeTransform.xml
ButtonSounds.xml
LineStyleDepths.xml
EditFieldTransform.xml
SoundEnvelope.xml
ButtonDragTarget.xml
ImportSymbol.xml
ExportSymbol.xml
SquareCircleMorph.xml
ButtonActions.xml
ImportExportSymbol.xml
FileStartSound.xml
TextClipping.xml
AlterPlaceTransform.xml
ImageShape.xml
Font.xml
URLStartSound.xml
AbFileStartSound.xml
ImageFill.xml
FontAndHTMLEditFields.xml
UserFont.xml
AbADPCM.xml
Gradient.xml
FontRange.xml
Video.xml
FrameActions.xml

Качать здесь: www.kinesissoftware.com/products.html.

Писал Rost, 21 Июль 2003 13:47

Найдены баги:

Проблема в том, что, насколько я понял, он не понимает низкоуровневых извращений - т.е. декомпилятор не лучший

ilya_cat - 21 Июль 2003 14:20

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

Рост - 21 Июль 2003 14:23



Это запись из категории 'Tools'. 10 еще cвежих:

Архивы по категориям:

3D-18, Adobe AIR-38, Animation-1, Apache Ant-1, Architecture-1, ARP-1, Art-26, Articles-26, AS3-57, Books-9, Business-3, Cairngorm-3, CI-1, Classes-10, Coding-31, Community-118, Components-19, Contests-30, conventions-1, Cool-Job-10, Debug-21, Design-28, Development-84, ecology-4, EMO-2, Events-17, Extensions-2, FAQ-9, FDS-1, Flash and html-8, Flash Player-38, Flash Updates-12, flash-on-devices-1, Flash-scene-1, flash10-4, FlashLite-2, Flex-49, Flex 2-80, flex4-3, flexcamp-2, Flickr-1, FMS-2, FPUG-61, frameworks-1, Games-20, Good Job!-44, HaXe-16, Health-2, Humor-11, Ideas-14, IV-1, JavaScript-2, Job-30, JSFL-8, Links-2, Linux-3, Maps-1, Math-8, Money-16, music-1, MXML-1, Open Source-16, Optimization-4, parenting-3, Patterns-2, Personalities-27, Philosophy-4, Politics-1, posters-1, Preloading-3, Productivity-10, PureMVC-11, Pv3d-1, Rafpug-5, Red5-3, Remoting-11, Resources-21, Ruby-6, SAAS-1, Security-11, SEO-9, Silverlight-7, Sound-3, sport-4, Strategy-122, Tamarin-2, Tools-113, Training-3, Trash-8, URAFPUG-14, Urgent-1, Usability-6, Video-6, VoIP-7, Wallop-1, Wishlist-3, XML-1, Архив всех записей (большой)

За последние месяцы:

Ноя 2008: Ноябрьская встреча RAFPUG 12 — для креативных, В продолжение темы флэш-блогов, весь Ноя

Окт 2008: Ура — вторая лицензия Alternativa3D уезжает в Киев!, Влещь на глагне III IIIIIII?, весь Окт

Сен 2008: Встречайте Open Source Flash Media Server — Mammoth, Срочно нужен толковый Flex-разработчик в Харькове (+Java), весь Сен

Авг 2008: Flex Gangsta Rap Video WTF Bro?, 27 сентября — встреча UAFPUG во Львове и плюшки от Adobe, весь Авг

Июл 2008: Тенденции среди работодателей: Adobe Flex, Adobe AIR, Silverlight, Спорт спасет красоту, которая спасет мир!, весь Июл

Июн 2008: Попытка предварительных выводов о встрече аниматоров, Онлайн трансляция встречи аниматоров в Донецке, весь Июн





Примечания:
Статус документа
: в процессе
   2002-2007 Производство: Рост Прибыли · О проекте · Подписка на новости (RSS)