新的浏览器(ff3、ie8、chrome)img标签支持,如: <img src="data:image/png;base64,
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEUAAAD/
//+l2Z/dAAAAM0lEQVR4nGP4/5/h/1+G/58ZDrAz3D/McH8yw83NDDeNGe4U
g9C9zwz3gVLMDA/A6P9/AFGGFyjOXZtQAAAAAElFTkSuQmCC"/>的格式,可以指定编码
这个帖子楼主已经结了,但解决方案并不理想,不支持ie6、ie7而使用这个两个版本的浏览器用户量不小。
我们知道ie可以将html打包保存为一个mht文件,这个文件包括了脚本和图片,用记事本打开,里面就是采用base64编码的文本
如:
Assembly code
------=_NextPart_000_0000_01CA69C7.3AF566D0
Content-
Type:
image/gif
Content-Transfer-
Encoding:
base64
Content-
Location:
http:
//xxx.com/blank.gif
R0lGODlhAQABAIAAAAAAAAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==
用ie打开该页面,查看 <img> src为“mhtml:file://x:/xxx/xxx.mht!http://xxx.com/blank.gif”
ie采用了mhtml协议,访问该资源
那另一条路就这样被发现了!
测试的步骤
1、将file改成http是否成功?
2、将mht扩展名改名为html是否成功?
3、将base64字符放在 <!---->注释区是否成功?
4、合并,多个浏览器测试是否成功?
感谢ccav,一切顺利
最终源代码(logo太大,换成小图):
<!--
------=_NextPart_000_0000_01CA9F59.AFB45FE0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.my400800.cn
/logo.gif
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEUAAAD/
//+l2Z/dAAAAM0lEQVR4nGP4/5/h/1+G/58ZDrAz3D/McH8yw83NDDeNGe4U
g9C9zwz3gVLMDA/A6P9/AFGGFyjOXZtQAAAAAElFTkSuQmCC!
-->
<img src="data:image/gif;base64,
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEUAAAD/
//+l2Z/dAAAAM0lEQVR4nGP4/5/h/1+G/58ZDrAz3D/McH8yw83NDDeNGe4U
g9C9zwz3gVLMDA/A6P9/AFGGFyjOXZtQAAAAAElFTkSuQmCC
" onerror="src="mhtml:http://www.my400800.cn
!http://www.my400800.cn/logo.gif';"/>
分享到:
相关推荐
在HTML中显示Base64编码的图片通常有两种方式。第一种是通过传统的标签,将图片地址指向服务器上的文件路径,如:***" />。第二种则是使用Data URI scheme直接在标签中嵌入Base64编码后的图片数据,如下所示:;base...
在标题中提到的"base64(包含16进制数值型编码)"是指在Base64编码过程中,可能涉及到对16进制数值的处理。 1. **Base64编码原理** Base64编码基于64个可打印字符,包括大小写字母、数字和两个特殊符号`+`和`/`,...
标题提到的“将图片转换成16进制代码,同时也可将16进制代码转换成jpg图片”是一个涉及到图像处理和二进制数据理解的实用技术。以下是这个过程的详细解释。 1. **图片的二进制表示**: 图片本质上是由像素构成的,...
在标题“16进制字符串显示图片”中,所指的是一种将16进制字符串转换为图像的方法。这种技术通常应用于数据传输、存储或编码图像,尤其是当需要以文本形式表示图像数据时。16进制字符串实际上是图像原始像素数据的二...
Base64编码会将3个字节的二进制数据转化为4个字符的Base64字符串,每个Base64字符代表6位的二进制数,总共能表示2^64 = 64种不同的值。 标题"Base64转二进制文件,Base64 To File"涉及到的核心技术是将Base64编码的...
在图像处理中,图片通常以二进制数据的形式存储,这些二进制数据可以通过16进制字符串来展示和解析。 "16进制字符串显示图片工具" 是一个专门用来将16进制字符串转换为可视图像的应用程序。这个工具基于C#(简称CS...
需要一个二进制与BASE64相互转换的函数,从网上找...示例中提供二进制与16进制字符串转换函数ConvertHexStrToBin与ConvertBinToHexStr,二进制与BASE64编码转换函数Base64Encode与Base64Decode,在VC6下编译通过可用。
16进制转JPG图片工具是专为处理这种特定需求而设计的软件,它允许用户将从单片机或其他数据采集设备获取的16进制代码转换成我们常见的JPEG(JPG)图片格式。这种转换过程涉及到数字图像处理、二进制数据解析以及图像...
总之,"二进制流导出Excel(兼容IE8以上)"是一项涉及前端和后端技术的复杂任务,需要理解二进制数据处理、Excel文件格式、浏览器兼容性和代码可读性等多个方面。通过这种方式,开发者可以为用户提供一个方便的数据...
代码实现将ASCII码数据转换成16进制输出,参考使用方法:char *p=NULL; char tmp[3]={0}; memcpy(tmp,&p[15],2); setTime[3]=atoi16(tmp,16); memcpy是将p[15]和p[16]数据放进tmp里面,然后atoi16将tmp里面的ASCII码...
在计算机科学领域,16进制(Hexadecimal)和ASCII码是两种常见的数据表示方式,它们在编程、数据传输和文本处理中起着至关重要的作用。这个“16进制转ASCII码工具”是为了帮助用户方便地进行这两种编码之间的转换。 ...
描述部分进一步解释了该模块的具体应用:将Verilog中的16进制数通过算法转换成BCD码,以便能够在数码管上进行显示。这里的关键在于如何实现这种转换以及确保输出结果能够正确地被数码管识别并显示出来。 #### 标签...
6. **字符串显示**:除了16进制显示外,描述中还提到支持字符串显示。这可以通过添加额外的控件或在16进制数据显示区域下方添加一行来实现,显示选中数据的ASCII字符串形式。 7. **串口通信**:如果需要从串口读取...
Base64使用64个字符(包括大小写字母、数字以及"+"和"/"),每个字符代表6位二进制数。因此,每3个字节(24位)的二进制数据可以转换为4个Base64字符。为了确保所有数据都是完整的,末尾可能需要添加额外的等于号(...
分析二进制数据 H.264码流数据分析
反过来,从BASE64编码恢复到十六进制,首先需要解码BASE64字符串,得到原始的二进制数据,然后将每个字节转换为其16进制表示。这个过程涉及到对ASCII字符的识别,以及对填充字符"="的处理,它们通常在解码时会被忽略...
在IT行业中,16进制码的处理是常见的任务,特别是在低级编程、网络通信、数据解析等领域。"16进制码拼接工具"是一个专门用于处理这种数据的实用程序,它允许用户将16进制的多字节源码转换为10进制数字。这种工具的...
描述中提到的“MAC 16进制”指的是MAC地址,这是一种物理网络设备地址,由6组两字符的16进制数组成,每组之间用冒号分隔。MAC地址用于标识网络硬件接口,如网卡或无线适配器,是网络通信的基础。生成MAC地址的16进制...
本文详细介绍了如何在Windows系统中使用CMD命令行工具`CertUtil`来进行十六进制和Base64的编码与解码操作。这些操作对于数据的加密、解密以及在网络上传输非常重要。掌握了这些命令,可以帮助我们在日常工作中更加...
在ASCII码和16进制之间进行转换,通常是先将ASCII码转换为二进制,再将二进制转换为16进制。例如,ASCII码65对应的二进制数01000001转换成16进制即为41,反之亦然。 提到"计算16进制的长度",这意味着可能涉及到对...