- 1
- 0
- 约6.29千字
- 约 8页
- 2017-12-04 发布于贵州
- 举报
【精选】Java图片简单处理
Java图片简单处理
本文档讲述Java对图片的一些简单处理。其中包括缩放图片、旋转绘制图片、忽略图片中某种颜色、切割图片、图片透明。
废话不多说,代码献上,然后在解释。
ImageUtil.java
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.image.BufferedImage;
/**
* 图片操作工具类
*/
public final class ImageUtil {
private ImageUtil() {
}
/** 设置颜色透明度(0~255) **/
public static final Color newColor(Color c, int alp) {
return new Color(c.getRed(), c.getGreen(), c.getBlue(), alp);
}
/** 按倍率拉伸图片 **/
public static Image stretch(Image img, double rate) {
if (img == null || rate = 0)
return null;
int w = img.getWidth(null);
int h = img.getHeight(null);
int width = (int) (w * rate);
int height = (int) (h * rate);
BufferedImage rImg = getSpaceImage(width, height, null);
rImg.getGraphics()
.drawImage(img, 0, 0, width, height, 0, 0, w, h, null);
return rImg;
}
/**
* 绘制旋转的图片br /
* x,y 绘制起始坐标br /
* rx,ry 旋转中心br /
* ratio 旋转角度(0~360)
*/
public static final void revolve(Graphics g, Image img, int x, int y,
int rx, int ry, int ratio) {
Graphics2D g2d = (Graphics2D) g.create();
g2d.translate(x + rx, y + ry);
g2d.rotate(Math.toRadians(ratio));
g2d.drawImage(img, -rx, -ry, null);
}
/** 忽略图片中的颜色,让该颜色呈现透明 **/
public static final void ignore(BufferedImage img, Color c) {
if (c == null)
return;
for (int y = 0; y img.getHeight(); y++) {
for (int x = 0; x img.getWidth(); x++) {
if (img.getRGB(x, y) == c.getRGB()) {
Color cc = new Color(img.getRGB(x, y));
img.setRGB(x, y,
new Color(cc.getRed(), cc.getGreen(), cc.getBlue(),
0).getRGB());
}
}
}
}
/** 设置图片部分区域透明度(0~255) **/
public static final void alphaImage(BufferedImage img, int left, int top,
int right, int bottom, int alp) {
alp = alp 0 ? 0 : alp 255 ? 255 : alp;
for (int ti = left; ti right; ti++) {
for (int tj = top; tj bottom; tj++) {
Color c = new Color(img.getRGB(ti, tj));
img.setRGB(ti, tj,
new Color(c.getRed(), c.getGreen(),
您可能关注的文档
- 【精选】Huawei AR150&200系列企业路由器产品 详版彩页.pdf
- 【精选】HTQ2008-2009学年湖北省武汉市江岸区七年级(上)期末数学试卷.pdf
- 【精选】HUGIN软件培训教程介绍-2012.pdf
- 【精选】Human Resource Management.ppt
- 【精选】HyperMesh一些常见问题的解答.pdf
- 【精选】html5培训入门教程视频.pdf
- 【精选】HY5900消防电源监控壁挂使用说明书.pdf
- 【精选】hypermesh网格划分总结.pdf
- 【精选】HXHD-RV800系列无线监控系统应用方案.pdf
- 【精选】HY_2卫星微波散射计海面风矢量场反演技术研究.pdf
- 2026年智能农业机器人技术专利趋势.docx
- 智慧教育云平台在促进教育公平中的创新模式与路径研究教学研究课题报告.docx
- 2026年智能医疗影像诊断技术发展趋势与行业标准.docx
- 2026年智能农业机器人采摘技术难点突破.docx
- 破解教学管理难题:数字化手段在中小学校园中的应用实践教学研究课题报告.docx
- 2026年智能农业机器人市场投资分析.docx
- 2026年智能农业机器人采摘技术发展与应用报告.docx
- 2026年智能农业机器人企业并购趋势分析.docx
- 高中生利用酶联免疫吸附法测定不同产地茶叶茶多糖含量的课题报告教学研究课题报告.docx
- 2026年及未来5年市场数据中国五谷杂粮产业竞争现状调研及十五五投资定位分析报告.docx
最近下载
- 15万ta电池级硫酸锰新能源材料项目一期竣工环境保护验收监测报告书.pdf VIP
- 西工大航空发动机燃烧学讲义.pdf VIP
- 2025年工业机器人伺服电机性能优化研究报告.docx VIP
- 《深度学习 》课件 第9章-深度强化学习.pptx
- 有机高分子电致发光材料及器件课件.ppt VIP
- 贵州红星发展股份有限公司 高纯钡盐产业化项目 环境影响报告书.doc VIP
- (网络收集版)2025年新课标全国一卷数学高考真题文档版(无答案).pdf
- 2025年工业机器人伺服电机国内外市场对比研究报告.docx VIP
- 2025年无人机驾驶员执照飞行记录在物流运输专题试卷及解析.pdf VIP
- 河南卫生事业单位招聘考试题.pdf VIP
原创力文档

文档评论(0)