先来个小演示,将如下代码全部复制,然后粘贴到Chrome或Firefox等浏览器的地址栏内并打开:
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4AQAAAAARHwt/AAAAq0lEQVR42u3VQQrEMAgFUMFrCV5d8FpC55tQaGYx4J9t00L6upCoSSvXOeT1t0NEM7Qnytl3+JooB8KZ98Tb8y9nOW/cJXrkN/GqJ5Zz1HfgNUrP/g4c4h3M73ymvgrPHmKks0xwmZdS7nUEiD3B2ayzEb/7MXSPsG4J525kIZl8nMeJ93kyrMo5oyC1W0p772neCCb9RaDcr0xDH+dr4q4nEHe8qd//yQ9/AIx/XBg3tuj2AAAAAElFTkSuQmCC
可看到一张120X120的PNG格式图片,当然也可将上述代码置于 <img src="" /> 等HTML标签内。
这种规范就是Data URI scheme,见:https://en.wikipedia.org/wiki/Data_URI_scheme 它的格式如下:
data:[<MIME-type>][;charset=<encoding>][;base64],<data>
所以上述代码中,“data:image/png;base64,”之后的文本是对图片字节流进行Base64后的字符串。
当然,根据“MIME-type”还可以展现更多其它格式的内容。
应用场景:
运用Data URI scheme规范展现图片可以减少网络请求,我认为特别适合用于一些体积较小的图片展现,如1X1的图片占位符等修饰性的图片。但也需要关注浏览器的兼容性以及Base64之后的字符串长度等问题。
相关推荐
.net 图片 base64 编码 Data URI scheme
一、 Data URI scheme 简介 Data URI scheme是在RFC2397中定义的,目的是将一些小的数据,直接嵌入到网页中,从而不用再从外部文件载入。比如上面那串字符,其实是一张小图片,将这些字符复制黏贴到火狐的地址栏中并...
主要介绍了Data URI scheme及其在CSS中的相关使用,文中主要针对其在图片显示方面的应用,需要的朋友可以参考下
Data URI scheme。 Data URI scheme是在RFC2397中定义的,目的是将一些小的数据,直接嵌入到网页中,从而不用再从外部文件载入。比如上面那串字符,其实是一张小图片,将这些字符复制黏贴到火狐的地址栏中并转到,...
这是在RFC2397中定义的Data URI scheme,目的是将一些小的数据,直接嵌入到网页中,从而不用再从外部文件载入,比如上面那串字符,其实是一张图片,将这些字符复制黏贴到火狐的地址栏中并转到,就能看到了。...
这是一张图片的Uri,那么我们如何根据这个Uri获得其在文件系统中的路径呢? 其实很简单,直接上代码: public static String getRealFilePath( final Context context, final Uri uri ) { if ( null == uri ) ...
网页中的图片是使用base64编码后的字符串代替了,这个叫做Data URI scheme,下面有个不错的示例,大家可以参考下
//将功能Scheme以URI的方式传入data Uri uri = Uri.parse("androidamap://navi?sourceApplication=appname&poiname=fangheng⪫=" + gd_lat_lon[1] + "&lon;=" + gd_lat_lon[0] + "&dev=0&style=4"); intent....
要想使用隐式 Intent 成功启动 Activity, 必须...IntentFilter 上的 data 节点上可以设置 scheme、host、port、path、mimetype 等等 Intent 上可以使用 Uri 设置 data,使用字符串设置 mimetype Intent 上的 data 和
android.intent.action.SENDTO if the URI in the data is of scheme ftp: The application provides the FTP uri and SendWithFtp immediately triggers the upload SendWithFtp is released
5.4.16 416 Unsupported URI Scheme 117 5.4.17 420 Bad Extension 117 5.4.18 421 Extension Required 117 5.4.19 422 Session Timer Interval Too Small 118 5.4.20 423 Interval Too Brief 118 5.4.21 428 Use ...
如果对Intent不是特别了解,可以参见博文《详解Android中Intent的使用方法》,该文对本文要使用的action、category以及data都进行了详细介绍。如果想了解在开发中常见Intent的使用,可以参见《Android中Intent习惯...
Overview Package Class Tree Deprecated Index Help PREV NEXT FRAMES NO FRAMES A B C D E F G H I J L P R S U V -------------------------------------------------------------------------------- ...