图片处理之 Base64

  网页上的图片资源如果采用 http 形式的 url 的话都会额外发送一次请求,网页发送的 http 请求次数越多,会造成页面加载速度越慢。而采用Base64格式的编码,将图片转化为字符串后,图片文件会随着 html 元素一并加载,这样就可以减少 http 请求的次数,对于网页优化是一种比较好的手段。

  当我们将一个只有几KB的图片转化为Base64格式编码,根据 Base64 的编码原理,大小比原文件大小大 1/3。如果将其写在一个 CSS 文件中,这样一个 CSS 文件的大小会剧增,造成代码可读性差不说,还会造成请求传输的数据量递增。Base64 无法缓存,要缓存只能缓存包含 Base64 的文件,比如 HTML 或者 CSS,这相比直接缓存图片要弱很多,一般 HTML 会改动频繁,所以等同于得不到缓存效益。精灵图可能是更好地方案。

  所以我们一般对于极小或者极简单的图片使用 Base64,例如只有几像素的图片不用考虑跨域问题不想页面的图片缓存。

  使用 Base64 图片,记得加上Base64位编码头。

//html中使用<img src="data:image/png;base64,/9j/4AAQSkZJRg...>
//css中使用
.test{background:url(data:image/png;base64,/9j/4AAQSkZJRg...)} 

原文地址:https://www.cnblogs.com/sspeng/p/8570876.html

时间: 2024-08-30 11:54:13

图片处理之 Base64的相关文章

造轮子:C#中将图片转化成base64字符串

厂址:http://www.cnblogs.com/yunfeifei/p/4165351.html 1.在C#中将图片转化成base64字符串: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; namespace ConvertImgToBase64 { class Program { static void Main(string[]

js绝对地址图片转换成base64的方法

//将图片转换成base64 function getBase64Image(url, callback){ var canvas = document.createElement('canvas'), ctx = canvas.getContext('2d'), img = new Image(); //为了解决跨域,可以直接img.crossOrigin=''就能解决图片跨域问题 img.crossOrigin = 'xes'; img.onload = function(){ canvas

Android文字图片写入CSV(Base64)并分享

做的一个分享的功能,将文字图片以CSV的形式分享到邮件之类的应用. 首先,CSV逗号分隔值文件格式(Comma-Separated Values),纯文本形式,逗号分隔,一行数据不跨行. 图片转换成Base64字符串 public String writeBase64(String path) { //path图片路径 byte[] data = null; try { InputStream in = new FileInputStream(path); data = new byte[in.

按比例压缩图片和图片转换成BASE64

通常会需要将突破转换为字符串的操作,贴此详例,仅供参考和积累 #region 按比例压缩图片和图片转换成BASE64 /// <summary> /// 按照比例缩小图片 /// </summary> /// <param name="srcImage">要缩小的图片</param> /// <param name="percent">缩小比例</param> /// <returns&g

html5将图片转换成base64的实例代码

这篇文章给大家介绍了如何利用html5将图片转换成base64,文中通过示例代码介绍的很详细,有需要的朋友们可以参考借鉴. base64编码介绍base64是一种网络上常用的8bit字节代码的编码方式,base64可以用于http环境下传递较长的标识信息,同时可以放在url当中使用,因为base64不惧可读性,所以具有一定的加密功能. 为什么要把图片转换成base64编码?将图片转换成base64代码可以减少http请求,因为图片可以以字符编码的形式直接传递到客户端,而文件形式都需要进行http

.NET 图片解密为BASE64

#region 图片加密 /// <summary> /// 加密本地文件 /// </summary> /// <param name="inputname">读取文件的路径</param> /// <param name="outname">要输出的文件路径</param> /// <param name="key">密钥</param> /// 

怎么才能将文件流或者图片转化为base64,传到前台展示

图片转化为base64,传到前台展示 public String getBase64(){ String imgStr = ""; try { File file = new File("C:\\EThinkTankFile\\20180402160120431.jpg"); FileInputStream fis = new FileInputStream(file); byte[] buffer = new byte[(int) file.length()];

将图片转化为base64编码字符串

pom依赖 <dependency> <groupId>org.ops4j.base</groupId> <artifactId>ops4j-base-net</artifactId> <version>1.5.0</version> </dependency> import org.ops4j.net.Base64Encoder; /** * 根据图片地址转换为base64编码字符串 * @param img

java中图片文件和base64编码的转换

在线图片转base64编码 import javax.imageio.ImageIO; import java.awt.image.BufferedImage; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.net.URL; import com.sun.org.apache.xerces.internal.impl.dv.util.Base64; /** * 下载图片并转换成base6