用 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]。
我有一个非常具体的问题:我想在灰度图像中绘制一个数字矩阵。数字越大,输出越亮。有没有办法在 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]。