实际应用中,经常会遇到,需要将一个位图进行缩放显示的情况,在不进行处理的情况下,位图的缩放处理会导致显示出的图片有比较明显的锯齿产生。

不能像矢量图一样运动平滑。而解决这个问题,只要一个小设置就好多了。

总的来说,有两种处理办法:在库中进行设置 和 在程序中进行处理

一. 库内位图反锯齿

位图在flash里的锯齿现象经常困扰我们,这里我做了一个小小的测试,可以让大家对不同设置下的锯齿现象有更清晰的了解。

我们选择位图的属性可以出现以下设置:

允许平滑项在选择后,可以有效的防止位图运动时的抖动现象。

压缩项可以设置位图压缩率,从而控制输出的swf的大小。

------------------------------------------------------------------------------

二. 外部调用位图反锯齿

关于外部调用,则需要代码辅助才能实现,但可能吃掉很多cpu的运算

import flash.display.BitmapData; 
可以用MovieClip.attachBitmap中的一个smooth参数的设置,来进行平滑处理。具体的自己查看帮助 
---------

smooth设置为true

---------------
import flash.display.BitmapData; 
/*************加载******************/ 
var container1:MovieClip = createEmptyMovieClip("container1", getNextHighestDepth()); 
var container2:MovieClip = createEmptyMovieClip("container2", getNextHighestDepth()); 
var loader1:MovieClipLoader = new MovieClipLoader(); 
var loader2:MovieClipLoader = new MovieClipLoader(); 
var obj:Object = new Object(); 
obj.onLoadInit = function(target:MovieClip) { 
trace("onLoadInit"); 
loaderDispose(target); 
}; 
loader1.addListener(obj); 
loader1.loadClip("2.jpg", container1); 
loader2.addListener(obj); 
loader2.loadClip("2.jpg", container2); 
/**********图片处理***************/ 
var bitmapLoader1:MovieClip = createEmptyMovieClip("Bloader1", getNextHighestDepth()); 
var bitmapLoader2:MovieClip = createEmptyMovieClip("Bloader2", getNextHighestDepth()); 
var bitmap1:BitmapData; 
var bitmap2:BitmapData; 
function loaderDispose(mc:MovieClip) { 
mc._visible = false; 
/*******不平滑*******/ 
if (mc._name == "container1") { 
  bitmap1 = new BitmapData(mc._width, mc._height, true, 0x00FFFFFF); 
  bitmap1.draw(mc); 
  bitmapLoader1.attachBitmap(bitmap1, 0); 
  bitmapLoader1._x = -50; 
  bitmapLoader1._xscale = bitmapLoader1._yscale=250; 
} else { 
  /******平滑处理*******/ 
  bitmap2 = new BitmapData(mc._width, mc._height, true, 0x00FFFFFF); 
  bitmap2.draw(mc); 
  bitmapLoader2.attachBitmap(bitmap2, 1, "auto", true); 
  //主要就是这个smooth参数,true表示平滑 
  bitmapLoader1._x = -50; 
  bitmapLoader2._y = 300; 
  bitmapLoader2._xscale = bitmapLoader2._yscale=250; 

}

转载于:https://www.cnblogs.com/hisiqi/archive/2013/01/26/2877763.html

Flash位图锯齿的处理办法相关推荐

  1. Windows 8系统IE10无法安装Flash Player插件的解决办法

    [size=x-large]Windows 8系统IE10无法安装Flash Player插件的解决办法[/size] 本章引用地址:http://www.iefans.net/windows8-ie ...

  2. 打开excel,提示 flash play2 错误,解决办法

    打开excel,提示 flash play2 错误,解决办法,下载附件的东东,然后解压安装即可 ISScript.msi安装补丁.zip (4.8 MB) 下载次数: 0

  3. flash位图技术研究篇(8):扫描像素点

    今晚抽了点时间写个无聊的野,这部分会涉及到位图方面的扫描操作.最近发现了通过扫描位图的像素能够做出很多意想不到效果. 基本原理:通过扫描像素点,并将我们所需要的像素点记录下来,我们可以以粒子的方式看待 ...

  4. (转)flash位图缓存cacheAsBitmap

    矢量图,是靠 cpu运算出来的.而位图记录的颜色信息都保存在了内存中.把矢量图缓存成位图,以减轻cpu的运算压力. cacheAsBitmap 属性 cacheAsBitmap:Boolean  [读 ...

  5. 谷歌浏览器Adobe Flash player 已过期 解决办法

    更新了谷歌浏览器之后无法看视频,会出现如图所示的提示.尝试了网上的多种办法,都未能解决.几番摸索之后总算搞定.接下来为大家带来解决办法. 1 百度搜索 adobe flash player ppapi ...

  6. flash位图技术研究篇 9 2D平面映射球体

    原文:http://www.codeproject.com/KB/graphics/Sphere_mapping.aspx?msg=2178656 昨晚在codeproject 里面无意当中看了一篇关 ...

  7. flash位图技术研究篇(9):2D平面映射球体

    原文:http://www.codeproject.com/KB/graphics/Sphere_mapping.aspx?msg=2178656 昨晚在codeproject 里面无意当中看了一篇关 ...

  8. 火狐浏览器flash插件经常崩溃解决办法

    原谅链接: http://www.cnblogs.com/beyondyourself/p/6097356.html 在使用火狐浏览器时会经常出现下图的提示 在网络上查询了一下问题原因,出现上述情况主 ...

  9. flash 位图缓冲

    位图缓冲(Bitmap Caching) 一个Flash动画是如何播放的?其实播放,就是Flash Player把源文件内能看到的一帧一帧的画面绘制出来,当然绘制前需要处理每一帧内的代码 Flash播 ...

最新文章

  1. 上海网络推广浅析外链对网站优化的影响有多大?需要注意什么?
  2. 福建首个区块链赋能教育信息化项目上线
  3. 怎样获取UIWebView 的文字的高度
  4. linux修改密码的几种方法
  5. 同步代码时忽略maven项目 target目录
  6. 【linux】xrander/cvt自定义分辨率
  7. 分布式 集群 负载均衡含义
  8. python读取大文件太慢_python - 为什么使用Python异步从文件读取和调用API比同步慢? - 堆栈内存溢出...
  9. 简单C语言小程序:求根公式求一元二次方程式的根!
  10. django+layui表格数据管理
  11. 微软服务器系统突然要求密钥,买了Win10新电脑?小心微软偷走你的设备加密密钥...
  12. 【Unity3D】Unity5打不开VS2017,Unity打开VS2017异常,并且有时候最后打开的是Mono的解决方案
  13. 休问情怀谁得似——冰雪小五台苦旅记(十完结篇)
  14. ajax的跨域和请求——详解
  15. c#位数不够0补充完_C# 如何对数字不足位数时前面(左边)补零呢?
  16. Wireshark实践总结
  17. 在大学时的分布式数据库读书笔记 拿出来分享
  18. flickr php,6.4 使用PHP调用基本的Flickr API方法
  19. OpenCV-Python入门实战13例
  20. 极氪要上市,吉利“基因改造”成功

热门文章

  1. Flutter透明度渐变动画FadeTransition实现透明度渐变动画效果
  2. java基础—Calendar类方法演示
  3. Error: if there's nested data, rowKey is required.
  4. 草地排水-网络流dinic
  5. 五角数 Exercise06_01
  6. redhat7.3安装yum源 基于外网的http服务
  7. 网络编程demo之Udp和URL
  8. IIS 之 未能加载文件或程序集“IBM.Data.DB2”或它的某一个依赖项。试图加载格式不正确的程序。...
  9. 4.UiCollection API 详细介绍
  10. 推荐引擎内部的秘密3