永发信息网

请问JAVA如何取出一副图每个像素的颜色,在改变颜色,最后写入到图片?

答案:2  悬赏:60  手机版
解决时间 2021-03-07 10:57
请问JAVA如何取出一副图每个像素的颜色,然后在去改变颜色,然后再写入到图片?我是菜中菜鸟。。。请指教!!!!
最佳答案
//读取颜色..以前写的 写入自己搞定

import java.awt.event.*;
import javax.swing.*;
import java.awt.*;

public class BackroundImage extends JFrame
{
private static final long serialVersionUID = 1L;
JScrollPane scrollPane;
ImageIcon icon;
Image image;
Robot rb = null;

public BackroundImage()
{
//ken.jpg要位于此java文件项目目录下,我的ide :eclipse
icon = new ImageIcon("ken.jpg");

JPanel panel = new JPanel()
{

private static final long serialVersionUID = 1L;

protected void paintComponent(Graphics g)
{
g.drawImage(icon.getImage(), 0, 0, null);
super.paintComponent(g);
}
};
panel.setOpaque( false );
panel.setPreferredSize( new Dimension(800, 600) );
panel.addMouseListener(new MouseAdapter(){
public void mouseClicked(MouseEvent e) {
int x = e.getX();
int y = e.getY();
//转化成#ffffff格式
Color c = rb.getPixelColor(x, y);
String r = Integer.toHexString(c.getRed());
String g = Integer.toHexString(c.getGreen());
String b = Integer.toHexString(c.getBlue());
if(r.length() == 1) r += "0";
if(g.length() == 1) g += "0";
if(b.length() == 1) b += "0";
//color就是获得点颜色的字符串表示
String color = "#" + r + g +b;
System.out.println(color);
}

});
scrollPane = new JScrollPane( panel );
getContentPane().add( scrollPane );
init();
}
public void init() {
try {
rb = new Robot();
} catch (AWTException e) {
e.printStackTrace();
}
}

public static void main(String [] args)
{
BackroundImage frame = new BackroundImage();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(800, 600);
frame.setLocationRelativeTo( null );
frame.setVisible(true);
}

}
全部回答
private void pixelgrabber(int buffer[]) { try { mediatracker tracker = new mediatracker(this); tracker.addimage(img, 0); tracker.waitforall(); pixelgrabber grabber = new pixelgrabber(img, 0, 0, imgwidth, imgheight, buffer, 0, imgwidth); try { grabber.grabpixels(); } catch (interruptedexception e) { e.printstacktrace(); } } catch (exception e) { e.printstacktrace(); } }
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
张师傅和李师傅两个人做的零件个数比5∶4,张
什么牌子的手表性能比较好,又耐用,价格又实惠
手搓是什么意思?
贺州宏盛机电经营部在什么地方啊,我要过去处
跪求黄金斧子!!!!
募集机构应当确保单只私募基金的投资者人数累
土山开坟挖出青石好不好
冠军宝贝母婴生活馆西平大道店地址在什么地方
乘法计算题计算:3×5×17×257×……×[2^(2
我高中毕业,现在工作太悠闲,整日没事干,想
武汉在哪里?
吉祥旅行社有限公司地址在哪,我要去那里办事
将双螺旋结构的DNA分子彻底水解,得到的产物
有一个账本,上面记载着库存数,进货数,和销
杭州东到西湖怎么坐车
推荐资讯
上蔡县电视台广告文艺部在哪里啊,我有事要去
用拔伸足蹬法整复肩关节脱位的医家是()A.朱
首座御园2号车库入口在哪里啊,我有事要去这
我杀了人,躲到哪里警察才找不到我
每个季节都有哪些应季水果
小米授权服务中心(九江恒利店)地址在什么地方
马苏林志颖城市猎人片尾曲
非煤矿山矿长资格证和矿长安全资格证书有什么
自行车轮胎与车把连接处的圆圈是什么
求视频:广场舞我真的好想你分解动作
【合二为一阅读答案】语文配套《摆渡》阅读答
后羿的3技能惩戒射击最多造成多少秒的眩晕
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?