使用base64编码传输图形文本

如果想通过文本方式传递图形内容, 在一些情况下是可能的.

这里提到的文本方式, 比如通过服务器端传递XML或者JSON格式数据.

一般浏览器端会有脚本通过AJAX获取到XML或者JSON数据, 然后修改 (新增) DOM中显示元素的值.

图形文件可以进行base64编码, 通过XML或者JSON传输到浏览器端.

这里对浏览器有一定的要求, IE7及以上版本, 或者其他主流浏览器, 都可以, 这里唯一限制的是必须IE版本7以上. 其他的比如webkit内核的浏览器(safari和chrome), firefox等都没有问题.

这是因为这些浏览器支持一个新的特性, 见下面示例:

<html>

<body>

<img src=“data:image/gif;base64,R0lGODlhDwAPAKECAAAAzMzM/////

wAAACwAAAAADwAPAAACIISPeQHsrZ5ModrLlN48CXF8m2iQ3YmmKqVlRtW4ML

wWACH+H09wdGltaXplZCBieSBVbGVhZCBTbWFydFNhdmVyIQAAOw==”

alt=“Base64 encoded image” width=“150″ height=“150″/>

</body>

</html>

在img标签的src属性中按照这样格式的写法, 可以将base64编码的文本作为图片显示.

201006211151.jpg

显示效果类似这样. 在IE8上测试也是可以的, 应该在IE7下也可以显示. 在IE6下将显示一个小叉子.

这个特性无法在互联网应用中使用, 至少目前还不行, 因为还有大量用户在使用老旧的IE6. 但是, 已经可以在比如移动应用中很好的使用了:

  • android下面可以使用, 因为android使用chrome浏览器webkit内核, 支持这个特性;
  • webkit已经是事实上的移动浏览器标准: iphone, symbian, android, blackberry, webos, 都是使用webkit内核的浏览器, 即使是年底推出的windows phone7也不会使用ie6内核, 至少是IE7, 那么也支持该特性.
創建PDF格式    发送文章为PDF   

这篇文章上的评论的 RSS feed

Leave a Reply