使用 Java AWT 生成带有辅助块的单色 1bitpp PNG
Using Java AWT to generate monochrome 1bitpp PNG with Ancillary Chunks
我正在尝试使用以下辅助块生成 PNG(header 来自参考图像)
参考图像中的辅助块可能来自 GIMP 处理。
而我使用 Java AWT 生成的图像没有那些辅助块。
这是我生成的 PNG 的 header。请注意关键块是相同的。
这是代码片段
{
:
// The color map contains the colors black and white
byte[] cMap = {0, 0, 0, (byte)255, (byte)255, (byte)255};
// Create an IndexColorModel setting white as the transparent color
IndexColorModel monochrome = new IndexColorModel(8, 2, cMap, 0, false, 0);
BufferedImage img = new BufferedImage(width_img, height_img,
BufferedImage.TYPE_BYTE_INDEXED,monochrome);
Graphics2D g2d = img.createGraphics();
:
g2d.setColor(Color.WHITE);
g2d.fillRect(0, 0, width_img, height_img);
Font font = new Font("Arial Bold", Font.PLAIN, 48);
g2d.setFont(font);
FontMetrics fm = g2d.getFontMetrics();
g2d.setColor(Color.BLACK);
:
:
g2d.dispose();
imgName = ".\Panel"+width_img+"x"+height_img+".png";
ImageIO.write(img, "png", new File(imgName));
:
}
如何使用 Java AWT 添加块(pHYs、tIME)?
任何指示也会有帮助-请告诉我。
谢谢
我断定 AWT 不支持 - 这个问题确定了几种添加块的方法
How can I save a PNG with a tEXt or iTXt chunk from Java?
这是我的建议 -
使用 AWT/Graphics 2D 生成 .PNG
阅读 PNG,请参阅 link 以获取详细信息
添加您要添加的块
将它(它们)写回 .PNG
我正在尝试使用以下辅助块生成 PNG(header 来自参考图像)
参考图像中的辅助块可能来自 GIMP 处理。
而我使用 Java AWT 生成的图像没有那些辅助块。
这是我生成的 PNG 的 header。请注意关键块是相同的。
这是代码片段
{
:
// The color map contains the colors black and white
byte[] cMap = {0, 0, 0, (byte)255, (byte)255, (byte)255};
// Create an IndexColorModel setting white as the transparent color
IndexColorModel monochrome = new IndexColorModel(8, 2, cMap, 0, false, 0);
BufferedImage img = new BufferedImage(width_img, height_img,
BufferedImage.TYPE_BYTE_INDEXED,monochrome);
Graphics2D g2d = img.createGraphics();
:
g2d.setColor(Color.WHITE);
g2d.fillRect(0, 0, width_img, height_img);
Font font = new Font("Arial Bold", Font.PLAIN, 48);
g2d.setFont(font);
FontMetrics fm = g2d.getFontMetrics();
g2d.setColor(Color.BLACK);
:
:
g2d.dispose();
imgName = ".\Panel"+width_img+"x"+height_img+".png";
ImageIO.write(img, "png", new File(imgName));
:
}
如何使用 Java AWT 添加块(pHYs、tIME)?
任何指示也会有帮助-请告诉我。
谢谢
我断定 AWT 不支持 - 这个问题确定了几种添加块的方法 How can I save a PNG with a tEXt or iTXt chunk from Java?
这是我的建议 -
使用 AWT/Graphics 2D 生成 .PNG
阅读 PNG,请参阅 link 以获取详细信息
添加您要添加的块
将它(它们)写回 .PNG