我正在寻找一种创建图像的简单方法,可以设置单个像素的颜色,然后将此图像保存为png。
我的目标特别是根据内容生成的世界绘制地图。我想要使用的算法要求我能够独立设置每个像素,希望每次设置像素时都不必复制整个图像。
使用Haskell以这种方式操作图像的最佳方式是什么(如#34;最惯用的")?它是正确的工具还是我应该使用C库呢?
注意:虽然我以某种方式阅读相关的问题,他们专注于更复杂的框架来创建整个游戏,这不是我的目标,我宁愿使用轻量级的东西
答案 0 :(得分:0)
经过几个小时后,我发现这种方式可以绘制图像并将其另存为PNG
import Codec.Picture
generateMap :: Image PixelRGB8
generateMap = generateImage f 512 512
where f x y = PixelRGB8 0 0 0
main = do putStrLn "Start"
let img = generateMap
savePngImage "ciao.png" (ImageRGB8 img)
putStrLn "Done"
在生成整个图像后不允许单独设置单个像素,但它足够接近我。希望它有所帮助!