用 C++ 绘制一个数字矩阵作为图像

Draw a matrix of numbers as an image with C++

我有一个非常具体的问题:我想在灰度图像中绘制一个数字矩阵。数字越大,输出越亮。有没有办法在 C++ 程序中做到这一点,而不依赖于像 Qt 这样的图形库?

我查看了一些ImageMagick的例子,但我不确定如何在C++中实现它的功能。

回答 如果有人偶然发现这个问题: 所示示例的修改代码 here 是一个方便且简单的解决方案

没有图书馆很难。 SFML 看起来好用。

编辑

另外你的问题中还隐藏着另外3个问题:

1- 要保存图像,您可以使用 sf::image::saveToFile

2- 要获得更高数字的更亮数字:您需要将数字标准化为 [MinColorYouWant MaxColorYouWant](例如:[128,255])。这样每个数字对应的归一化值就会成为数字的颜色。

默认

3- SFML uses RGBA 张图片。只需将 RGB 通道设置为相等,使其看起来像灰度。

编辑 2:我已将示例规范化从 [128,256] 修复为 [128,255]。