`
llyzq
  • 浏览: 585605 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Jquery Jcrop 插件java的使用方法 包括图片保存类

    博客分类:
  • J2EE
 
阅读更多

转自:http://mofan.iteye.com/blog/767431

 

1。下载最新的Jcrop文件。 

http://deepliquid.com/content/Jcrop.html

 

里面有demo文件,可以直接看.但要实现剪切功能还需要类来支持。默认的是PHP的。

 

2。Utils类

 

Java代码  收藏代码
  1. public class Utils {  
  2.   
  3.     public static String getExtension(File f) {   
  4.         return (f != null) ? getExtension(f.getName()) : "";   
  5.     }   
  6.   
  7.     public static String getExtension(String filename) {   
  8.         return getExtension(filename, "");   
  9.     }   
  10.   
  11.     public static String getExtension(String filename, String defExt) {   
  12.         if ((filename != null) && (filename.length() > 0)) {   
  13.             int i = filename.lastIndexOf('.');   
  14.   
  15.             if ((i >-1) && (i < (filename.length() - 1))) {   
  16.                 return filename.substring(i + 1);   
  17.             }   
  18.         }   
  19.         return defExt;   
  20.     }   
  21.   
  22.     public static String trimExtension(String filename) {   
  23.         if ((filename != null) && (filename.length() > 0)) {   
  24.             int i = filename.lastIndexOf('.');   
  25.             if ((i >-1) && (i < (filename.length()))) {   
  26.                 return filename.substring(0, i);   
  27.             }   
  28.         }   
  29.         return filename;   
  30.     }   
  31. }  

 这个类主要是用来获取文件的扩展名。

 

3。SaveImges类

Java代码  收藏代码
  1. public class SaveImage{  
Java代码  收藏代码
  1.  /**   
  2.   * 保存图片   
  3.   * @param img       原图路径   
  4.   * @param dest      目标图路径   
  5.   * @param top       选择框的左边y坐标   
  6.   * @param left      选择框的左边x坐标   
  7.   * @param width     选择框宽度   
  8.   * @param height    选择框高度   
  9.   * @return   
  10.   * @throws IOException   
  11.   */    
  12.  public static boolean saveImage(File img,      
  13.             String dest,      
  14.             int top,      
  15.             int left,      
  16.             int width,      
  17.             int height) throws IOException {     
  18.   File fileDest = new File(dest);     
  19.   if(!fileDest.getParentFile().exists())     
  20.       fileDest.getParentFile().mkdirs();     
  21.   String ext = Utils.getExtension(dest).toLowerCase();     
  22.   BufferedImage bi = (BufferedImage)ImageIO.read(img);     
  23.   height = Math.min(height, bi.getHeight());     
  24.   width = Math.min(width, bi.getWidth());     
  25.   if(height <= 0) height = bi.getHeight();     
  26.   if(width <= 0) width = bi.getWidth();     
  27.   top = Math.min(Math.max(0, top), bi.getHeight()-height);     
  28.   left = Math.min(Math.max(0, left), bi.getWidth()-width);     
  29.        
  30.   BufferedImage bi_cropper = bi.getSubimage(left, top, width, height);     
  31.   return ImageIO.write(bi_cropper, ext.equals("png")?"png":"jpeg", fileDest);     
  32.  }    
  33.    
  34.  public static void main(String[] args) {  
  35.   try {  
  36.    System.out.println(saveImage(new File("E:\\JavaWork\\pic\\WebRoot\\css\\flowers.jpg"),"E:\\JavaWork\\pic\\WebRoot\\css\\flowers1.jpg",106,87,289,217));  
  37.   } catch (IOException e) {  
  38.    // TODO Auto-generated catch block  
  39.    e.printStackTrace();  
  40.   }  
  41.  }  
  42. }  

 

这里的top、left、width、height都可以直接用Jcrop里获取到。 在Jcrop的“Basic Handler”这个demo里面,相应的X1、Y1、W、H这四个参数,用request可以得到这些值。

分享到:
评论

相关推荐

    jquery+Jcrop+servlet图片上传裁剪选择保存实例

    在本文中,我们将深入探讨如何使用jQuery、Jcrop和Servlet技术来实现一个功能完善的图片上传、裁剪和保存实例。这个实例将涵盖前端用户界面的交互、图片处理以及后端服务器的数据交换,帮助开发者理解这一过程中的...

    jQuery Jcrop图像裁剪的插件结合java后台实现图片裁剪的功能

    jQuery Jcrop是一个在前端广泛应用的JavaScript插件,专门用于实现图像裁剪功能。它与后端技术如Java相结合,能够为Web应用提供完整的图片处理解决方案。Jcrop的强大之处在于其简单易用的API,允许开发者轻松地将...

    jQuery Jcrop 实现图像裁剪Demo

    下面将详细阐述jQuery Jcrop的使用方法、核心特性以及如何结合Java后端进行图像处理。 首先,要使用jQuery Jcrop,你需要确保已经引入了jQuery库和Jcrop的JavaScript及CSS文件。Jcrop的下载通常包括一个压缩包,...

    jsp+jquery(jcrop)实现的图片预览剪切上传

    文件名`ImageUpload`可能指的是项目的主文件或者一个包含所有必要资源的文件夹,这其中包括`jsp`页面、`jQuery`库、`jCrop`插件的JavaScript和CSS文件,以及可能的图片示例或配置文件。开发者可以通过这个项目学习...

    Jcrop插件对图片进行裁剪示例

    在本示例中,我们将深入探讨如何结合Jcrop与Java技术,实现一个完整的图片裁剪功能。 首先,Jcrop的核心在于它的交互性和灵活性。用户可以通过鼠标拖动来选择图片上的任意部分,其选定区域可以自适应图像大小,支持...

    jquery.Jcrop结合JAVA后台实现图片裁剪上传实例

    在本例中,使用了jQuery、springmvc框架和jcrop插件。jQuery是一个快速且小巧的JavaScript库,它通过减少代码量以及简化HTML文档遍历和事件处理、动画和Ajax交互等操作来简化JavaScript编程。springmvc是Spring框架...

    java+jq+jcrop缩放裁剪上传图片

    这个"java+jq+jcrop缩放裁剪上传图片"的主题涵盖了三个关键部分:Java后端处理、jQuery(jq)前端交互以及Jcrop图像裁剪库的使用。下面将详细解释这三个方面的知识点。 首先,让我们来看看前端部分。jQuery(jq)是...

    struts2加jquery加Jcrop实现头像剪切上传项目版(添加jar包部署就可以运行)

    4. **CSS和JavaScript**:包括JQuery库和JCrop插件,以及自定义的样式和交互脚本。 5. **图片处理服务**:在后端,可能有一个服务或者方法来接收裁剪信息,根据这些信息裁剪图片,并保存为头像。 在部署项目时,...

    图片的截取上传java+Jcrop

    本教程将详细介绍如何结合Java和Jcrop插件实现这一功能。Jcrop是一款强大的JavaScript图像裁剪工具,它允许用户在前端选择并裁剪图像,然后将裁剪参数发送到后端,由后端程序进行实际的图片处理。 首先,我们需要...

    头像剪切上传jquery+java源码

    头像的剪切功能可能采用了jQuery的插件,如`cropper.js`或`jcrop`,这些插件能够提供图像的选取和裁剪功能,允许用户自由调整选取区域,然后将裁剪后的图像数据发送到服务器。 在`uploadimage.jsp`页面中,HTML元素...

    jquery 图片剪切

    本话题主要围绕jQuery库中的Jcrop插件,结合后台Java进行详细讨论。 jQuery是一个轻量级、高性能的JavaScript库,它简化了HTML文档遍历、事件处理、动画以及Ajax交互。在图片剪切场景中,jQuery提供了一个强大的...

    jcrop v0.9.12

    本文将深入探讨Jcrop的核心特性、使用方法以及如何将其整合到不同后端环境中,如PHP和Java。 首先,Jcrop的核心功能在于其图像选区操作。用户可以通过鼠标轻松地在图片上划定需要裁剪的区域,同时提供实时预览,...

    java实现上传图片任意裁剪头像保存头像(java,jsp,jQuery)

    该资源是自己做的(后台是java,页面是jsp,用了Jcrop插件裁剪图片),能实现上传本地图片,预览在页面上并根据用户的需求进行任意大小的裁剪,最后将裁剪后的图片进行展示。整个过程会把图片的名字插入数据库字段;...

    Jsp + JCrop 上传头像预览并剪切

    "Jsp + JCrop 上传头像预览并剪切"是一个基于Java服务器页面(JSP)和JCrop插件的解决方案,它允许用户上传头像并在上传前进行预览和剪裁,从而提供更优质的交互体验。以下将详细介绍这一技术实现的关键知识点。 1....

    Jcrop头像截取

    Jcrop是基于jQuery的一个开源插件,它的主要目标是为HTML页面上的图像提供可交互的裁剪功能。通过Jcrop,用户可以自由地拖动选择框,调整要裁剪的区域,并实时预览裁剪效果。这极大地提升了用户体验,使得用户可以在...

    [J2EE 修改头像]使用commons-fileupload,uploadify和Jcrop实现修改头像

    服务器接收到裁剪坐标后,可以利用Java的ImageIO和BufferedImage类来处理图片,按照指定的坐标和比例进行裁剪。完成后,更新数据库中用户的头像信息,并返回成功消息。 以上就是使用Apache Commons FileUpload、...

    java二维码生成(带中间logo)

    5. **使用myjcrop**:压缩包中的`myjcrop`文件可能是JQuery Jcrop插件,它是一个JavaScript库,用于图像裁剪。在网页端,你可以使用Jcrop配合后端生成的二维码图片,让用户自定义Logo的裁剪区域,从而实现更个性化的...

    jquery fileupload带进度条的文件上传

    jQuery File Upload是一个强大的插件,它提供了丰富的功能,包括多文件选择、文件预览、进度条显示、取消上传等,极大地提升了用户体验。本项目将重点介绍如何使用jQuery File Upload实现带进度条的文件上传,并结合...

    java上传图片并裁剪

    Jcrop是一个流行的jQuery插件,用于提供图像选择功能。用户在前端选定裁剪区域后,会将裁剪的坐标(通常包括左上角和右下角的坐标)发送回服务器。服务器接收到这些坐标后,会用它们来裁剪图片。 在Java中,我们...

Global site tag (gtag.js) - Google Analytics