`
coolpep
  • 浏览: 80532 次
社区版块
存档分类
最新评论

java 实现图片的裁剪

 
阅读更多
// 图片源

private static final String SRC_FILE="org//zy//demo//jdk//base//image//car1.jpg";

// 目标图片

private static final String DEST_FILE="c://a.jpg";

/**

* 读取图像文件

* ImageReader

* @param imgPath

* @throws IOException

*/

public void readUsingImageReader(String imgPath) throws IOException{

// 取得图片读入器

Iterator readers = ImageIO.getImageReadersByFormatName("jpg");

System.out.println(readers);

ImageReader reader = (ImageReader)readers.next();

System.out.println(reader);

// 取得图片读入流

InputStream source=this.parseImagePath(ImageDemo.SRC_FILE);

ImageInputStream iis = ImageIO.createImageInputStream(source);

reader.setInput(iis, true);

// 图片参数

ImageReadParam param = reader.getDefaultReadParam();

int imageIndex = 0;

int half_width = reader.getWidth(imageIndex)/2;

int half_height = reader.getHeight(imageIndex)/2;

// Rectangle rect = new Rectangle(60, 60, half_width, half_height);

Rectangle rect = new Rectangle(60, 60, 100, 100);

param.setSourceRegion(rect);

BufferedImage bi = reader.read(0,param);

ImageIO.write(bi, "jpg", this.initDestFile());

}

我的源图片是:

<shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"></path><lock v:ext="edit" aspectratio="t"></lock></shapetype><shape id="_x0000_i1025" style="WIDTH: 449.25pt; HEIGHT: 318.75pt" type="#_x0000_t75"><imagedata src="file:///C:/DOCUME~1/zhangyi/LOCALS~1/Temp/msohtml1/01/clip_image001.png" o:title="a"></imagedata></shape><!--[if !vml]--> img0.jpg
<!--[endif]-->

上面的程序运行后截得的图片如下:

<shape id="_x0000_i1026" style="WIDTH: 300pt; HEIGHT: 212.25pt" type="#_x0000_t75"><imagedata src="file:///C:/DOCUME~1/zhangyi/LOCALS~1/Temp/msohtml1/01/clip_image003.jpg" o:title="a0.9358084919675186"></imagedata></shape><!--[if !vml]--> img1.jpg
<!--[endif]-->

转:http://www.blogjava.net/zhyiwww/archive/2007/01/30/96767.html
分享到:
评论

相关推荐

    Java实现图片裁剪预览

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

    java对图片进行操作.rar_java 图片剪裁_java图片_图片

    本资源“java对图片进行操作.rar”提供了一种用Java进行图像操作的工具类,特别关注于图片的剪裁、重置大小以及按比例缩小等功能。以下是关于这些功能的详细解释和实现方法。 首先,图片剪裁是调整图像大小并提取其...

    java实现图片的裁剪

    使用java代码,实现图片的裁剪,可以将图片按照要求进行裁剪。

    java实现的图片裁剪源码

    自己写的一个java实现的图片裁剪源码,一个简单实现类,简单实用。

    java图片裁剪

    本文将深入探讨Java中的图片裁剪技术,包括基本概念、常用库以及具体的实现步骤。 1. **基本概念**: - **坐标系统**:在Java图像处理中,图片被看作是一个二维平面,每个像素都有一个x和y坐标。 - **裁剪区域**...

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

    实现图片裁剪通常需要依赖于图像处理库。在Java中,有多个流行的库可供选择,如Java自带的`javax.imageio`包,它提供了基本的图像读取、写入和处理功能。除此之外,还可以使用更强大的第三方库,如ImageIO-Extend、...

    java实现人脸识别并裁剪人脸图片

    19年10月3号更新 新资源地址https://download.csdn.net/download/b379685397/11831772。 使用教程见https://blog.csdn.net/b379685397/article/details/101940373 有问题可以私信我哦

    java实现的图片裁剪功能示例

    Java 实现图片裁剪功能示例 Java 实现图片裁剪功能示例主要介绍了 Java 实现的图片裁剪功能,涉及 Java 针对图片的读取、转换、保存等相关操作技巧。下面将详细讲解标题、描述、标签和部分内容中的知识点。 标题:...

    java图片裁剪,裁剪完新图片保存

    在给定的代码中,我们看到以下关键步骤用于实现 Java 图片裁剪: 1. **初始化参数**:`srcpath` 存储源图片的路径,`subpath` 存储裁剪后图片的保存路径,`x`, `y`, `width`, 和 `height` 分别表示裁剪的起始坐标和...

    java上传并裁剪图片

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

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

    下面我们将深入探讨如何使用Java实现这些功能。 1. **图片上传** 在Java Web开发中,图片上传通常涉及到客户端通过HTTP协议将图片文件发送到服务器。可以使用Servlet或Spring MVC框架来接收上传的文件。首先,需要...

    java 裁剪图片

    在JAVA编程里,实现图片的裁剪。java 图片裁剪 裁剪图片。

    Java Servlet版图片裁剪

    【Java Servlet版图片裁剪】技术是Web开发中一种实现图像处理的方式,它结合了Java Servlet、AJAX和JCrop库,提供了用户友好的图片裁剪功能。在本项目中,开发者利用Servlet作为服务器端的核心处理组件,处理来自...

    java 图片裁剪

    在Java编程语言中,图片裁剪是一项常见的任务,特别是在网页设计、图像处理或者应用程序开发中。这个主题涉及到Java的图形处理API,如Java AWT(Abstract Window Toolkit)和Swing库。下面我们将深入探讨如何使用...

    java和 js实现图片上传和裁剪

    里面包括flash上传头像裁剪demo、上传图片任意裁剪头像保存头像;java实现的供大家参考

    java图片等比压缩后裁剪

    总结起来,Java图片等比压缩和裁剪涉及读取图片、计算比例、缩放、裁剪和保存等多个步骤,需要理解图像处理的基本原理,并利用适当的库来实现。这个过程中需要注意保持图像质量,避免失真,并确保符合预期的输出尺寸...

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

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

    JAVA实现的图片剪切预览

    本项目聚焦于使用JAVA实现图片的剪切预览功能,并结合JQUERY前端控件来提供用户友好的交互体验。以下将详细阐述相关知识点。 首先,让我们关注“JAVA实现的图片剪切预览”这一主题。在Java中,处理图片主要依靠Java...

    Java和C#的实现图片头像裁剪功能(含Flex、Flash、js、JQuery版)

    Java和C#的实现图片头像裁剪功能(含Flex、Flash、js、JQuery版)Java和C#的实现图片头像裁剪功能(含Flex、Flash、js、JQuery版)Java和C#的实现图片头像裁剪功能(含Flex、Flash、js、JQuery版)Java和C#的实现图片头像...

Global site tag (gtag.js) - Google Analytics