热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Flash占cpu优化

有的网页看起来并不大但打开会很卡,有的网页虽然很长但使用流畅,占用用户电脑的内存与CPU就影响这些。浏览器问题,有各自的浏览器处理内存问题

有的网页看起来并不大但打开会很卡,有的网页虽然很长但使用流畅,占用用户电脑的内存与CPU就影响这些。浏览器问题,有各自的浏览器处理内存问题会影响到,但几乎没办法控制得了,Windows上的:

  IE系列,刷新回收的量不大,但最小化会释放内存,。
  Firefox2据说也会在最小化回收,可我从没见过最垃圾,用多少是多少,基本不回收。据说prototype的ajax还会引起内存一直增加。
  Opera最好。一直控制得很好。不存在什么问题。
  Linux的内存分配机制与Win的不一样,有多少用多少,如果浏览器占光时说不定会干掉系统。








页面问题,浏览器渲染页面会消耗内存和CPU,能减少一点就减少点。







  结构上
  使用DocType,告诉浏览器你在用什么,html4也有DTD。也许Transitional更适合你。
  如果使用的是XHTML并能保持良好结构的话,记得输出相应的MIME跟XML头1,可以减少浏览器的代码检查,保持结构的完整,不要让浏览器帮你补全代码。
  控制页面的文件大小,可以通过程序把为了看代码比较舒服的缩进去掉。2~3K也是大小。
  iframe会产生新的页面,其实有很多方式可以代替iframe引入的JS与CSS可以适当合并,同样背景图片也可以合并,甚至有人连Flash都合并给已知宽高的内容图片/Object加上宽度的属性可以减少页面的局部重渲染。




  表现上
  质量99跟70的jpg在大多数情况下只有文件有大小不一样。gif的也一样,特别是小图标,256色跟128色的差别是文件大小。
   flash动得太快吃CPU很大,控制每秒的帧数及动画的效果可以减少一些,如果把品质用中低显示会省很多资源,但这样却牺牲了效果。。quality 属性有时选择Autolow2 或者Autohigh会更适合,没必要一直low 或者best,flash使用矢量图会节省文件大小,但计算复杂的图形跟动画时花的是CPU。复杂的太多滤镜,则会占用大量内存,模糊滤镜有减少些3。
  IE的滤镜也是比较占用内存,同时也有兼容性问题。全屏的半透明很吃资源的。
  2*2的图片跟8*8的图片大小差不多,但是平铺背景2*2却占用大很多。
  gif动画同样有帧的概念,别把gif当成flash来玩就行。

  行为上
  别为了使用一个 $()引入整个pretotype或jQuery,它们有更多的作用。
   AJAX很帅。但是用xml会用上XML解析器,有人推荐用JSON,可是这样要eval数据,其实可以直接import已经是对象的script来 用。只是要多传个对象名,或者把对象名写死,或者像flickr那样jsonFlickrApi({"xxx":"xxx"}),直接当函数用。
  实现某些效果时能用visibility:hidden解决时就别用display:none。在这里强调js变量要注全局跟局部等等的意义并不大,JS复杂的地方也不是一两句能说得清的。



 产生问题:虽然会引起浏览器的模式问题 ,但问题是可以解决滴。参考Serving up XHTML with the correct MIME type ,派送XML头浏览器不会容错显示,出现错误结构会导致整个页面无法显法。
  Autolow: 优先考虑速度,但是也会尽可能改善外观。 回放开始时,消除锯齿功能处于关闭状态。 如果 Flash Player 检测到处理器可以处理消除锯齿功能,就会打开该功能。
   Autohigh:开始时回放速度和外观两者并重,必要时会牺牲外观来保证回放速度。回放开始时,消除锯齿功能处于打开状态。如果实际帧频降到指定帧频 之下,就会关闭消除锯齿功能以提高回放速度。使用此设置可模拟“消除锯齿”命令(“视图”>“预览模式”>“消除锯齿”)。
  模糊滤镜:使用模糊滤镜时,如果用于 blurX 和 blurY 的值是 2 的整数次幂(例如 2、4、8、16 和 32),则可以加快计算速度,并且可以使性能提高 20% 到 30%。

=========================================

Flash 作为Macmmedia公司出品的网页制作与动画创作的专业软件,操作简便,功能强大,现已成为交互式矢量图形和Web动画方面的标准。但是,如果制作的 Flash文件较大,动辄几百K的话,常常会让网上浏览者在不断等待中失去耐心。因此对Flash进行优化显得很有必要,但前提是我们不能有损其播放质 量。
1.多使用符号(Symb01)。如果Flash中的元素有使用一次以上者,则应考虑将其转换为符号。重复使用符号并不会使文件明显增大,因为只需储存一次符号的图形数据。
2.尽量使用渐变动画。只要有可能,应尽量以“移动渐变”(CreateMo tionTween)的方式产生动画效果,而少使用“逐帧渐变”(Frame-By-Frame)的方式产生动画。关键帧使用得越多,Flash文件就会越大。
3.多采用实线,少用虚线。限制特殊线条类型(如短划线、虚线、波浪线等)的数量。由于实线的线条构图最简单,因此使用实线将使文件更小。
4.多用矢量图形,少用位图图像。矢量图可以任意缩放而不影响画质,位图图像一般只作为静态元素或背景图,Flash并不擅长处理位图图像的动作,应避免位图图像元素的动画。
5.多用构图简单的矢量图形。矢量图形越复杂,CPU运算起来就越费力,可使用菜单命令Modfy(修改)/Curves(曲线)/Optimize(优化),将矢量图形中不必要的线条删除,从而减小文件。
6.导入的位图图像文件尽可能小一点,并以JPEC方式压缩。
7.音效文件最好以MP3方式压缩。MP3是使声音最小化的格式,应尽量使用。
8.限制字体和字体样式的数量。尽量不要使用太多不同的字体,使用的字体越多,Flash文件就越大,尽可能使用Flash内定的字体。
9.不要包含所有字体外形。如果包含文本域,则应考虑在TextFieldProperties(文本域属性)对话框中选中Include05SpecifiedFomOut

