关于网站用户上传图片剪裁java源码
public static void cutImage(String srcPath, int width, int height) throws IOException {
File srcFile = new File(srcPath);
BufferedImage image = ImageIO.read(srcFile);
int srcWidth = image.getWidth(null);
int srcHeight = image.getHeight(null);
int newWidth = 0, newHeight = 0;
int x = 0, y = 0;
double scale_w = (double)width/srcWidth;
double scale_h = (double)height/srcHeight;
System.out.println("scale_w="+scale_w+",scale_h="+scale_h);
//按原比例缩放图片
if(scale_w < scale_h) {
newHeight = height;
newWidth = (int)(srcWidth * scale_h);
x = (newWidth - width)/2;
} else {
newHeight = (int)(srcHeight * scale_w);
newWidth = width;
y = (newHeight - height)/2;
}
BufferedImage newImage = new BufferedImage(newWidth, newHeight, BufferedImage.TYPE_INT_RGB);
newImage.getGraphics().drawImage(
image.getScaledInstance(newWidth, newHeight, Image.SCALE_SMOOTH), 0, 0, null);
// 保存缩放后的图片
String fileSufix = srcFile.getName().substring(srcFile.getName().lastIndexOf(".") + 1);
File destFile = new File(srcFile.getParent(), UUID.randomUUID().toString() + "." + fileSufix);
// ImageIO.write(newImage, fileSufix, destFile);
// 保存裁剪后的图片
ImageIO.write(newImage.getSubimage(x, y, width, height), fileSufix, destFile);
}
已经对照javaeye个人头像上传,基本一样。今天传了大概有7,8张垃圾图片吧,管理员请原谅啊!
分享到:
相关推荐
在IT行业中,头像剪切上传功能是许多网站和应用中的常见需求,它允许用户选择并裁剪自己的图片作为个人头像。这个"头像剪切上传jquery+java源码"是一个实现这一功能的示例项目,包含了前端的jQuery交互和后端的Java...
本示例的"裁剪图片并上传Demo源码"聚焦于提供一个用于裁剪图像并上传的交互式功能,这通常是为了用户能够自定义他们上传的图片。下面我们将深入探讨这个主题中的关键知识点。 1. **图片裁剪**: - 图片裁剪是通过...
这份"Android高级应用源码-android 调用系统相机图库裁剪-图片上传-客服端(测试可用).zip"的资源提供了完整的实现示例,可以帮助开发者更好地理解和运用这些技术。 1. **调用系统相机**: Android系统提供了一个...
Java版的头像上传、缩放和裁剪功能是许多Web应用中不可或缺的一部分,尤其是在社交网络、用户管理系统等场景下。这个源码提供了一个实现这一功能的解决方案。下面将详细介绍这个功能涉及的主要知识点: 1. **文件...
5. 图片处理:可能使用ImageMagick、Java Advanced Imaging (JAI) 或者第三方服务如Cloudinary,对图片进行缩放、裁剪等操作。 6. 存储服务:可能使用Amazon S3、Google Cloud Storage或阿里云OSS等云存储服务,或者...
在IT行业中,图片的上传和剪裁是网页和应用程序中常见的功能,特别是在用户需要自定义头像、上传照片或编辑图像的应用场景下。本篇将详细介绍如何在Java环境下实现图片的上传与剪裁。 首先,我们需要理解图片上传的...
在Java开发中,头像上传、缩放和裁剪功能是一项常见的需求,特别是在社交网络、论坛或者个人资料管理系统中。这个java版的头像上传裁剪功能是针对.NET版本的一个补充,提供了完整的Java实现方案。下面我们将详细探讨...
对于图片上传和裁剪,可能有一个配置管理工具,用于设置上传策略(如允许的文件类型、大小限制)和裁剪规则(如预设的裁剪模板)。 总结文档“总结.docx”很可能是对整个过程的详细记录,包括步骤、遇到的问题及...
本资源提供了完整的"安卓图片上传和文件上传带jsp服务端源码",非常适合Android开发者进行源码学习。以下是这个项目中涉及的关键知识点: 1. **Android客户端上传** - **Android权限管理**:在Android系统中,访问...
"二手闲置商城图片资源(解压后放在school-java-mall目录下)"这个标题和描述揭示了一个针对二手交易商城的图片集合,这些图片可能包括商品照片、用户头像、背景图像以及其他与商城相关的视觉元素。在开发或维护这样...
这个源码实现了这一功能,允许用户选择多张图片并将其上传到服务器。`MultiPhotoPicker`很可能是一个用于图片选择的库,它提供了用户友好的界面,让用户可以方便地从手机相册中选取多张图片。在实际开发中,我们通常...
使用js在前端将用户提供的图片剪裁成一个小图片,并上传到服务器的demo。使用了Cropper.js用于图片剪裁,Axios.js用户将剪裁后的数据发送到服务器。后端代码为java开发,实现了接收图片的接口。
在Java编程中,图片的上传和裁剪是常见的功能需求,尤其在开发Web应用或移动应用时。这个功能涉及到客户端的文件上传、服务器端的文件处理以及可能的图像操作库的使用。以下是对这一主题的详细说明: 1. **文件上传...
开发者可能会使用Java的`java.io`包来读取和写入图片文件,利用如`javax.imageio`这样的图像处理API进行图片的显示、裁剪、旋转等操作。此外,为了实现照片的分类、搜索等功能,可能会设计数据库模型来存储照片的元...
源码中可能包含一个Activity或Fragment,它负责处理用户选择文件或图片,读取文件内容,并发起上传请求。 2. 文件上传.rar: 这个文件可能包含服务端的Java代码,用于接收并处理客户端上传的文件。服务端通常需要...
系统可能包含一个图像上传模块,利用Java的图像处理库(如Java Advanced Imaging,JAI)对照片进行预处理,如裁剪、旋转或调整亮度,确保图片质量。然后,通过OCR(Optical Character Recognition,光学字符识别)...
本文将详细解析如何实现Android上传图片的功能,包括必要的技术点和源码分析。 首先,理解Android上传图片的核心流程: 1. **图片选择**:用户通常需要从相册或相机中选择图片,这涉及到Intent的使用,如ACTION_...
4. **图片处理**:可能使用如ImageMagick、Java的Java Advanced Imaging (JAI) 或者OpenCV进行图片的上传、缩放、裁剪等操作。 5. **前端技术**:JavaScript(可能使用React、Vue.js或Angular等库)、HTML和CSS用于...
以上就是基于Java Web的网页选择图片按需裁剪图像并上传后台接收源码涉及的主要技术点。这个项目为开发者提供了一个学习和实践Java Web图像处理、文件上传以及前端交互的实例,对于理解和掌握相关技术有很好的参考...