首页 新闻 会员 周边

详细解说关于线程的问题,如微软SkyDrive Google对上传的照片加载方式,从模糊到清晰,求高手详细解答。

0
悬赏园豆:100 [已解决问题] 解决于 2012-03-30 14:43

详细解说关于线程的问题,如微软SkyDrive Google对上传的照片加载方式,从模糊到清晰,求高手详细解答。

icepy的主页 icepy | 小虾三级 | 园豆:587
提问于:2012-02-22 11:37
< >
分享
最佳答案
0

你应该是说的B/S的,我详细说一下吧

方法1:最原始的方法是在html页面直接用img标签加载显示照片。这样肯定不好。所以就有了方法2

方法2:用img标签加载显示照片的缩略图,同时用javascript加载照片的原图(可能就是你所说的线程),等照片大图加载完成后再将原图显示到页面中。这样用户可以先看到的是模糊的小图,等照片的原图加载完后才能看到真实的照片,如果网络慢的话中间等待的时间也是比较长的,用户就一直看到模糊的小图,用户体验也不好。

<img src="缩略图地址" name="myImage" width="960" height="1285" id="myImage" alt="" />

<script language="JavaScript" type="text/javascript">
var img = new Image();
img.src = "原图地址";
img.onload = function() {
document.getElementById('myImage').src = this.src;
}
</script>



方法3:获取照片缩略图和原图的URL,获取照片的长和宽;加载并显示照片缩略图,将缩略图按照片的长和宽拉伸显示,这时用户看到的是模糊的效果;加载并显示照片原图,将原图叠加在缩略图上面显示,原图加载多少就显示多少,没有加载的还是显示缩略图,逐步将缩略图覆盖掉,原图在加载的过程中用户看到的是照片从模糊到清晰的渐变效果。原图加载完后,原图已经全部将缩略图覆盖,这时用户看到的是真实的原图。此时可以隐藏缩略图防止缩略图干扰PNG或GIF等有透明效果的图片显示。

<!--设置照片的大小-->
<div style="width:400px;height:300px;">
<!--小图拉大显示-->
<img src="缩略图地址" style="width:100%;height:100%;"/>
<!--原图叠加在小图上面-->
<img src="原图地址" style="width:100%;height:100%;position:absolute;top:0px;left:0px;"/>
</div>
收获园豆:100
LCM | 大侠五级 |园豆:6876 | 2012-02-22 13:33

你好,你说的方式,我都知晓的。可能是我的提问,不怎么清晰,没达到和你们有良好沟通的地方。我的意思是这样的,用户上传了照片之后,有没有可以从线程方面来解决图片像素的问题,这样才能有缩略图,不然这缩略图,该怎么来呢?

icepy | 园豆:587 (小虾三级) | 2012-02-24 12:51

@xiangwenwen: 生成缩略图,用C#很容易生成的,网上到处是代码,你上传保存原图的时候生成就行了。也可以用jquery在上传到服务器之前显示缩略图,网上也有源码的。

LCM | 园豆:6876 (大侠五级) | 2012-02-24 12:58

@LCM: jquery有能控制图片像素的?听你的解释,意思是,生成缩略图,必须用后台语言才能完成是么?算了,我再把我的问题说清楚一点,你还是没看懂我的意思。

假如我是用户,上传了一张200宽200高的相片。现在我要生存缩略图50宽50高的图片,用前端获取原图的宽高,然后把它拉长。我的问题在缩略图,这一步。即这50宽50高的图片从哪里来。我是做前端的,后台语言只是读了C#高级编程,其实也就是了解了一下。在我读的几乎10本以上,比如权威指南、高级程序设计、高性能javascript、都没有讲解到关于线程的问题。于是我网上查略了资料,说是js可以多线程的方式来处理这样的机制。听了你的讲解,缩略图的来源,只能是后台C# java php这样的语言,前端js能否有这样的内置函数来处理?或者说从通信机制上来处理。

望解答,这几天一直在图书馆,网上查这方面的资料,仍然一头雾水。

icepy | 园豆:587 (小虾三级) | 2012-02-25 16:36
其他回答(2)
0

跟线程有关系吗?

一般就是先加载缩略图,把缩略图拉大就是模糊图。然后异步加载原图,等原图加载完毕覆盖缩略图不就好了。

寒风吹过 | 园豆:149 (初学一级) | 2012-02-22 11:44

你觉得SkyDrive上,用户上传的照片,你怎么缩略?

支持(0) 反对(0) icepy | 园豆:587 (小虾三级) | 2012-02-24 11:46
0

C/S结构的是先读取图片框架,先加载图像内容,一个逐步绘制的过程,所以能看到那个效果。

B/S的楼上正解。

az235 | 园豆:8483 (大侠五级) | 2012-02-22 12:55

还是没处到我的想法。

支持(0) 反对(0) icepy | 园豆:587 (小虾三级) | 2012-02-24 12:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册