WPF 异步加载高清大图
2015-11-03 16:27
302 查看
不管什么东西,但凡太大了,总是让人又爱又恨啊!(很有道理的样子,大家鼓掌└( ̄  ̄└)(┘ ̄  ̄)┘)
猿:老板,现在这社会啊,真是浮躁啊,之前还是什么1080P,然后就到了2K,现在又到了4K……他们是想把毛孔都看清楚?
老板:能不能做?
猿:已经做好了啊,但是……反正这次我们能说会道的X经理也没能忽……说服客户。
老板:是什么问题嘛,说出来我帮你想想办法。(老板真是好人啊,语重心长)
猿(ノへ ̄、):客户不是升级了4K摄像机吗,哎哟,那玩意儿,老长了,就跟火箭筒似的,扛起来那感觉(ง •̀_•́)ง,真是拉风……
老板:咳咳……
猿:嗯,4K,拍出来的照片分辨率4096x2160,一张图片就有30多M,然后……我们的程序挂了,内存崩了。╮( ̄▽ ̄")╭
老板:嗯,这个问题嘛……
猿:昨晚我加班到凌晨三点,各种调试,各种查资料,终于搞定了,今天早上让小X过去更换了,然后……
老板:辛苦了,办公室里有吃的,晚上加班尽管吃!
猿:( ̄▽ ̄")……
猿:然后内存是没爆了,但是大图出来的使用有2~3秒的空白……也不能操作……X经理正在给我们争取时间……
老板:这样啊,我给你一个我朋友的电话,他也是搞软件的,很牛X的……
嗯,各位童鞋,看到这里就应该明白,对话已经结束。这就开始我们的代码……
XAML我们就简单点:用ListView做个列表,一个用于显示大图的Image,一个遮罩层Border
View Code
看图:
猿:老板,现在这社会啊,真是浮躁啊,之前还是什么1080P,然后就到了2K,现在又到了4K……他们是想把毛孔都看清楚?
老板:能不能做?
猿:已经做好了啊,但是……反正这次我们能说会道的X经理也没能忽……说服客户。
老板:是什么问题嘛,说出来我帮你想想办法。(老板真是好人啊,语重心长)
猿(ノへ ̄、):客户不是升级了4K摄像机吗,哎哟,那玩意儿,老长了,就跟火箭筒似的,扛起来那感觉(ง •̀_•́)ง,真是拉风……
老板:咳咳……
猿:嗯,4K,拍出来的照片分辨率4096x2160,一张图片就有30多M,然后……我们的程序挂了,内存崩了。╮( ̄▽ ̄")╭
老板:嗯,这个问题嘛……
猿:昨晚我加班到凌晨三点,各种调试,各种查资料,终于搞定了,今天早上让小X过去更换了,然后……
老板:辛苦了,办公室里有吃的,晚上加班尽管吃!
猿:( ̄▽ ̄")……
猿:然后内存是没爆了,但是大图出来的使用有2~3秒的空白……也不能操作……X经理正在给我们争取时间……
老板:这样啊,我给你一个我朋友的电话,他也是搞软件的,很牛X的……
嗯,各位童鞋,看到这里就应该明白,对话已经结束。这就开始我们的代码……
XAML我们就简单点:用ListView做个列表,一个用于显示大图的Image,一个遮罩层Border
public class ImageSourceConverter : IValueConverter { public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { if (value == null) return value; var source = new BitmapImage(); source.BeginInit(); source.UriSource = new Uri(value.ToString(), UriKind.Absolute); //设置解码的分辨率大小,也就是搞个缩略图 source.DecodePixelWidth = parameter != null ? int.Parse(parameter.ToString()) : 100; source.EndInit(); return source; } public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { throw new NotImplementedException(); } }
View Code
看图:
相关文章推荐
- 博科300光纤交换机配置手册/操作方法/密码设置/用户指南大全
- service详解
- Gone with the wind on women's enlightenment
- ESP8266编译环境 对于习惯Ubuntu默认桌面的用户非常好
- CI自定义js,css的url
- 利用percona-xtrabackup快速搭建MySQL数据库主从复制
- 利用percona-xtrabackup快速搭建MySQL数据库主从复制
- java中的匿名内部类总结
- YII2设置路由访问,美化url
- java mail
- Eclipse署动态web项目方法
- oracle 存储过程编辑 卡死
- 安卓学习教程总结:芯灵思开发板安卓底层开发
- request,response,session,cookie,application
- 使用C++复制文件
- App 开发:Hybrid 架构下的 HTML5 应用加速方案
- 迁移OCR、表决磁盘和asm spfile到其他磁盘组中
- matlab练习程序(奇异值分解压缩图像)
- java list 根据对象一个字段去重
- phpexcel 导出数据