玩过 Flickr,使用过巴巴变,yupoo,也见识了茄子等,不过终于看到 Picasa Web API 出线了
下面是原作者的文章,转了过来!没事的时候可研究一下
在 flickr 时代,为了专门把站内嵌入相册,还专门写了一篇文章把 Flickr 相册搬回家。flickr 被墙之后,我就把个人相册转到了 Web Picasa 上。用 Picasa Web 就简单多了,官方提供了 Slideshow Flash,而且形式也比较漂亮,阅微堂之前也是用这样的方式,不过这种方法麻烦的一点是在 Picasa 上添加相册,就要手动到 blog 这边更新一次。这两天看到了 Web Picasa API,感觉这玩意儿的功能太强了,完全可以做一个 Picasa 的站内镜像版。 最后的效果见阅微堂相册。 更令人惊讶的是,这种效果完全是 javascript(JSON API)实现的(虽然我觉得如果在后台用 php 实现效果会更好)。主要用的是 JavaScript interface to PicasaWeb Albums,一个开源项目,其实就一个单 js 文件。使用也非常简单,就下面几行代码:
>script type='text/javascript'< username = 'your.username'; photosize='800'; >/script< >script type='text/javascript' src='http://yourpath/pwa.js'< >/script<
不过我改了很多地方,除了界面 UI 上的改变外,主要是改进页面加载速度。有兴趣的可以参考一下我的代码。
在修改过程中,仔细学习并应用了 picasaweb 的照片展示方式。Google 的图片预载入做的非常好,浏览图片的时候会自动开始载入下一张图片,而且每张图片有若干种大小,它会从小到大预先载入,以便察看下一张的时候便能使用已经载入的图片,所以经常出现察看下一张图片时刚开始比较模糊,过一会就会变得清晰的情形(其实这种效果用小波编码的图像可以自动实现,但不知为何一直没见到什么应用)。这样做的相册,用户体验非常好,xiaonei 等网站的相册可以学一学。不过这种方法会增加网站的带宽成本,Google 财大气粗... 另外,我终于知道了为何我以前有时候引用 Google 的图片却不成功了。Google 的图片分为好多种大小,通过 imgmax 参数调用,比如右边图片的原始地址是 DSCN6503.JPG,但直接在网页上引用这个地址是不行的,一定要明确指出需要的图片大小,而且还不能太大,太大了只能提供下载(如果直接输入地址,浏览器会提示你保存图片,而不是显示出来)。能在网页上引用的图片最大宽度(高度)为 800px,也即 DSCN6503.JPG?imgmax=800。更详细的资料见下表。
输出大小 | 是否可剪切 | 是否可嵌入 | 输出大小 | 是否可剪切 | 是否可嵌入 |
---|---|---|---|---|---|
32 | Yes | Yes | 576 | No | Yes |
48 | Yes | Yes | 640 | No | Yes |
64 | Yes | Yes | 720 | No | Yes |
72 | No | Yes | 800 | No | Yes |
144 | No | Yes | 912 | No | No |
160 | Yes | Yes | 1024 | No | No |
200 | No | Yes | 1152 | No | No |
288 | No | Yes | 1280 | No | No |
320 | No | Yes | 1440 | No | No |
400 | No | Yes | 1600 | No | No |
512 | No | Yes | d | No | No |
从表中可以看出 Google 输出的图片种类之多,难道 Google 在服务器端保存了这么多副本么?那得耗费多少空间啊?
来自:http://zhiqiang.org/blog/posts/local-mirror-of-picasaweb-using-api.html
不知道你是否正需要这个,我是用不到了,用着不顺手,还是 Flickr 或者巴巴变吧
《用Web Picasa API搭建站内相册》留言数:0