gpt4 book ai didi

java - 帮助将插件添加到 Java ImageWriter

转载 作者:搜寻专家 更新时间:2023-11-01 03:44:12 27 4
gpt4 key购买 nike

我正在尝试将 BufferedImage 保存为 PNM 文件。我已经安装了 JAI (Java Advanced Imaging),并导入了 PNMWriter 插件。但是,我不知道如何将它添加到我的 ImageWriter 中以便它可以写入 .pnm。当我运行 ImageIO.getWriterFormatNames() 以获取可能的格式名称时,只有标准格式名称(.png、.bmp、.jpg ....)出现...做什么

最佳答案

我自己为我的软件实现了这个。它只有 30 行源代码,我不想为可以如此轻松解决的问题添加 Java Advanced Imaging。这是我的解决方案:

        public static void write(BufferedImage image, OutputStream stream) throws IOException
{
/*
* Write file header.
*/
int imageWidth = image.getWidth();
int imageHeight = image.getHeight();
stream.write('P');
stream.write('6');
stream.write('\n');
stream.write(Integer.toString(imageWidth).getBytes());
stream.write(' ');
stream.write(Integer.toString(imageHeight).getBytes());
stream.write('\n');
stream.write(Integer.toString(255).getBytes());
stream.write('\n');

/*
* Write each row of pixels.
*/
for (int y = 0; y < imageHeight; y++)
{
for (int x = 0; x < imageWidth; x++)
{
int pixel = image.getRGB(x, y);
int b = (pixel & 0xff);
int g = ((pixel >> 8) & 0xff);
int r = ((pixel >> 16) & 0xff);
stream.write(r);
stream.write(g);
stream.write(b);
}
}
stream.flush();
}

关于java - 帮助将插件添加到 Java ImageWriter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6548568/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com