lines(只包括指定字体外形),而不要选择In cludeAllFontOutlines(包括所有字体外形)。
10.尽量不要将字体打散(菜单命令为Modify/BreakApart)。字体打散后就变成图形了,这样会使文件增大。
11.尽量少使用过渡填充颜色。使用过渡填充颜色填充一个区域比使用纯色填充区域要多占50字节左右。
12.尽量缩小动作区域。限制每个关键帧中发生变化的区域,一般应使动作发生在尽可能小的区域内。
13.尽量避免在同一时间内安排多个对象同时产生动作。有动作的对象也不要与其他静态对象安排在同一图层里。应该将有动作的对象安排在各自专属的图层内,以便加速Flash动画的处理过程。
14.用LoadMovie命令减轻Flash一开始下载时的负担。若有必要,可以考虑将Flash划分成多个子文件,然后再通过主Flash里的LoadMovie。UnloadMovie命令随时调用、卸载子文件。
15.使用预先下载画面。如果有必要,可在Flash一开始时加入预先下载画面(Preloader),以便后续Flash画面能够平滑播放,较大的音效文件尤其需要预先下载。
16.Flash的长宽尺寸越小越好。尺寸越小,Flash文件就越小,可通过菜单命令Modify(修改)/Movie(电影),调节Flash的长宽尺寸。
17. 先制作小尺寸Flash文件,然后再进行放大。为减小文件,可以考虑在Flash里将尺寸设置小一些,然后导出迷你SWF文件,接着将菜单File(文 件)/PublishSettings……(发布设置……)中HTML选项卡里的文件尺寸设置大一些,这样,在网页里就会呈现出尺寸较大的文件,而画质丝 毫无损、依然优美。



推荐阅读
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • 本文介绍了前端人员必须知道的三个问题,即前端都做哪些事、前端都需要哪些技术,以及前端的发展阶段。初级阶段包括HTML、CSS、JavaScript和jQuery的基础知识。进阶阶段涵盖了面向对象编程、响应式设计、Ajax、HTML5等新兴技术。高级阶段包括架构基础、模块化开发、预编译和前沿规范等内容。此外,还介绍了一些后端服务,如Node.js。 ... [详细]
  • 从零基础到精通的前台学习路线
    随着互联网的发展,前台开发工程师成为市场上非常抢手的人才。本文介绍了从零基础到精通前台开发的学习路线,包括学习HTML、CSS、JavaScript等基础知识和常用工具的使用。通过循序渐进的学习,可以掌握前台开发的基本技能,并有能力找到一份月薪8000以上的工作。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • 本文介绍了使用AJAX的POST请求实现数据修改功能的方法。通过ajax-post技术,可以实现在输入某个id后,通过ajax技术调用post.jsp修改具有该id记录的姓名的值。文章还提到了AJAX的概念和作用,以及使用async参数和open()方法的注意事项。同时强调了不推荐使用async=false的情况,并解释了JavaScript等待服务器响应的机制。 ... [详细]
  • Java实战之电影在线观看系统的实现
    本文介绍了Java实战之电影在线观看系统的实现过程。首先对项目进行了简述,然后展示了系统的效果图。接着介绍了系统的核心代码,包括后台用户管理控制器、电影管理控制器和前台电影控制器。最后对项目的环境配置和使用的技术进行了说明,包括JSP、Spring、SpringMVC、MyBatis、html、css、JavaScript、JQuery、Ajax、layui和maven等。 ... [详细]
  • Webpack5内置处理图片资源的配置方法
    本文介绍了在Webpack5中处理图片资源的配置方法。在Webpack4中,我们需要使用file-loader和url-loader来处理图片资源,但是在Webpack5中,这两个Loader的功能已经被内置到Webpack中,我们只需要简单配置即可实现图片资源的处理。本文还介绍了一些常用的配置方法,如匹配不同类型的图片文件、设置输出路径等。通过本文的学习,读者可以快速掌握Webpack5处理图片资源的方法。 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • 后台获取视图对应的字符串
    1.帮助类后台获取视图对应的字符串publicclassViewHelper{将View输出为字符串(注:不会执行对应的ac ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
  • 本文介绍了Java后台Jsonp处理方法及其应用场景。首先解释了Jsonp是一个非官方的协议,它允许在服务器端通过Script tags返回至客户端,并通过javascript callback的形式实现跨域访问。然后介绍了JSON系统开发方法,它是一种面向数据结构的分析和设计方法,以活动为中心,将一连串的活动顺序组合成一个完整的工作进程。接着给出了一个客户端示例代码,使用了jQuery的ajax方法请求一个Jsonp数据。 ... [详细]
  • Vue基础一、什么是Vue1.1概念Vue(读音vjuː,类似于view)是一套用于构建用户界面的渐进式JavaScript框架,与其它大型框架不 ... [详细]
author-avatar
用户0h2eqqbg44
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有