使用 C 向 PNG 图像添加文本/注释

air*_*ruk 5 c png text annotations libpng

我用 C 语言编写了一个小工具,可以根据数据库中的数据生成图像。图像为 PNG 格式,现在我需要向图像添加一些文本。我找不到任何有关如何在 PNG 图像中创建文本的示例。我正在使用 libpng 库,并且想简单地添加几行来在调用 png_write_png 之前将文本添加到图像中。

谁能给我指一个简单的“Hello World”示例,其中这两个词在图像中可见。

这可以用 libpng 来完成还是我需要使用 MagickImage 或类似的来实现这一点?

预先感谢

leo*_*loy 3

你不能。libpng是一个用于将原始光栅图像编码(解码)为 PNG 格式文件的库。它与高级图像处理任务无关。例如,您不能指望低级编码/解码库 a 能够libpng旋转图像、检测边框等……更不用说将字符串转换为数字图像(像素),这是一项非常高级的任务这涉及到字体光栅化。此类任务是在原始图像领域(内存中)执行的,与您选择的存档格式无关。

为了实现您的目标,您应该尝试使用一些图像渲染/处理库或工具;这取决于您的平台:例如libgdImageMagick 是一个有效的替代方案。