Actionscript 3 闪存加载图像存储器大小
我有这个代码,只需加载一个图像并在flash as3中显示它Actionscript 3 闪存加载图像存储器大小,actionscript-3,loader,Actionscript 3,Loader,我有这个代码,只需加载一个图像并在flash as3中显示它 function mem(evt:*=null){ trace(Number( System.totalMemory / 1024 / 1024 ).toFixed( 3 ) + 'Mb') } mem(); var loader:URLLoader = new URLLoader(); loader.addEventListener(Event.COMPLETE, onloaded) loader.load(new URLR
function mem(evt:*=null){
trace(Number( System.totalMemory / 1024 / 1024 ).toFixed( 3 ) + 'Mb')
}
mem();
var loader:URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE, onloaded)
loader.load(new URLRequest("../capture.jpg"))
addChild(loader);
function onloaded(e:Event):void {
mem();
}
capture.jpg有234KB
问题是加载系统后,totalMmemory将其大小增加到1Mb以上
痕迹:加载前后
17.391Mb
18.746Mb
看起来像是闪存加载、解压缩并将图像存储为原始数据
有没有办法在加载后保持图像的原始大小?
谢谢大家! 关于这一点,我可能是对的,也可能是错的,但以下是我的理解: jpg是一种压缩格式,加载完成后,Flash或任何网页都必须在内存中解压缩jpg。
另一方面,gif没有压缩,因此有时它的初始大小可能更大,但不会进行解压缩。尝试以gif格式加载资源(对于连续色调图像可能不太理想),然后查看跟踪输出是否保持不变。关于这一点,我可能是对的,也可能是错的,但以下是我的理解: jpg是一种压缩格式,加载完成后,Flash或任何网页都必须在内存中解压缩jpg。
另一方面,gif没有压缩,因此有时它的初始大小可能更大,但不会进行解压缩。尝试将资源加载为gif(可能不适合连续色调图像),然后查看跟踪输出是否保持不变。否,无法将图像保持为原始大小。Flash或任何其他图形环境必须将图像解码为原始数据才能显示出来
解决问题的唯一方法是在不再需要图像时释放内存,只加载需要显示的图像。不,无法保持图像的原始大小。Flash或任何其他图形环境必须将图像解码为原始数据才能显示出来 解决问题的唯一方法是在不再需要图像时释放内存,只加载需要显示的图像。GIF也有压缩功能。GIF也有压缩功能。