`

java图片的上传裁剪功能实现

阅读更多

实现java图片上传和裁剪(js代码略):

1.引入jimiProClasses.jar包;

2.导入我写好的工具类(实现源码在附件);

3.使用代码:

//上传图片
 public Boolean uplodImg(String userimgname,File uploduserimg,String sourceSrc,String newSrc,int zoom) {
  
  if (userimgname != null
    && (userimgname.endsWith(".JPG")
      || userimgname.endsWith(".PNG")
      || userimgname.endsWith(".GIF")
      || userimgname.endsWith(".JPEG")
      || userimgname.endsWith(".jpg")
      || userimgname.endsWith(".png")
      || userimgname.endsWith(".gif")
      || userimgname
       .endsWith(".jpeg"))) {
   if (uploduserimg != null) {
    String str = this.getClass().getResource("/").getPath();
    File f = new File(str);
    File ff = new File(f.getParent());
    File file = new File(ff.getParent()+sourceSrc);
    String resourceSrc = ff.getParent();
    try {
     FileUtils.copyFile(uploduserimg, file);
     
     PicUtil.toReduce(file.getPath(), resourceSrc+newSrc);
     try {
      // 缩放为前台所需大小的图片
      PicUtil.changDimension(resourceSrc+newSrc,resourceSrc+newSrc, zoom, zoom, zoom);
     } catch (Exception e) {
      e.printStackTrace();
      return false;
     }
    } catch (Exception e) {
     e.printStackTrace();
     return false;
    }
    try {
     // 删除转换之前的图片
     if (file.exists() && file.isFile()) {
      // 关闭流再删除
      FileWriter fw = new FileWriter(file);
      fw.close();
      System.out.println(file.delete());
     }
    } catch (Exception e) {
     e.printStackTrace();
//     return false;
    }

   }
  }
  return true;

 }
 
 public String cutImg(CutParame cutParame,String src){//裁剪头像
  String str =  this.getClass().getResource("/").getPath();
  File f = new File(str);
  File ff = new File(f.getParent());//取得跟路径
  String resourceSrc = ff.getParent()+src;
  //配置裁剪参数
  OperateImage oi = new OperateImage(cutParame.getX(),cutParame.getY(),cutParame.getWidth(),cutParame.getHeight());
  oi.setSrcpath(resourceSrc);
  oi.setSubpath(resourceSrc);
  try {
   oi.cut();//执行裁剪操作
   //裁减完后删除原来的图片
  } catch (IOException e) {
   e.printStackTrace();
  }
  try {
   //将图片缩放到头像大小
   PicUtil.changDimension(resourceSrc, resourceSrc);
  } catch (JimiException e1) {
   e1.printStackTrace();
  } catch (IOException e1) {
   e1.printStackTrace();
  }
  try {
   File file = new File(resourceSrc);
   if(file.exists()&&file.isFile()){
    //关闭流再删除
    FileWriter fw = new FileWriter(file);
    fw.close();
    file.delete();
   }
  } catch (IOException e) {
   e.printStackTrace();
  }
  //裁剪成功返回图片的路径
  return src;
 }

分享到:
评论

相关推荐

    java上传并裁剪图片

    总的来说,Java实现图片上传和裁剪功能需要结合Servlet或Spring MVC处理文件上传,然后选择合适的图像处理库进行图片裁剪。在这个过程中,需要注意文件的大小限制、异常处理以及内存管理,以确保服务的稳定性和效率...

    java图片上传、控制大小、宽度高度和图片裁剪并保存

    在Java编程中,图片处理是一项常见的任务,包括...综上所述,Java提供了一套丰富的API和第三方库来实现图片上传、大小控制、宽高调整和裁剪等功能。通过熟练掌握这些技术,开发者可以构建出高效、安全的图片处理系统。

    java版头像上传缩放裁剪功能

    这个java版的头像上传裁剪功能是针对.NET版本的一个补充,提供了完整的Java实现方案。下面我们将详细探讨相关的知识点。 1. **文件上传** 文件上传通常使用Servlet API或者第三方库如Apache Commons FileUpload来...

    java 图片上传,可预览可剪切可缩放

    在Java开发中,图片上传、预览、剪切和缩放是常见的功能需求,尤其在Web应用中。这里,我们主要探讨如何实现这些功能,并基于`swfupload`这个库来构建一个完整的解决方案。 首先,`swfupload`是一个古老的Flash上传...

    java实现上传图片功能

    在Java Web开发中,实现图片上传功能是一项常见的需求。这里我们主要探讨如何使用Java JSP技术来实现这一功能,以及如何处理上传后的图片,包括图片的剪裁和显示。首先,我们需要了解JSP(JavaServer Pages)是Java ...

    java多图片上传、删除、预览,post提交

    在Java开发中,图片上传、删除和预览是常见的功能需求,尤其是在Web应用中。这里我们探讨的是如何利用Java和layui插件实现这些功能,并通过POST方法将数据提交到服务端。layui是一款流行的前端UI框架,它提供了丰富...

    JSP 图片上传裁剪Demo

    在这个“JSP图片上传裁剪Demo”中,我们将探讨如何在JSP环境中实现图片上传和裁剪功能,这对于网页开发,尤其是涉及到用户头像管理的项目来说,是非常实用的功能。 首先,图片上传通常涉及前端和后端两部分。前端...

    Java实现图片裁剪预览

    总的来说,实现Java图片裁剪预览涉及了图像读取、显示、裁剪、预览效果生成以及用户交互等多个步骤。通过熟练掌握这些知识点,开发者可以构建出高效且用户体验良好的图像裁剪工具。在实际项目中,可以根据需求选择...

    Android开发实现调用相册图片并裁剪上传功能

    因此,通常我们会使用第三方库如`SimpleCropImage`来实现裁剪功能。首先,需要添加`SimpleCropImage`库到项目中。然后,创建一个新的Intent,设置裁剪参数(如裁剪比例、是否保持宽高比等),并启动裁剪活动。 ```...

    利用imgareaselect辅助后台实现图片上传裁剪

    总结来说,利用imgareaselect插件和后端处理,我们可以实现一个兼容各种浏览器的图片上传裁剪功能。前端通过imgareaselect获取用户选择的裁剪区域,将坐标信息传给后端,后端则负责图片的压缩和裁剪,确保了裁剪效果...

    jsp+CropZoom+jquery+java 图片缩放裁剪

    6. **图像处理**:项目可能使用了特定的Java图像处理库,如Java Advanced Imaging (JAI) 或 ImageIO,来实现图片的缩放和裁剪功能。 总的来说,"jsp+CropZoom+jquery+java 图片缩放裁剪"项目是一个结合了前后端技术...

    java实现上传头像裁剪头像保存头像

    在`ZoomImageDemo`项目中,可能是使用了`Jcrop`这个JavaScript库来提供前端的图片裁剪功能,然后将裁剪参数(例如裁剪区域的坐标和比例)一并发送到后端。在后端,我们需要根据这些参数对原始图片进行裁剪,这通常...

    java版上传头像裁剪

    6. **ZoomImageDemo**:这个文件名可能是项目中一个具体的示例或者组件,可能是一个用于演示图片缩放和裁剪功能的Java类或JSP页面。它可能包含了图像缩放算法以及裁剪区域选择的逻辑。 7. **Eclipse**:Eclipse是一...

    安卓图片裁剪后上传

    这个功能让用户能够选择一张图片,对其进行裁剪,然后将裁剪后的图片上传到服务器。在本文中,我们将深入探讨实现这一功能的关键技术和步骤。 首先,我们需要在用户界面上提供一个选择图片的入口,这通常通过集成...

    jsp图片上传可裁剪

    1. **前端裁剪库**:前端可以使用JavaScript库如`Cropper.js`或`jQuery UI Cropper`来实现图片预览和裁剪功能。用户可以在浏览器中选择并调整裁剪区域,然后将裁剪信息发送到服务器。 2. **图片处理库**:在服务器...

    java上传图片并裁剪

    Jcrop作为一个强大的前端工具,可以帮助简化用户界面的实现,而Java的图像处理库则提供了裁剪功能的后端支持。在实际开发中,还需要考虑错误处理、安全性(如防止上传恶意文件)和性能优化等问题。

    js+jquery+java实现的头像上传和裁剪

    在本文中,我们将深入探讨如何使用...通过合理运用这些技术,我们可以构建出一个用户体验良好、兼容性强的头像上传裁剪功能。在实际开发中,还需要考虑到错误处理、安全性和性能优化等方面,确保系统的稳定和高效运行。

    jquery crop+java 裁剪上传图片

    本项目聚焦于“jQuery Crop”与Java结合实现图片的裁剪上传功能,这是一个前端与后端协作的重要应用场景。 首先,`jQuery Crop` 是一个基于 jQuery 的图片裁剪插件,它允许用户在客户端对图片进行缩放、移动、旋转...

    图片上传带裁剪

    本节将详细介绍如何使用Struts2和jQuery实现图片上传并带有裁剪、放大和缩小功能。 首先,我们需要理解Struts2的工作原理。Struts2是一个基于MVC(Model-View-Controller)架构的框架,它负责接收用户请求,处理...

Global site tag (gtag.js) - Google Analytics