WP7上的Image使用技巧 .
2011-12-22 11:16
176 查看
如果经常开发App,WP7上的Image显示造成的内存增大问题一定会遇到,以下是一些使用技巧帮助减少这类情况的发生:
JPG vs. PNG
如果不是必须要使用透明图片,JPG是最好的选择,WP7的JPG编码速度要大大快于PNG
Resource vs. Content
将图片(或其它种类资源)用何种类型进行XAP编译绑定的时候。Resource和Content有很大的不同,Resource会绑定到Dll之中,在显示图像时很快,但加载整个XAP包时很慢。而Content会使得加载XAP应用时很快,但加载图像时稍慢一些。根据情况选用,使用方法:
Content: <Image Source=”/ImagesAsContent/smiley1.png”/>
Resource: <Image Source=”..\ImagesAsResource\smiley3.png”/>
Async vs. Sync 异步或同步加载图片
BitmapImage.UriSource = uriSource; // 从URI中读取,异步加载
BitmapImage.SetSource(stream); // 从流中读取,同步加载
图片缓存
如果内存没有被回收,可以考虑主动释放:
BitmapImage bitmapImage = image.Source as BitmapImage;
bitmapImage.UriSource = null;
image.Source = null;
自定义编码
如果所需图片尺寸不需要很大,可以将来源进行重编码,使用PictureDecoder API可完成这个操作如下:
image.Source = PictureDecoder.DecodeJpeg(jpgStream, 192, 256);
JPG vs. PNG
如果不是必须要使用透明图片,JPG是最好的选择,WP7的JPG编码速度要大大快于PNG
Resource vs. Content
将图片(或其它种类资源)用何种类型进行XAP编译绑定的时候。Resource和Content有很大的不同,Resource会绑定到Dll之中,在显示图像时很快,但加载整个XAP包时很慢。而Content会使得加载XAP应用时很快,但加载图像时稍慢一些。根据情况选用,使用方法:
Content: <Image Source=”/ImagesAsContent/smiley1.png”/>
Resource: <Image Source=”..\ImagesAsResource\smiley3.png”/>
Async vs. Sync 异步或同步加载图片
BitmapImage.UriSource = uriSource; // 从URI中读取,异步加载
BitmapImage.SetSource(stream); // 从流中读取,同步加载
图片缓存
如果内存没有被回收,可以考虑主动释放:
BitmapImage bitmapImage = image.Source as BitmapImage;
bitmapImage.UriSource = null;
image.Source = null;
自定义编码
如果所需图片尺寸不需要很大,可以将来源进行重编码,使用PictureDecoder API可完成这个操作如下:
image.Source = PictureDecoder.DecodeJpeg(jpgStream, 192, 256);
相关文章推荐
- WP7上的Image使用技巧
- ImageView的src和background的区别、padding的使用技巧、ImageView根据屏幕对缩放
- iOS 关于egoImageView类库的使用方法 和小技巧
- ScrollView使用技巧之实现滑动遮盖ImageView(View)
- 通过电脑键盘控制WP7模拟器使用技巧
- iOS开发之滤镜的使用技巧(CoreImage)
- WP7模拟器使用技巧
- WP开发笔记——WP7 SDK使用技巧
- python使用Image处理图片常用技巧分析
- WP7应用开发笔记-技巧 使用VisualState布置屏幕方向处理
- 关于egoImageView类库的使用方法 和小技巧
- 关于egoImageView类库的使用方法 和小技巧
- DSkinLite 使用技巧(六) – 绘制元素( image,text,rect,line)(上)
- flex4 image 使用技巧
- (一〇九)UIButton的使用技巧 -imageView、titleLabel、圆角等
- (一〇九)UIButton的使用技巧 -imageView、titleLabel、圆角等
- [html5入门-8]浅析img与background-image使用技巧
- wp7 webbrowser 终于支持canvas.drawImage 及网上坑爹的使用教程
- 【React Native开发】 - Image的加载技巧与使用
- ImageView的高级使用技巧