最近在做项目的时候,想调用一个接口。接口中一个参数要求需要图片的base64字符串,所以下面整理了一下图片转base64字符串的方法:

方法1:(根据图片路径)

var image = new Image();
image.src = imgurl; //imgurl 就是你的图片路径
image.onload = function(){  var base64 = getBase64Image(image);  console.log(base64);
}    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;
}

方法2:(根据上传图片)

<input type="file" id="testFile" />
//上传的图片
$('#testFile').change(function (e) {if (!this.files[0].type.match(/image.*/)) {alert('请上传图片格式的文件!');return false;} var filemaxsize = 1024 * 4; //4Mvar Size = this.files[0].size / 1024;if (Size > filemaxsize) {alert('上传图片不能超过4M,请重新上传!');return false;} //获取图片的base64编码var reader = new FileReader();reader.readAsDataURL(this.files[0]); // 读出base64var dataURL = reader.result;//base64
});

补充:

1、调用接口时要求base64没有头部(data:image/png;base64,),需将头部去掉(在js中去掉或在后台逻辑去掉)

dataURL.substring(dataURL.indexOf(",") + 1);

2、调用接口时要求base64不能超过4M,需要判断

var maxSize = 1024 * 1024 * 4; //4M 的字节
if(dataURL.length > maxSize) {alert("base64超出4M!");
}

3、如何获取图片的长和宽

var image = new Image();
image.src = imgurl; //imgurl 就是你的图片路径 alert('图片宽度:' + image.width + ',图片高度:' + image.height);

实现将图片转base64字符串相关推荐

  1. java 图片 base64_java实现图片转base64字符串 java实现base64字符串转图片

    java 图片转base64字符串.base64字符串转图片,具体内容如下 1. 图片转base64字符串: /** * base64编码字符串转换为图片 * @param imgStr base64 ...

  2. java base64字符 转图片_JAVA实现图片与base64字符串之间的转换详解

    import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import ...

  3. Python如何把图片转为Base64字符串

    Base64可以将任何二进制文件以可打印字符的方式表示,也就是说,任何二进制文件都可以通过Base64编码技术转成字符串.在Java中,可以使用Base64类实现. Java中的实现方法:https: ...

  4. java base64转字图片、图片转base64字符串

    实现代码如下: @Slf4j public class Base64ToFileImageTools {/*** base64字符串转化成图片** @param imgData 图片编码* @para ...

  5. java实现图片与base64字符串之间的转换(不适用SUN公司的sun.misc.BASE64Encoder)

    package com.liu.ming.test; import java.io.FileOutputStream; import java.io.OutputStream; import org. ...

  6. C#将文件(图片)与Base64字符串进行互转

    一.需求说明 在项目的开发过程中,我们需要将指定的文件(图片)转为Base64字符串[比如在企业微信群中发送图片等];或将Base64字符串转为对应的图片保存,来进行相应的业务处理:实现我们想要的效果 ...

  7. 【base64】java 通过图片的Base64字符串判断文件格式

    代码:// base64字符串转写为文件public static void convertBase64DataToImage(String base64ImgData, String filePat ...

  8. java 通过图片的Base64字符串判断文件格式

    /*** base64字符串转写为文件* * @param base64ImgData* @param filePath* @throws IOException*/public static voi ...

  9. java图片转换成base64_Java将图片转换成Base64字符串

    public classImageUtil {/*** 本地图片转换成base64字符串 *@paramimgFile * 图片本地路径 *@return */ public static Strin ...

最新文章

  1. Tomcat6(含Tomcat6)之后默认没有common,server和shared文件夹,如何配置
  2. php之cookie
  3. MySQL补充部分-SQL逻辑查询语句执行顺序
  4. UA MATH567 高维统计I 概率不等式5 推广Hoeffding不等式与Khintchine不等式
  5. 查看数据库系统字符集
  6. 设定pic单片机端口为输入_PIC单片机IO端口的软件/硬件可靠性使用方法讨论
  7. druid 异常 com.alibaba.druid.pool.GetConnectionTimeoutException
  8. windows高精度计数器
  9. 30个必会的Axure小技巧
  10. STM32单片用什么编程?如何学习STM32单片机开发
  11. 365地图java_中国气候区划在线地图(1:3200万)
  12. 恢复win7 exe文件打开方式?
  13. 【工具】1063- 前端40+精选VSCode插件,总有几个你未拥有!
  14. 基于javaweb的简单员工管理系统
  15. Python爬取全国大学排名 用pyecharts进行大屏可视化
  16. 计算机语言元素周期表,元素周期表版《生僻字》,感受一下化学世界的语言魅力~...
  17. mount ntfs to centos5
  18. 张小娴经典语录100句
  19. 疫情错峰云计算冲锋,给Zoom带来了多少溢价?
  20. 渠道面前,SaaS露出“素颜”

热门文章

  1. uni-ui使用方式
  2. 分享一个Java超市积分管理系统项目的制作方法。
  3. 安卓APP抓包解决方案(教程)
  4. 隆重推荐:外星人就在月球背面
  5. 供应链金融项目的风险类型
  6. python朴素贝叶斯分类器实现_用scikit-learn实现朴素贝叶斯分类器
  7. 魔塔小游戏Java版项目完整版
  8. jvm深入理解:内存分配与回收策略(优先在Eden分配、大对象直接进入老年代、长期存活的对象将进入老年代、动态对象年龄判定、空间分配担保)
  9. js实例化以及constructor探究
  10. iscsi实现网络磁盘共享以及LVM方式共享拓展