public class ImageToBase64 {

     //图片转化成base64字符串
public static String GetImageStr(String path,int width,int height) throws IOException
{//将图片文件转化为字节数组字符串,并对其进行Base64编码处理
File srcFile = new File(path);//文件上服务器上面的地址
if (!srcFile.exists())
return "";
Image srcImg = ImageIO.read(srcFile);
// 生成指定大小图片
BufferedImage buffImg = null;
int oldWidth = srcImg.getWidth(null);
int oldHeight = srcImg.getHeight(null);
// 计算原图等比缩放长宽
if (oldWidth * height > width * oldHeight) {
oldHeight = width * oldHeight / oldWidth;
oldWidth = width;
} else {
oldWidth = height * oldWidth / oldHeight;
oldHeight = height;
}
// 生成新图
buffImg = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
// 填白
buffImg.getGraphics().fillRect(0, 0, width, height);
// 填入原图
buffImg.getGraphics().drawImage(srcImg.getScaledInstance(oldWidth, oldHeight, Image.SCALE_SMOOTH),
(width - oldWidth) / 2, (height - oldHeight) / 2, null); ByteArrayOutputStream bs = new ByteArrayOutputStream();
ImageOutputStream imOut = ImageIO.createImageOutputStream(bs);
ImageIO.write(buffImg, "jpg", imOut); InputStream in = new ByteArrayInputStream(bs.toByteArray());
byte[] data = null;
//读取图片字节数组
try
{
data = new byte[in.available()];
in.read(data);
in.close();
}
catch (IOException e)
{
return "";
}
// String fileName=srcFile.getName();
//String prefix="data:image/jpg"+fileName.substring(fileName.lastIndexOf(".")+1)+";base64,";
String prefix="data:image/jpg;base64,";
return prefix+Base64.encodeBase64String(data);//返回Base64编码过的字节数组字符串
}
}

将图片转换为Base64字符串公共类抽取的更多相关文章

  1. C# Base64字符串转换成图片及图片转换为Base64

    最近有朋友经常会问我一些问题,例如,如何把一个字符串转换成base64字符串,如何把一个二进制文件转换成Base64文件,以及如何转换回原有的文件,在此我把方法写一下   字符串与Base64相互转换 ...

  2. JAVA 将图片转换为Base64编码

    这里使用的jar包是commons-codec-1.10.jar; 示例代码 import java.io.FileInputStream; import java.io.FileOutputStre ...

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

    java 图片转base64字符串.base64字符串转图片 1. 图片转base64字符串: /** * base64编码字符串转换为图片 * @param imgStr base64编码字符串 * ...

  4. 将图片转换为base64 格式

    1.页面上的图片,转换成base64格式,可以通过canvas 的 toDataURL 例子:给定图片的url 将图片转换为base64 var imageSrc = "../images/ ...

  5. js 图片转换为base64

    <input id="file" type="file"> <img id="img" style="max-h ...

  6. C# 图片转换为base64

    WebRequest webRequest = WebRequest.Create("验证码url"); WebResponse webResponse = webRequest. ...

  7. 【PHP】图片转换为base64,经过post传输后‘+’会变成 ‘空格’

    图片转换为base64,经过post传输后‘+’会变成 ‘空格’, 需要用PHP 处理一下 $str= $_POST['img_data']; $str= str_replace(' ','+',$s ...

  8. 将图片转换为Base64编码的字符串

    图片以文件的形式存在,可以在表单中使用. 也可以转换成Base64编码的字符串,从而在css.js中以字符串的形式使用图片.例如,在css中设置背景图片.在js中用ajax上传图片. <!DOC ...

  9. 将文件转换为base64字符串,然后还原

    package com.um.banks.xinlian.utils; import java.io.File; import java.io.FileInputStream; import java ...

随机推荐

  1. vue做购物车

    写一点废话,昨天敲代码找bug,找了好久都没找到,后来一哥们找到他说,找代码的bug就像男女朋友吵架,女问男你错了没,男说错啦,女再问错哪了,男傻眼了不知道错哪.在找代码的过程中一直知道我错啦就是找不 ...

  2. 微信小程序滚动条返回顶部

    scroll-view(可滚动视图区域): 使用竖向滚动时,需要给<scroll-view/>一个固定高度,通过 WXSS 设置 height,将scroll-y属性设置为true,将en ...

  3. vue 计算属性 实例选项 生命周期

    vue 计算属性: computed:{} 写在new vue()的属性,只要参与运算,数据不发生变化时,次计算只会执行一次,结果缓存,之后的计算会直接从缓存里去结果.如果其中的值发生变化(不管几个) ...

  4. web中的CSS、Xpath等路径定位方法学习

    今天不到八点就到公司了,来的比较早,趁着有点时间,总结下web中的CSS.Xpath等路径定位定位的方式吧! 简单的介绍下xpath和css的定位 理论知识就不罗列了 还是利用博客园的首页.直接附上代 ...

  5. ES6的新增数据类型:Symbol

    简介:Symbol类型是es6新增的一个数据类型,Es5的基本数据类型(undefined,null,Object,function,Number,string) Symbol值通过Symbol函数生 ...

  6. 三:ZooKeeper的ZAB协议

    一:ZAB协议概述--->ZooKeeper并没有完全采用Paxos算法,而是使用了一种称为ZooKeeper Atomic Broadcast(ZAB,zookeeper原子消息广播协议)的协 ...

  7. Largest Number——STL的深层理解

    Given a list of non negative integers, arrange them such that they form the largest number. For exam ...

  8. Integer to Roman——相当于查表法

    Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range from 1 t ...

  9. pc、移动端H5网站 QQ在线客服、群链接代码【我和qq客服的那些事儿】

    转载:http://blog.csdn.net/fungleo/article/details/51835368#comments 移动端H5 QQ在线客服链接代码 <a href=" ...

  10. 转:LLVM与Clang的概述及关系

    转:http://www.cnblogs.com/saintlas/p/5738739.html      LLVM是构架编译器(compiler)的框架系统,以C++编写而成,用于优化以任意程序语言 ...