现在一个壁纸下载站,要生成不同尺寸的壁纸,很想在服务器端用php处理,但是感觉非常费时并且消耗大量资源,我在想能不能再客户端浏览器直接resize到各种尺寸,HTML5浏览器倒是很好处理,js用file API就可以了,但是万恶的IE怎么处理?用flash?Google了好久都没这方面的资源,自己又不会flash,该如何解决这个问题
- 注册一个七牛(http://www.qiniu.com)帐户
- 新建一个 bucket
- 使用这个 bucket 对你的网站做CDN镜像
- 然后使用七牛的多媒体处理接口,只需要把图片的下载地址改成带参数的即可
如下面这张图:
原始的下载地址为:
http://7xi9av.com1.z0.glb.clouddn.com/demo.jpg
我现在想下载 640px宽,质量为 85% 的照片,那么只需要使用下面这个地址即可:
http://7xi9av.com1.z0.glb.clouddn.com/demo.jpg?imageView2/1/w/640/q/85
那么我们可以这样:
- 手机分辨率:640x960
- PC屏幕:1280x1024
这种方法,直接可以让你连 HTML5 的 api 都不需要,兼容所有终端,而且,七牛还每个月提供足够的免费流量给你使用,一般的网站足够了。同时,这种方式可以让你直接使用JS获取当前的屏幕分辨率,然后直接根据当前的屏幕来生成最合适的下载地址。
除了七牛,又拍应该也是有类似的功能的,只是我只用过七牛的。
希望能帮到你。
更新一下,还可以看看下面这个链接:
http://embed.ly/docs/api/display/endpoints/1/display/crop