java 实现图片截取
来源:互联网 发布:移动怎么接网络电视 编辑:程序博客网 时间:2024/04/30 10:27
LoadImage.java:
import java.awt.Color;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JApplet;
public class LoadImage extends JApplet{
String addrs="D:\\test1.jpg";//改成自己的图片路径
BufferedImage mm,child;
CutImage ci;
public LoadImage(){
try {
mm=ImageIO.read(new File(addrs));
} catch (IOException e) {
System.out.println("图片读取失败!");
e.printStackTrace();
}
ci=new CutImage(mm);
child=ci.getChildImage(50, 0, 150, 220);
}
public void init(){
}
public void paint(Graphics g){
g.setColor(Color.red);
g.drawString("原图:",0,10);
g.drawImage(mm, 20,10,this);
g.drawString("ci.getChildImage(50, 0, 150, 220)截取后的图片",mm.getWidth()+30,10);
g.drawImage(child, mm.getWidth()+50,20,this);
}
}
CutImage.java
import java.awt.Image;
import java.awt.image.BufferedImage;
public class CutImage {
private BufferedImage img;
private BufferedImage child;
public CutImage(){
}
public CutImage(BufferedImage im){
img=im;
}
public CutImage(Image im){
img=(BufferedImage)im;
}
public void setImg(BufferedImage img) {
this.img = img;
}
public BufferedImage getChildImage(int x,int y,int width,int height) {
int cw=width;
int ch=height;
int pw=img.getWidth();
int ph=img.getHeight();
if(pw<x+width){
System.out.println("给出的参数超出原图片的范围!程序会自动减小宽度或高度");
cw=pw-x;
}
if(ph<y+height){
System.out.println("给出的参数超出原图片的范围!程序会自动减小宽度或高度");
ch=ph-y;
}
child=new BufferedImage(cw,ch,BufferedImage.TYPE_INT_ARGB );
for(int i=0;i<ch;i++){
for(int j=0;j<cw;j++){
child.setRGB(j, i, img.getRGB(x+j, y+i));
}
}
return child;
}
}
- java 实现图片截取
- JAVA实现截取网页图片
- java实现截取屏幕保存为图片
- JAVA实现图片等比缩放,图片截取功能--封装类
- Java截取图片
- java图片截取上传
- JAVA 图片截取
- 图片等比缩放及截取的java实现
- java实现的截取网页图片的方式
- Java实现全屏截取并保存成图片
- 判断语句实现截取图片
- Java实现字符串截取
- JAVA实现屏幕截取
- JAVA+JQUERY 上传截取图片
- java开发_图片截取
- java 图片缩放和截取
- Java调用命令截取图片
- Java使用OpenCV实现人脸识别/人眼检测/图片截取/合成/添加水印
- 【转】std::string.assign()的用法
- 常用JDBC连接数据库方式
- 10个精妙的Java编码最佳实践
- 国内数据库技术大牛:牛新庄博士自传(附:项目经验)
- ffmpeg移植到arm上
- java 实现图片截取
- 比例合同分保与非比例合同分保的差别
- 安装openssl
- android listview 去掉阻尼效果
- 第二章 高速乘法器
- Mac版 有道云笔记登陆出现问题 (使用用户名密码方式登陆)
- [Liferay]Portlet 之间使用 PortletSession 进行通信
- Linux定时器的使用
- 学习笔记 --- S3C2440 DMA操作原理