【发布时间】:2014-04-30 02:55:49
【问题描述】:
我正在尝试在 Windows 7 64 位上使用 C++ 和 Visual Studio Express 2013 将一些数据写入 PNG 文件。我知道要做到这一点,我需要使用外部库,但这是我遇到一些困难的地方。
我尝试使用 LodePNG - 它看起来简单、轻巧且易于使用。问题是,它太简单了,而且似乎需要某种与我所拥有的不匹配的像素格式的数据。我可以修改我的数据以使其与 LodePNG 兼容,但我更愿意使用 libpng 等具有更多灵活性的库。
但是,我不明白关于构建或链接库的第一件事,而 libpng 已被证明是这方面的绝对噩梦。我尝试关注this guide,并设法生成“libpng.lib”和“png.h”,但是当我尝试将它们包含在我的项目中时(我将两个文件都放在我的项目目录中,添加了“png.h”到我的头文件并将“libpng.lib”添加到链接器的“附加依赖项”字段中),我得到了大量的构建错误,特别是:
error C1083: Cannot open include file: 'pnglibconf.h': No such file or directory
任何人都可以指导我如何安装 libpng,指导我找到有关该主题的良好指南(我对那里缺乏指南感到惊讶......),或推荐不同的(轻量级,易于安装)PNG库?我要疯了。
【问题讨论】:
-
你真的真的不想直接使用 libpng。试试
FreeImage,它很容易使用。你可能想看看ImageMagick,也许它已经有你想做的功能了。 -
您可以从 libpng 源中的脚本目录中获取 pnglibconf.h。命名为 pnglibconf.h.prebuilt 那里。
-
谢谢,我会看看 FreeImage、ImageMagick 和 GDI+。 @Ivarpoiss我相信我试过了,它抱怨另一个文件(可能是pngconf.h)
-
Ivarpoiss:感谢您指出这一点!这是我的正确答案!