日期:2014-05-20  浏览次数:20657 次

读取png图片 图片色彩大量丢失
try   {
            BufferedImage   image   =   ImageIO.read(new   FileInputStream( "c:\\p2.png "));
     
      Graphics2D   g   =   image.createGraphics();
      g.setColor(Color.BLACK);  
      g.setFont(new   Font( "宋体 ",   Font.LAYOUT_LEFT_TO_RIGHT,   15));
      g.drawString( "1111111111111111111111? ",43,   image.getHeight()   -   10);
      g.dispose();
      FileOutputStream   out   =   new   FileOutputStream( "c:\\2.jpg ");
      JPEGImageEncoder   encoder   =   JPEGCodec.createJPEGEncoder(out);
     
      JPEGEncodeParam   param   =   encoder.getDefaultJPEGEncodeParam(image);  

      encoder.encode(image,param);
      out.close();
      }   catch(Exception   e)   {
        e.printStackTrace();
      }

------解决方案--------------------
这是圖形格式自己的算法問題,要想解決的話,你得了解其不同的算法。
------解决方案--------------------
貌似是变了,不过不知道原因
------解决方案--------------------
http://security.javaeye.com/blog/28502
------解决方案--------------------
你为什么要使用JPG啊,继续使用PNG不行吗?
ImageIO.write(image, "PNG ", out);这样就行了吧