关于base64转png的信息

大雄 412 2022-10-24

本文目录一览:

base64字符串转换成图片文件

需要在php端处理base64字符串里的头部信息

贴一段我正在用的

php($stream是你传上来的base64

       //获取扩展名和文件名

        if (preg_match('/(?=\/)[^\/]+(?=\;)/',$stream,$pregR)) $streamFileType ='.' .$pregR[0];  //读取扩展名,如果你的程序仅限于画板上来的,那一定是png,这句可以直接streamFileType 赋值png

        $streamFileRand = date('YmdHis').rand(1000,9999);    //产生一个随机文件名(因为你base64上来肯定没有文件名,这里你可以自己设置一个也行)

        $streamFilename = $upPath."/".$streamFileRand .$streamFileType;

        //处理base64文本,用正则把第一个base64,之前的部分砍掉

        preg_match('/(?=base64,)[\S|\s]+/',$stream,$streamForW);

        if (file_put_contents($streamFilename,base64_decode($streamForW[0]))===false) Common::exitWithError("文件写入失败!","");//这是我自己的一个静态类,输出错误信息的,你可以换成你的程序

字符串,假设随机命名,如果你不要随机命名,可以改streamFileRand 的值,$upPath是你上传路径):

将base64位转换成png图片的java代码

//base64字符串转化成图片

public static boolean GenerateImage(String imgStr)

{   //对字节数组字符串进行Base64解码并生成图片

if (imgStr == null) //图像数据为空

return false;

BASE64Decoder decoder = new BASE64Decoder();

try

{

//Base64解码

byte[] b = decoder.decodeBuffer(imgStr);

for(int i=0;ib.length;++i)

{

if(b[i]0)

{//调整异常数据

b[i]+=256;

}

}

//生成jpeg图片

String imgFilePath = "d://222.jpg";//新生成的图片

OutputStream out = new FileOutputStream(imgFilePath);

out.write(b);

out.flush();

out.close();

return true;

}

catch (Exception e)

{

return false;

}

}

希望可以帮到你。


如何将base64编码转变为图片


如果已经是base64格式的图片,那么可以直接使用使用。

CSS中使用:background-image: url("data:image/png;base64,iVBORw0KGgo=...");

HTML中使用:src="data:image/png;base64,iVBORw0KGgo=..."。

详细的使用和原理可以参考:

js 将base64转回图片格式

直接上代码:

var img = "imgurl";//imgurl 就是你的图片路径

function getBase64Image(img) {

var canvas = document.createElement("canvas");

canvas.width = img.width;

canvas.height = img.height;

var ctx = canvas.getContext("2d");

ctx.drawImage(img, 0, 0, img.width, img.height);

var ext = img.src.substring(img.src.lastIndexOf(".")+1).toLowerCase();

var dataURL = canvas.toDataURL("image/"+ext);

return dataURL;

}

var image = new Image();

image.src = img;

image.onload = function(){

var base64 = getBase64Image(image);

console.log(base64);

}

js base64转图片

可以处理,不过效率比较低

eugeneware/jpeg-js这个是JPG的编码,要用canvas获取到位图然后再算法重编码就行了

具体的代码里面都有,在encode的最下面


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:docker 导入导出镜像
下一篇:路由器环回接口的优点与应用
相关文章

 发表评论

暂时没有评论,来抢沙发吧~