`
zc4530
  • 浏览: 85578 次
  • 性别: Icon_minigender_1
  • 来自: 长春
社区版块
存档分类
最新评论

JAVA技术:上传图片的缩放处理

阅读更多
图片上传到服务器后,会根据情况将图片缩小成一个图标,我们可以利用java强大的图形处理功能,对上传的图片进行缩放处理。

下面的程序使用jdk1.4中最新的ImageIO对图片进行读写。使用AffineTransform对图片进行缩放。

import java.io.File;import java.awt.image.BufferedImage;import java.awt.Image;import java.awt.image.AffineTransformOp;import javax.imageio.ImageIO;import java.awt.geom.AffineTransform;public class UploadImg{/*** @param fromdir 图片的原始目录* @param todir 处理后的图片存放目录* @param imgfile 原始图片* @param sysimgfile 处理后的图片文件名前缀**/ ............................ public boolean CreateThumbnail() throws Exception{//ext是图片的格式 gif JPG 或pngString ext="";double Ratio=0.0;File F = new File(fromdir,imgfile);if (!F.isFile())throw new Exception(F+" is not image file error in CreateThumbnail!");//首先判断上传的图片是gif还是JPG ImageIO只能将gif转换为pngif (isJpg(imgfile)){ext="jpg";}else{ext="png"; }File ThF = new File(todir,sysimgfile+"."+ext); BufferedImage Bi = ImageIO.read(F);//假设图片宽 高 最大为120 120Image Itemp = Bi.getScaledInstance (120,120,Bi.SCALE_SMOOTH);if ((Bi.getHeight()>120) || (Bi.getWidth()>120)){if (Bi.getHeight()>Bi.getWidth())Ratio = 120.0/Bi.getHeight();elseRatio = 120.0/Bi.getWidth();}AffineTransformOp op = new AffineTransformOp(AffineTransform.getScaleInstance(Ratio, Ratio), null);Itemp = op.filter(Bi, null);try {ImageIO.write((BufferedImage)Itemp, ext, ThF);}catch (Exception ex) {throw new Exception(" ImageIo.write error in CreatThum.: "+ex.getMessage()); }return (true);}}


该程序使用了Java 的AWT,在linux下运行可能报错,有两种解决方式:

(1) jdk1.4以前版本:需要安装 XFree86和XFree86-Xvfb ,加入 export DISPLAY=hostdomain:0.0。

(2) jdk 1.4以后版本,执行命令java 加入参数-Djava.awt.headless=true,表示这是一个没有键盘 没有显示器的无头服务器,意称机房托管的服务器。

分享到:
评论

相关推荐

    JAVA技术:上传图片的缩放处理

    图片上传到服务器后,会根据情况将图片缩小成一个图标,我们可以利用java强大的图形处理功能,对上传的图片进行缩放处理。本文的程序使用jdk1.4中最新的ImageIO对图片进行读写,使用AffineTransform对图片进行缩放。

    java图片的上传预览与缩放

    在Java编程语言中,处理图片上传、预览和缩放是一项常见的任务,特别是在网页应用开发中,例如使用JSP(JavaServer Pages)技术。本文将深入探讨如何在Java环境中实现这些功能,确保用户能安全、高效地上传图片,并...

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

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

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

    本项目提供了一个完整的Java实现,名为"ZoomImageDemo",它包含了处理图片上传、预览和裁剪的核心功能。下面我们将详细探讨这些知识点。 1. 图片上传: 在Java Web应用中,图片上传通常涉及到HTTP请求中的多部分...

    图片缩放剪切处理代码

    综上所述,这个“图片缩放剪切处理代码”涉及的技术栈包括前端的JavaScript,以及后端的ASP和PHP,它们共同协作以提供用户友好的图片处理功能,如拖放上传、实时预览、缩放和剪切。对于开发者来说,理解和掌握这些...

    上传图片 - 等比缩放

    本文将详细讨论“上传图片 - 等比缩放”的技术实现,包括如何生成两个不同尺寸的缩略图,一个为100X100像素,另一个为300X300像素。 首先,我们需要理解什么是等比缩放。等比缩放是指在调整图像大小时保持其原始...

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

    【标题】"jsp+CropZoom+jquery+java 图片缩放裁剪" 是一个基于Web的图像处理系统,主要用于实现用户在上传头像时进行自由裁剪的功能。这个项目使用了JSP(JavaServer Pages)作为后端动态网页技术,CropZoom作为前端...

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

    在Java编程中,图片处理是一项常见的任务,包括图片的上传、尺寸控制、宽高调整以及裁剪和保存等操作。这些功能在Web应用、图像处理软件或者数据分析项目中都有广泛的应用。下面我们将深入探讨如何使用Java实现这些...

    java压缩上传图片

    **缩放处理**:基于计算出的比例调整图片尺寸。 ### 4. 知识点四:保持图片的纵横比 - **代码片段**: ```java boolean proportion = true; // 是否保持比例 if (this.proportion == true) { // 计算缩放比例...

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

    Java版的头像上传、缩放和裁剪功能是许多Web应用中不可或缺的一部分,尤其是在社交网络、用户管理系统等场景下。这个源码提供了一个实现这一功能的解决方案。下面将详细介绍这个功能涉及的主要知识点: 1. **文件...

    java 图片水印 改变图片大小

    在Java编程领域,图片处理是一项常见的任务,包括添加水印、改变图片大小等。这里我们将深入探讨这些知识点,以及如何在Struts2框架下实现它们。 首先,让我们了解"图片水印"。水印通常用于保护版权或者为图片增加...

    JAVA缩放图片.txt

    因此,掌握Java中图片缩放的技术对于开发高质量的应用程序至关重要。 #### 二、关键知识点分析 ##### 2.1 图片缩放的基本原理 图片缩放主要涉及两种操作:缩小和放大。缩小是指减少图片的分辨率,使其在屏幕上显示...

    JSP上传图片并缩放裁切的程序

    在本文中,我们将深入探讨如何使用JSP(JavaServer Pages)来实现图片上传、等比例缩放以及裁切的功能。这个程序对于Web开发中的图像处理是至关重要的,尤其是在用户需要上传个人头像或商品图片的场景下。 首先,...

    java图片上传.zip

    如果图片被上传到图片服务器,通常会有一个专门的服务处理图片的上传、缩放、裁剪等操作,并提供API供其他服务获取图片URL。 6. **异常处理**: 文件上传过程中可能出现各种错误,如文件过大、格式不正确、网络...

    java实现的图片防篡改功能

    而`ImageUtil`可能是通用的图片处理工具类,包含如图片转换、缩放等辅助方法。 4. **哈希值比对**: 保存原始图片的哈希值作为基准,当需要检测图片是否被篡改时,计算待检测图片的哈希值并与基准值进行比较。如果...

    java 图片旋转、翻转、镜像处理

    在Java编程语言中,处理图像是一项常见的任务,包括图片的旋转、翻转和镜像操作。这些功能在很多场景下都很实用,例如照片编辑、图像处理应用或是网页开发。本篇将详细介绍如何使用Java实现这些功能,并以`ImgRotate...

    javascript+asp图片缩放剪切

    JavaScript 和 ASP 图片缩放剪切技术是一种常见的前端与后端结合处理图像的方法,尤其在用户上传图片时,为了保持网站性能和用户体验,通常需要对图片进行预处理,包括缩放和剪切。这一技术可以应用于多种编程环境,...

    java 上传图片配置

    这个配置文档主要涵盖了如何在Java环境中配置和使用相关工具来处理图片上传的过程。首先,我们来深入理解涉及的关键知识点。 1. **Servlet与Multipart解析器**: 图片上传通常通过HTTP POST请求完成,其中包含...

    用java如何把图片处理到指定大小

    ### 如何使用Java进行图片尺寸调整与裁剪 ...这些技术在很多场景下都非常实用,比如在Web应用中处理用户上传的头像、商品图片等。通过灵活运用这些技术,可以大大提升应用程序的功能性和用户体验。

Global site tag (gtag.js) - Google Analytics