bykeer在2014-11-24 23:39:12写道:
今天试用了一下你提供的软件,感觉主要速度差异可能是图像解码机制的区别。acd应该使用的是自己的解码器,比如jpg图片支持逐行解析显示出来,并且解码过程中如果翻页,可以立即终止解码切换到后面的图片。bkviewer使用的是windows自带的GDI+解码(Win7下使用Direct2D),只能一次性显示出来。这种方式对比acd有两个问题,一是解码和显示过程中不能中途取消,只能全部加载完成后再显示下一幅,对外感受上响应没那么快。另外一点是,为了支持快速连翻图片(此时为了快速响应只显示缩略图),bkv在每次停下来后有一小段等待时间后才开始加载显示完整图像(因为此时不知道用户是要继续翻图,还是停下来显示大图,而一旦开始显示大图后就不能取消,见第一点)。这样给人感觉会慢一些吧。在我机器上,连续快翻大图的速度也不比acd慢(此时下面的EXIF信息条显示为异步加载状态,界面上只显示缩略图)