关于网站用户上传图片剪裁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用于...