精华内容
下载资源
问答
  • java 头像截图 java切割图片 类似头像上传前的截取头像
  • Java语言高分悬赏:如何将一张矩形头像图片转换成圆形的头像图片 Java语言高分悬赏:如何将一张矩形头像图片转换成圆形的头像图片
  • 上传头像图片带预览剪切JAVA版-兼容所有浏览器
  • import java.awt.Color; import java.awt.Graphics2D; import java.awt.RenderingHints; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import java.io....
    import java.awt.Color;
    import java.awt.Graphics2D;
    import java.awt.RenderingHints;
    import java.awt.image.BufferedImage;
    import java.io.File;
    import java.io.IOException;
    import java.io.InputStream;
    
    import javax.imageio.ImageIO;
    
    import org.springframework.web.multipart.MultipartFile;
    
    public class UploadUtil {
    	/**
    	 * 按比例缩放图片
    	 * @param img 原始图片
    	 * @param width 缩放后的宽度
    	 * @param isScale 是否是按照比例缩放
    	 *        true:按实际比例缩放
    	 *        false:按1:1比例缩放
    	 * @return  缩放后的BufferedImage的对象
    	 */
    	private static BufferedImage resizeByWidth(BufferedImage img,int width,boolean isScale){
    		BufferedImage saveImage=null;
    		if(isScale){
    			int height=(int)((float)img.getHeight()/img.getWidth()*width);
    			saveImage=new BufferedImage(width,height,BufferedImage.TYPE_4BYTE_ABGR);//BufferedImage.TYPE_INT_ARGB
    			Graphics2D g=saveImage.createGraphics();
    			g.drawImage(img, 0, 0, width, height, null);
    		}else{
    			//1:1
    			int height=width;
    			saveImage=new BufferedImage(width,height,BufferedImage.TYPE_4BYTE_ABGR);
    			Graphics2D g=saveImage.createGraphics();
    			g.drawImage(img, 0, 0, width, height, null);
    		}
    		return saveImage;
    	}
    	/**
    	 * 上传图片的工具方法
    	 * @param picture 要上传的图片对象MultipartFile
    	 * @param uuid  上传后图片的名称
    	 * @param isScale 是否是按照比例缩放
    	 *        true:按实际比例缩放
    	 *        false:按1:1比例缩放
    	 * @param width 缩放后的宽度
    	 * @param path 缩放后的存储路径
    	 * @return Boolean
    	 *         true:上传成功
    	 *         false:上传失败
    	 */
    	public static boolean uploadImage(MultipartFile picture,String uuid,boolean isScale,int width,String path){
    		boolean flag=false;
    		try {
    			InputStream stream=picture.getInputStream();
    			//转换输入流对象为BufferedImage对象
    			BufferedImage img=ImageIO.read(stream);
    			//按照原始图片比例缩放,加水印
    			img=resizeByWidth(img,width,isScale);
    			Graphics2D g=(Graphics2D)img.getGraphics();
    			g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
    			g.setColor(new Color(0x00ff00));
    			g.drawString("tarena", 25, 100);
    			
    			String originalFileName=picture.getOriginalFilename();
    			String originalExtendName=originalFileName.substring(originalFileName.lastIndexOf("."));
    			String imageFileName=uuid+originalExtendName;
    			
    			File realPath=new File(path);
    			if(!realPath.exists()){
    				realPath.mkdir();
    			}
    			File file1  = new File(realPath,imageFileName);
    			//写出文件
    			flag = ImageIO.write(img, originalExtendName.substring(1), file1);
    		} catch (IOException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    		
    		return flag;
    	}
    }
    
    展开全文
  • 这是我做的一个简易用户上传头像的Demo,是仿照qq修改头像的效果做的,内附数据库,使用SSM框架搭建(项目里有一些无用的jar包,希望大家不要介意)。包括添加用户时的头像上传,以及修改用户头像(使用ajax上传头像并...
  • 该资源是自己做的(后台是java,页面是jsp,用了Jcrop插件裁剪图片),能实现上传本地图片,预览在页面上并根据用户的需求进行任意大小的裁剪,最后将裁剪后的图片进行展示。整个过程会把图片的名字插入数据库字段;...
  • java+jsp 截头像图片

    2019-05-26 01:20:46
    NULL 博文链接:https://ldf2008rw.iteye.com/blog/502793
  • 1 用到了 jsCropperUI-1.2.0.zip 和 smartUpload 组件,整理了一下 ,写了个小例子希望能帮助新手有用! 直接导入工程里面 上传图片 然后选择合适的区域 双击 就可以保存了
  • java头像裁剪上传

    千次阅读 2015-05-28 09:26:59
    java头像裁剪上传 源代码下载地址:http://www.zuidaima.com/share/1550463771118592.htm
     
    

    原文:java头像裁剪上传

    源代码下载地址:http://www.zuidaima.com/share/1550463771118592.htm

    jsp页面实现头像裁剪上传,带进度条,后台java接收java头像裁剪上传

    上传成功后

    java头像裁剪上传

    展开全文
  • JAVA实现上传图片实例(上传头像) JAVA实现上传图片实例(上传头像)
  • Java头像图片保存到MySQL数据库

    千次阅读 2017-04-10 17:25:00
    在做头像上传的过程中通常是将图片保存到数据库中,这里简单介绍一中将图片保存到数据库的方法: jsp代码: 1 <div> 2 <input class="avatar-input" id="avatarInput" name="avatar_file" type="file...

      在做头像上传的过程中通常是将图片保存到数据库中,这里简单介绍一中将图片保存到数据库的方法:

    jsp代码:

    1  <div>
    2  <input class="avatar-input" id="avatarInput" name="avatar_file" type="file" />
    3  <button class="btn btn-primary btn-block avatar-save" type="button" id="btn">完成</button>
    4  </div>
    5 //显示头像
    6 <div>
    7       <img id="image" src="${pageContext.request.contextPath}/Personal.do?method=Pictureshow" />
    8 </div>

     

    js代码:

     1   $("#avatarInput").wrap("<form id='myupload' action='${pageContext.request.contextPath}/Personal.do?method=Pictureupload' enctype='multipart/form-data' method='post' ></form>")
     2   var formdata;
     3   $("#avatarInput").change(function(){
     4       formdata=new FormData($("#myupload")[0]);
     5    }) 
     6       $("#btn").click(function(){
     7           $.ajax({
     8              type: 'post',
     9                  url: '${pageContext.request.contextPath}/Personal.do?method=Pictureuplo',
    10                  data: formdata,
    11                  async:false,
    12                  cache:false,
    13                  contentType:false,
    14                  processData:false,
    15                  success: function(data) {
    16                     alert(data);
    17                  }
    18              });            
    19          });

     

    注:为了方便获取返回值,我这里选择用ajax传值,根据需求而定,也可以直接用form表单传值。

    Controller(头像插入):

     1 @RequestMapping(params = "method=Pictureupload",headers="content-type=multipart/*" ,method=RequestMethod.POST)
     2     public @ResponseBody int Pictureupload(@RequestParam("avatar_file")MultipartFile file,HttpServletRequest request)throws Exception{
     3         Map map=new HashMap<>();
     4         int YGID001 = (int)request.getSession().getAttribute("ygid001");
     5         String name = file.getOriginalFilename();
     6         long filesize  = file.getSize();
     7         //System.err.println(filesize);
     8         if(filesize>200000){//判断图片大小
     9         return -1;
    10         }
    11         //System.out.println(file.getBytes());
    12         map.put("in", file.getBytes());
    13         map.put("YGID001", YGID001);
    14         return pcs.Pictureupload(map);//pcs为service中方法。
    15     }

    Controller(头像显示):

     

     1     @RequestMapping(params = "method=Pictureshows")
     2     public ResponseEntity<byte[]> Pictureshow(HttpServletRequest request)throws Exception{
     3         int YGID001 = (int)request.getSession().getAttribute("ygid001");
     4         List<PictureShow> list=pcs.Pictureshows(YGID001);//根据员工号查找头像
     5         byte[] bytes=list.get(0).getPortrait();
     6         HttpHeaders headers = new HttpHeaders();
     7         try {
     8             headers.setContentType(MediaType.IMAGE_PNG);
     9             headers.setContentDispositionFormData("attachment", new String("头像".getBytes("GBK"),"ISO8859-1"));
    10         } catch (Exception e) {
    11             e.printStackTrace();
    12         }
    13         return new ResponseEntity<byte[]>(bytes,headers,HttpStatus.OK);
    14     }

     

    sql:

    <!--  头像插入   -->
    insert into yg01 (SKYG018) values(#{in}) where YGID001=#{YGID001}
    <!--  头像显示   -->
    select portrait  from yg where YGID001=#{YGID001}

    注:数据库字段类型设置为以下中的一种:TinyBlob 最大255 、 Blob 最大65K、 MediumBlob 最大16M、LongBlob  最大4G。

     

    转载于:https://www.cnblogs.com/guagua-19/p/6690010.html

    展开全文
  • 一、有个生成图片的需求,需要将用户头像展示成圆形的,找到一个兄弟写的很好用,转了!转载来源 package com.im.app.api.util; import javax.imageio.ImageIO; import java.awt.*; import java.awt.geom.Ellipse2D;...

    一、有个生成图片的需求,需要将用户头像展示成圆形的,找到一个兄弟写的很好用,转了!转载来源

    package com.im.app.api.util;
    import javax.imageio.ImageIO;
    import java.awt.*;
    import java.awt.geom.Ellipse2D;
    import java.awt.image.BufferedImage;
    import java.io.File;
    import java.io.FileOutputStream;
    import java.io.OutputStream;
    import java.net.URL;
    
    /**
     * @Author: EDZ
     * @Description: ${description}
     * @Date: 2019/5/9 13:05
     * @Version: 1.0
     */
    public class CopeImageUtil {
        public static BufferedImage cutHeadImages(String headUrl) {
            BufferedImage avatarImage = null;
            try {
                avatarImage = ImageIO.read(new URL(headUrl));
                avatarImage = scaleByPercentage(avatarImage, avatarImage.getWidth(),  avatarImage.getWidth());
                int width = avatarImage.getWidth();
                // 透明底的图片
                BufferedImage formatAvatarImage = new BufferedImage(width, width, BufferedImage.TYPE_4BYTE_ABGR);
                Graphics2D graphics = formatAvatarImage.createGraphics();
                //把图片切成一个园
                graphics.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
                //留一个像素的空白区域,这个很重要,画圆的时候把这个覆盖
                int border = 1;
                //图片是一个圆型
                Ellipse2D.Double shape = new Ellipse2D.Double(border, border, width - border * 2, width - border * 2);
                //需要保留的区域
                graphics.setClip(shape);
                graphics.drawImage(avatarImage, border, border, width - border * 2, width - border * 2, null);
                graphics.dispose();
                //在圆图外面再画一个圆
                //新创建一个graphics,这样画的圆不会有锯齿
                graphics = formatAvatarImage.createGraphics();
                graphics.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
                int border1 = 3;
                //画笔是4.5个像素,BasicStroke的使用可以查看下面的参考文档
                //使画笔时基本会像外延伸一定像素,具体可以自己使用的时候测试
                Stroke s = new BasicStroke(5F, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND);
                graphics.setStroke(s);
                graphics.setColor(Color.WHITE);
                graphics.drawOval(border1, border1, width - border1 * 2, width - border1 * 2);
                graphics.dispose();
                OutputStream os = new FileOutputStream("C:\\Users\\EDZ\\Desktop\\剪裁图片\\13000.png");//发布项目时,如:Tomcat 他会在服务器本地tomcat webapps文件下创建此文件名
                ImageIO.write(formatAvatarImage, "PNG", os);
                return formatAvatarImage;
            } catch (Exception e) {
                e.printStackTrace();
            }
            return null;
        }
    
        /**
         * 缩小Image,此方法返回源图像按给定宽度、高度限制下缩放后的图像
         *
         * @param inputImage
         *            :压缩后宽度
         *            :压缩后高度
         * @throws java.io.IOException
         *             return
         */
        public static BufferedImage scaleByPercentage(BufferedImage inputImage, int newWidth, int newHeight){
            // 获取原始图像透明度类型
            try {
                int type = inputImage.getColorModel().getTransparency();
                int width = inputImage.getWidth();
                int height = inputImage.getHeight();
                // 开启抗锯齿
                RenderingHints renderingHints = new RenderingHints(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
                // 使用高质量压缩
                renderingHints.put(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY);
                BufferedImage img = new BufferedImage(newWidth, newHeight, type);
                Graphics2D graphics2d = img.createGraphics();
                graphics2d.setRenderingHints(renderingHints);
                graphics2d.drawImage(inputImage, 0, 0, newWidth, newHeight, 0, 0, width, height, null);
                graphics2d.dispose();
                return img;
    
            }catch (Exception e) {
                e.printStackTrace();
            }
            return null;
        }
    
        public static void main(String[] args) throws Exception {
            cutHeadImages("https://mjmall.oss-cn-shanghai.aliyuncs.com/18/1/merchantIcon.png");
        }
    }
    
    展开全文
  • 使用 graphics 把头像图片切成圆图 并在头像后面加一个白圆圈 生成头像效果图 示例代码 import javax.imageio.ImageIO; import java.awt.*; import java.awt.geom.Ellipse2D; import java.awt.image....
  • NULL 博文链接:https://snv.iteye.com/blog/1934310
  • 论坛中的一个功能,很多人使用,而且功能比较强大而且使用简单,实质上就是一个flash和后台完成的数据交换,通过flash完成图片的上传校验和大小剪裁完成图片的上传,而且可以通过摄像头及时采集图像。 此资源是自己...
  • public static void main(String[] args) throws ... //从链接中获取图片,如OSS,服务器等。 // String url = "https://mjmall.oss-cn-shanghai.aliyuncs.com/18/1/merchantIcon.png"; // BufferedIm...
  • 这两天研究了一下图片的缩放的剪切,在各个网站都会有头像的设置,比如QQ,所以图片的剪切是必须的 package com.dbwen.core.util; import java.awt.Graphics; import java.awt.Image; import java.awt.Toolkit; ...
  • java h5头像上传

    2018-06-28 09:44:10
    java h5头像上传,2018.6.27写的,头像上传有剪切 后台有图片压缩,项目是maven项目(注意),直接可以跑的!
  • Java头像上传

    2018-09-02 18:39:21
    //按指定大小把图片进行缩和放(会遵循原图高宽比例) File newFile=new File(path); String path2; try { path2="D:\\nginx-1.12.1\\html\\home\\im\\images/"+new Date().getTime()+file.getOriginalFilename...
  • 在很多的网站都可以实现上传头像,可以选择自己喜欢的图片头像,从本地上传,下次登录时可以直接显示出已经上传的头像,那么这个是如何实现的呢?   下面说一下我的实现过程(只是个人实现思路,实际网站怎...
  • java 获取微信头像和昵称 生成图片

    千次阅读 2018-08-09 08:20:52
    CSDN账户申请好久了一直在论坛上面浏览别人的的东西,自己也没有写过什么正经东西,好多自己看到和用到的...我只用java生成图片,大概思路是以下几个步骤。 1、获取用户昵称和头像。 2、生成二维码。 3、设置背...
  • //将长方形图片裁剪成正方形图片 if (image.getWidth() == image.getHeight()) { bitmap = Bitmap. createBitmap (image, image.getWidth() / 2 - image.getHeight() / 2 , 0 , image.getHeight(), image....
  • java flash头像剪切上传

    2013-11-06 10:06:08
    java头像上传,可以对头像进行裁剪,生成所选区的图片
  • 能实现头像上传,裁剪头像,保存裁剪的头像,可以参考学习一下~
  • 最近做一个微信小应用,最后的保存分享海报页面,需要将海报上面展示当前用户的微信头像,二维码、添加参数等,最终合成一张海报展示,分享使用: 需求原型: 如上图所示:就是在原始海报上叠加上当前登录...
  • java上传剪切头像

    2015-02-07 16:55:24
    java jquery做得一个上传头像的例子 可以剪切头像 设置剪切大小 指定上传路径等
  • Java获取Avatar头像图片工具类。输入参数为Avatar注册邮箱地址,就能生成对应注册邮箱的Avatar头像链接。WordPress头像。
  • 没错这个就是java版的,是根据杂物吧那个修改而来,他那个下完了不可以直接使用,我这个你直接导入Myeclipse就可以直接用了。 有的注释我没改,不过你要是应用到项目,简单看一看就懂了,新手的话可以把这个当作一...
  • jsp js java网页头像切割实例 jsp js java网页头像切割实例 jsp js java网页头像切割实例

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 17,402
精华内容 6,960
关键字:

java头像图片

java 订阅