我遇到了一件有趣的事情,因为……如果我使用此代码将图像下载为Base64编码字节数组的字符串,则可以正常工作
data:image/png;base64,<String>但我尝试将相同的图像编码为Base32,并将其命名为
data:image/png;base32,<String>但这种方式行不通。也许我使用了一些错误的协议或者别的什么.:(
所以我的问题是。如何调用img标签的Base32镜像?
谢谢
发布于 2011-07-02 11:30:35
如果你的意思是浏览器没有显示图片,那就意味着浏览器不支持base32。我在Iceweasel4、Firefox3和Chrome12上也遇到了同样的问题。IE7既不能显示base64编码的内联图像,也不能显示base32编码的内联图像。
以下是我在测试中使用的文件,它们是从http://www.sweeting.org/mark/blog/2005/07/12/base64-encoded-images-embedded-in-html窃取的
test1.html在Firefox,Iceweasel,Chrome中显示良好:
<img src="data:image/gif;base64,R0lGODlhUAAPAKIAAAsLav///88PD9WqsYmApmZmZtZf
YmdakyH5BAQUAP8ALAAAAABQAA8AAAPbWLrc/jDKSVe4OOvNu/9gqARDSRBHegyGMahqO4R0bQcj
IQ8E4BMCQc930JluyGRmdAAcdiigMLVrApTYWy5FKM1IQe+Mp+L4rphz+qIOBAUYeCY4p2tGrJZe
H9y79mZsawFoaIRxF3JyiYxuHiMGb5KTkpFvZj4ZbYeCiXaOiKBwnxh4fnt9e3ktgZyHhrChinON
s3cFAShFF2JhvCZlG5uchYNun5eedRxMAF15XEFRXgZWWdciuM8GCmdSQ84lLQfY5R14wDB5Lyon
4ubwS7jx9NcV9/j5+g4JADs=">在我使用的任何浏览器中,test2.html都不显示。
<img src="data:image/gif;base32,I5EUMOBZMFIAADYAUIAAACYLNL77776PB4H5LKVRRGAK
MZTGM3LF6YTHLKJSD6IEAQKAB7YAFQAAAAAAKAAA6AAAAPNVROW47YYMUSKXXA4OXTN375QKQBCD
JEIEO6QMQYY2Q2R3QR2G2BZDEEHQJYATAJA4656QTFXMQZDGOQABY5RIUAYLK2YCSTMFWLSFFDGU
QQPPRST6F6FOTBZ7VIQOAQCRQ6BGHCTWWRVMSZPB7XF36ZTGY2YBNBUII4IXOJZITDDODYRQM34S
SOJJC33GHYMW3B4CRF3I5CFAOCPRQ6D6PN6XW6JNQGOIPBVQUGFHHDNTO4CQCKCFC5RGDPBGMUNZ
XHEFQNXJ7F46OUOEYAC5PFOECUK6AZLFTVZCXDHQMCTHKJB44JJNA7MOKHLYYAYHSLZKE7RON4CL
XDY7JVYV674PT6QOBEADW===">我使用Python的base64模块中的b64decode和b32encode从base64编码的图像创建base32编码的图像。
根据https://www.rfc-editor.org/rfc/rfc2397的说法,支持的格式是base64和普通ASCII码(对于那些超出可打印的7位字符范围的字符,使用标准的%XX十六进制编码。)
在IE8之前,IE显然不支持任何内联图像。
https://stackoverflow.com/questions/6554843
复制相似问题