RT,比如我已经我个保存了一副图像的Image对象了,我想在上面画一个字符串(drawString)使得图像上字符串经过的点的RGB值取反.(~)
这种功能用JAVA能做到吗?应该怎样做呢?
谢谢!

解决方案 »

  1.   

    还有,如果我的Image是一个调色板实现的(就是BufferedImage中采用IndexColorModel构造出来),能否让取反不是按象素的RGB值取反,而是按颜色的索引值取反.
    比如我用一个256色的IndexColorModel构造了一个BufferedImage:
    byte[] r=new byte[256], g =new byte[256], b=new byte[256];
    ....
    IndexColorModel colorModel =new IndexColorModel(8,256,r,g,b);
    BufferedImage buffer =new BufferedImage(200,80,BufferedImage.TYPE_BYTE_INDEXED,colorModel);
    ...
    然后我在buffer上画了一幅图,假设点(10,10)处的颜色RGB值是(100,200,150),在colorModel中的索引值是10,并且索引值为245(255-10)对应的RGB值是(200,200,200),我希望取反的方式是把点(10,10)处的颜色变为索引值245对应RGB值.
      

  2.   

    g.setXORMode(Color.green);??
    那么 g.setColor(color)中的这个color应该设为什么呢?
      

  3.   

    我上面两个问题不需要解答了,我现在有个新的问题,谁能给出答案我就发分了.同样是关于BufferedImage类的.
    假设我现在用一个IndexColorModel--colorModel1(我的理解,就是个调色板)构造了一个BufferedImage实例image1,并在上面画了一些图
    现在我有另一个IndexColorModel--colorModel2(与上面那个不同),我想想构造一个新的BufferedImage实例image2,使得它使用了新的IndexColorModel,并且:
        image1.getRGB(x,y)这个颜色对应的索引(在colorModel1中)

        image2.getRGB(x,y)这个颜色对应的索引(在colorModel2中)
    相同
      

  4.   

    我的意思是指:除了通过设置每个点的RGB外是否还有其它简单一点的方法