我正在开发一个用于 Android 的工具,该工具将 png 作为输入,将其重新缩放为多个密度并将它们保存在一个目录中。(可以在这里找到的项目:https ://code.google.com/p/9patch-resizer/
为了打开图像,我使用 ImageIO 的函数 readImage ( http://docs.oracle.com/javase/6/docs/api/javax/imageio/ImageIO.html#read(java.io.File) )
但是我在处理一些 PNG-8 文件时遇到了一些问题,由于ImageOptim ,我将其缩小到最小尺寸
问题是,如果我用 ImageIO 打开这个图像,它会丢弃透明度信息,这很烦人。(意思是,当我重新缩放它并稍后保存时,透明度被丢弃)
这是我正在谈论的图像:以及重新缩放的输出:
如果我使用 Toolkit 的 createImage 方法(http://docs.oracle.com/javase/6/docs/api/java/awt/Toolkit.html#createImage(java.lang.String))而不是 ImageIO 的方法来获取图像,它工作正常,但我没有得到颜色模型等信息......