我想绘制一个位图,手动指定每个点的颜色(换句话说,任务是将 RGB 值的 2D 数组保存到 PNG(或其他一些无损真彩色位图格式)文件)。
如果有一个功能可以在给定坐标的图像顶部打印一些文本(具有给定大小的给定字体)片段,这也很好。
如何实现?
最佳答案
您可以使用 Java 标准库 ImageIO
类(class)。它提供静态 write
例如,可以编码和写入 RenderedImage
的方法到PNG格式的输出流。对于RenderedImage
,您可以轻松使用BufferedImage
类(class)。它提供了 setRGB
直接操作单个像素颜色的方法。或者,您也可以调用BufferedImage.getGraphics()
,它返回 Graphics
的实例您可以在甚至整个 GUI 组件上绘制任何类型的形状或文本,就像使用任何 AWT 组件一样。
这是常规的 Java 内容。 Scala 没有为此提供任何特殊的包装器,我也怀疑这是否值得。
关于scala - 如何用 Scala 绘制位图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4739906/