【转载】通过JSFL让Flash Professional CS4或CS5拥有批量FLA导出SVG的功能
近期一个项目要求博主爱吾所爱(爱生活=爱技术)将 所有的.fla源文件里的图形都转为.svg矢量图,经常一番搜索之后,发现新版本的Flash Professional CC已经有此功能,但无奈我等用的机子是老版本CS4.0,那怎么办呢?安装CC需要太多的改变,主机是需要64位的系统,不可能为了这一个功能而装一个 新系统。于是再搜索,果然有解决办法,那就是安装插件!Github上有一高人搞了一个名为Extensible的项目,里面就有为Flash Professional制作的JSFL库(Extensible JSFL Library for Flash Professional:https://github.com/davebelais/Extensible/)。Dave Belais的工作极大的方便我的项目进展,在此向他表示感谢!
但是他的插件并不是完全适合博主爱吾所爱(爱生活=爱技术)的 需要。主要是因为项目有许多.fla的源文件,而这个插件安装完成之后,在Windows->Other Pannels 会出现SVG菜单项,打开之后,是一个可以调各种输出参数的面板——这一切的一切,表明了不能自动化处理所有的任务!这是不行的,得想办法解决。而出现在 Commands菜单中的Export SVG,也无法最终导出文件。无奈之下,只能研究大神的源代码,看看是否还有一线希望了。
下面就将研究结果给大家分享一下。
在Commands菜单的Export SVG.jsfl文件中,有这么短短的两句:
| if(!this.extensible){fl.runScript(fl.configURI+”Javascript/Extensible/init.jsfl”);} |
| (function(ext){ |
| extensible.que.push( |
| new extensible.SVG() |
| ); |
| })(extensible) |
说明init.jsfl文件是至关重要的。此插件都是建立在Extensible这个“类”(姑且这么叫)之上,而Extensible类,就是在init.jsfl文件中定义的。
1. function Extensible(options){…}定义了这个类的属性。
2. Extensible.prototype={…}定义了类的方法。
3. extensible.load( [ ...]),将插件的其他脚本载入进来。
现在分析一下,在有一个Fla文件打开的情况下,在SVG面板中能够成功生成SVG文件,而用Commands菜单里的却不行,可能是缺乏对文件的 引用吧。那么,在Extensible中对文件的引用是怎样的机制呢?可以找到set doc和get doc的定义,原来返回的就是fl.getDocumentDOM()啊。
【转载】通过JSFL让Flash Professional CS4或CS5拥有批量FLA导出SVG的功能的更多相关文章
- adobe 蛋疼的套装, 想安装一个Flash Professional CS6,标准版还没有...
产品比较 查看内容 查看各 Creative Suite 6 版本的组件. Design Standard Design & Web Premium Production Premium Ma ...
- Flash Professional CS6 安装zxp插件
说明 头两天因工作原因需要使用DragonBones,他的工作方式是的Flash Professional CS5.5以上的环境. DragonBones提供的是一个文件名为:xzp的文件,在Wind ...
- 最近比较迷flash professional cc 做PPT,做一个flash做动态打字效果的教程
想做一个flash打字效果.网上的方法要不是太繁琐,要不然就是各种遗漏.在这边做一个行之有效的flash做打字效果教程. 首先我用的是最新版本的flash professional cc .但是应该和 ...
- SWF运行时判断两个DisplayObject是否同个类型,属于flash professional库中的同一个元件
一般我们判断两个实例对象是否同样的类型,可以用typeof得到对象类型,然后用==号比较. typeof适用于原生类型. 而对于自定义类型,虽然typeof得到的都是Object,但还有更强的招数:g ...
- 转载-STM32片上FLASH内存映射、页面大小、寄存器映射
原文地址:http://blog.chinaunix.net/uid-20617446-id-3847242.html 本文以STM32F103RBT6为例介绍了片上Flash(Embedded Fl ...
- 创建和导出SVG的技巧(转载)
本文转载自: 创建和导出SVG的技巧
- 【转载】Serial NOR Flash and U-Boot
转载自:http://blackfin.uclinux.org/doku.php?id=bootloaders:u-boot:serial-flash U-Boot supports serial N ...
- jsfl 生成flash 工具面板
利用flash组件的List做界面,先从flash中拖出List组件,然后删除.绑定Main类. package { import flash.display.Sprite; import flash ...
- 转载:div和flash层级关系问题
转自:http://sin581.blog.163.com/blog/static/860578932012813112334404/ 问题: ie下默认好像div层级没有flash层级高,也 ...
随机推荐
- poj_2739 尺取法
题目大意 给定一个数字N,N可能由1个或多个连续的素数求和得到,比如41 = 2+3+5+7+11+13, 41 = 11+13+17, 41 = 41.求出对于N,所有可能的组合形式. 题目分析 先 ...
- MQTT协议笔记之订阅
前言 记忆不太好的时候,只能翻看以前的文章/笔记重新温习一遍,但找不到MQTT协议有关订阅部分的描述,好不容易从Evernote中找到贴出来,这样整个MQTT协议笔记,就比较齐全了. SUBSCRIB ...
- MQTT的学习研究(十七)Mosquitto简要教程(安装&使用)
Mosquitto是一个实现了MQTT3.1协议的代理服务器,由MQTT协议创始人之一的Andy Stanford-Clark开发,它为我们提供了非常棒的轻量级数据交换的解决方案.本文的主旨在于记录M ...
- SSH配置优化和慢的解决方法
author: headsen chen date: 2018-08-18 00:28:37 ssh配置优化 vim /etc/ssh/sshd_config 1,修改root端口 2,不允许ro ...
- 【BZOJ4101】[Usaco2015 Open]Trapped in the Haybales Silver 二分
[BZOJ4101][Usaco2015 Open]Trapped in the Haybales (Silver) Description Farmer John has received a sh ...
- 【HTTP header】【Access-Control-Allow-Credentials】跨域Ajax请求时是否带Cookie的设置
1. 无关Cookie跨域Ajax请求 客户端 以 Jquery 的 ajax 为例: $.ajax({ url : 'http://remote.domain.com/corsrequest', d ...
- hello gradle
首先下载和安装gradle可以参考官网下载地址,建议下载带有源码和文档的,以便后期查阅. 下载完以后打开终端输入gradle -v有如下信息输出,表示安装成功: bogon:gradle scott$ ...
- 删除Excel中的复选框等控件
- 去掉chrome、safari input或textarea在得到焦点时出现黄色边框的方法
1.去掉chrome.safari input或textarea在得到焦点时出现黄色边框的方法 input{ outline:0;} 2.去掉chrome.safari textarea右下角可拖动鼠 ...
- 20144306《网络对抗》MAL_后门原理与实践
本期收获 1.了解后门的基本概念. 2.Netcat.socat.MSF meterpreter的使用(MSF meterpreter实在太好玩了) 3.后门软件的启动方式: Windows任务计划程 ...