大家都知道Flash处理矢量图比位图要慢,而具体的性能上对比也有不少的前人已经做过。
http://bbs.9ria.com/forum.php?mod=viewthread&tid=228212&extra=page%3D1%26filter%3Dtypeid%26typeid%3D332&page=1
这里copy一下别人的结论,4种模式下的性能对比:

另外,这里想补充2点,第一个是关于为什么位图是否带AS链接的区别;第二个是导出为位图和缓存为位图的区别。

1、首先看看这里位图指的是怎么样的场景:



 
      

trace一下Ball元件的子节点,我们会发现位图带不带导出AS链接,有惊人的差别。
不带AS链接,子节点是一个flash.display.Shape
带AS链接,子节点是一个flash.display.Bitmap

我的理解是:
不带AS链接,编译器认为这个位图不会再重复使用,为了保持矢量作风(Flash喜欢矢量),把位图分离填充到Shape中。
如果导出了AS链接,那么编译器会知道日后还会实例化(new)这个BitmapData,所以就生成为Bitmap

2、在测试过程中,尝试了一下“导出为位图”和“缓存为位图”。

缓存为位图也就是上边链接文章说的方式,对于元件本身没有动画的情况,是非常有效的。当然,文章的示例程序还是包了一层MovieClip,也许实际应用会有更高效的写法(例如BitmapData.draw等)

相应,尝试了一下导出为位图,按官方资料介绍,这里只是运行时和编译时转为位图的区别,但是实际效果来看,导出为位图跟原来矢量效果没有差别。
这里百思不得其解。
trace可以发现,导出为位图,实际运行过程中,Ball和Ball的子元件都是原来的类型(MovieClip和Shape),而且Ball的cacheAsBitmap是false,没有看到任何位图的影子。
也许这又回到了第一个问题上,虽然导出了位图,但这个位图还是被分离到Shape里边了。

简单结论:导出为位图无效。。。 

 
如果大家有更好的见解,请不妨留言

Flash 矢量图和位图性能对比 导出为位图/缓存为位图 export as bitmap / cache as bitmap的更多相关文章

  1. Flash矢量图与位图性能对比

    Flash中使用位图的性能要高于矢量图,究竟有多大区别呢?数据有最好的说服力,开始测试: 一.机器配置 二.测试过程 测试程序控制红色小球在舞台中不停匀速移动,通过改变小球数量控制实际帧率在24帧/秒 ...

  2. SLAM+语音机器人DIY系列:(三)感知与大脑——5.机器人大脑嵌入式主板性能对比

    摘要 在我的想象中机器人首先应该能自由的走来走去,然后应该能流利的与主人对话.朝着这个理想,我准备设计一个能自由行走,并且可以与人语音对话的机器人.实现的关键是让机器人能通过传感器感知周围环境,并通过 ...

  3. WPF学习笔记-用Expression Design制作矢量图然后导出为XAML

    WPF学习笔记-用Expression Design制作矢量图然后导出为XAML 第一次用Windows live writer写东西,感觉不错,哈哈~~ 1.在白纸上完全凭感觉,想象来画图难度很大, ...

  4. 说明位图,矢量图,像素,分辨率,PPI,DPI?

    说明位图,矢量图,像素,分辨率,PPI,DPI? 显示全部 关注者 28 被浏览 7,031 关注问题写回答 ​邀请回答 ​添加评论 ​分享 ​     2 个回答 默认排序 刘凯   21 人赞同了 ...

  5. ps中的位图,矢量图,颜色模式

    什么是位图?什么是矢量图? 位图是由像素组成的图像,在缩放和旋转的时候容易失真,同时文件容量较大 矢量图是根据几何特性来绘制的图形,通过数学公式计算获得的,不易制作色彩变化太多的图象 颜色模式 RGB ...

  6. C# 导出一个控件的矢量图

    调用Control.DrawToBitmap(Bitmap) 方法是很容易得到控件的图形的. 但是bitmap是栅格化图形.栅格化图形有很多缺点,比如文件体积比较大. 放大后失真. 不易编辑等等. 这 ...

  7. 颜色模式、DPI和PPI、位图和矢量图

    颜色模式:用于显示和打印图像的颜色模型 RGB:电子设备的颜色 CMYF:印刷的颜色 印刷的图像分辨率大于等于120像素/厘米,300像素每英寸 图像分辨率单位为PPI(每英寸像素Pixel per ...

  8. Photoshop 基础七 位图 矢量图 栅格化

    矢量图(CorelDraw)不是像素组成的,放大不会失真,体积小,颜色比较单一.由直线.曲线构成,画一些直线.曲线.多边形.图标. 位图(Photoshop画的就是位图),又像素组成,放大失真,放的越 ...

  9. oracle数据迁移之Exp和Expdp导出数据的性能对比与优化

    https://wangbinbin0326.github.io/2017/03/31/oracle%E6%95%B0%E6%8D%AE%E8%BF%81%E7%A7%BB%E4%B9%8BExp%E ...

随机推荐

  1. 一步一步做出属于自己的Eclipse

    本文将教大家一步一步打造属于自己的eclipse,涉及到地方,不完全之处请谅解. 一.下载 进入eclipse网站:http://www.eclipse.org/downloads/ 下载:Eclip ...

  2. ViewFlipper的简单用法

    ViewFlipper和ViewPager挺像的,都是一个view容器.内部可以添加多个view,只是viewpager可以通过左右滑动来切换view,而viewFlipper则没有这个功能,所以需要 ...

  3. 5句mysql语句

    显示表的结构: mysql> DESCRIBE MYTABLE; 往表中加入记录 mysql> insert into MYTABLE values ("hyq",&q ...

  4. APPLE框架之高效便捷的Repository解决方案

    原文地址:http://perfy315.iteye.com/blog/1460226 Spring Data JPA 转至:http://note.sdo.com/u/855924134/n/P15 ...

  5. org.codehaus.jackson.map.JsonMappingException: Can not construct instance of java.util.Date from String value '2012-12-12 12:01:01': not a valid representation (error: Can not parse date "2012-12-

    Jackson对于date的反序列化只支持几种,如果不符合默认格式则会报一下错误 org.codehaus.jackson.map.JsonMappingException: Can not cons ...

  6. Asp.net web Control Enable 属性设置

    最近手上有一个很简单的一个小项目,需要查看编辑的历史记录,先前设计的时候把数据都save 到DB了,现在时间紧迫 就不在画新的UI,而是采用以前的edit页面 来显示数据,这里就需要把页面上所有的co ...

  7. Lync 2013安装中遇到的关于SQL Mirroring的一次报错的解决

    Problem Description ================= Following the Lync Deployment Wizard to setup Database Mirrori ...

  8. 如何得知当前机器上安装的PowerShell是什么版本的?

    $PSVersionTable.PSVersion   参考资料 ================ http://stackoverflow.com/questions/1825585/determi ...

  9. CSS- 横向和纵向时间轴

    时间轴在展示公司发展信息,服务流程中用的比较多,常见的注册登录有的是通过引导,一步一步的来完成,上面会通过时间轴告诉用户当前在哪一步,公司在关于我们或者发展流程的时候也特别喜欢用时间轴来展示,简单的实 ...

  10. iOS开发-UIScreenEdgePanGestureRecognizer实战

    UIScreenEdgePanGestureRecognizer名字很长,而且关于其文档也是少的的可怜,苹果官方给的唯一的一个属性是edges,文档中的解释是这样的: A UIScreenEdgePa ...