有一些不是一个愚蠢的问题..让我们说,我们有很多只有黑色png icons
(超过一百),但它们可能包含多个未连接的元素,如:
我想要实现的是制作一组颜色和automatically
颜色(填充黑色内容)所有这些图形,并保持其余参数不变(格式/分辨率)。是否应该应用任何库或方法来执行此任务?
由于
答案 0 :(得分:1)
这是一个可以做到的小程序:
public static void main(String[] args) {
final String directoryPath = "C:\\images";
final String outputPath = "C:\\images\\out";
final int color = 0x00ff0000;
File directory = new File(directoryPath);
File[] files = directory.listFiles();
if (files == null) {
return;
}
for (File file : files) {
String extension;
int extensionIndex = file.getName().lastIndexOf('.');
if (extensionIndex > 0) {
extension = file.getName().substring(extensionIndex + 1);
} else {
extension = "bmp";
}
BufferedImage image;
try {
image = convert(ImageIO.read(file), BufferedImage.TYPE_INT_ARGB);
for (int i = 0; i < image.getWidth(); i++) {
for (int j = 0; j < image.getHeight(); j++) {
image.setRGB(i, j, image.getRGB(i, j) | color);
}
}
File newFile = new File(outputPath + "\\" + file.getName());
ImageIO.write(image, extension, newFile);
} catch (IOException e) {
// Handle
}
}
}
我使用了这篇文章的转换方法:How to convert between color models