c++ - 无法在 SDL2 中加载 png 图像
问题描述
我正在尝试加载 PNG 图像,但它总是以错误结尾。我第一次尝试使用 SDL SDL_LoadBMP
,但由于那不起作用,我下载SDL2_image.h
了,完成了所有设置,但它仍然无法正常工作。该图像与 cpp 文件位于同一目录中。当我运行我的程序时,它会运行,但会打印错误。这是加载图像的函数:
void loadImage()
{
image = IMG_Load("Untitled.png");
if (image == NULL)
std::cout << "error: " << SDL_GetError();
}
来自的错误消息SDL_GetError
是Failed loading libpng16-16.dll: The specified module could not be found.
我尝试传递完整路径,但它给出了一个错误,我不知道如何解决这个问题,因为我是初学者。谢谢。
编辑:阅读标记重复问题的答案中链接的文章并进行一些更改(特别是安装丢失的 dll 文件并将其放在与主 cpp 文件相同的目录中)后,我收到此错误消息pop-up window: The procedure entry point inflateValidate could not be located in the dynamic link library
,然后libpng16-16.dll
给出路径。
解决方案
推荐阅读
- sed - 如何使用 sed 解析带有制表符缩进选项的配置文件?
- arrays - 输出数组的最后一个数字 - C 中的动态内存分配
- java - 无法在字节好友拦截器中获取方法
- python - 为什么 sqlalchemy 结果 dict 忽略 text() 列?
- mule - 在 mule 4 中将带有 CDATA 的 SOAP 响应转换为 JSON
- ios - 抛出函数的无效转换。使用解码器类时
- php - 我应该增加 PHP memory_limit 以匹配我的 VM memory_limit 吗?
- time-series - 过滤嘈杂的一维时间序列
- json - 如何在 json 中添加行返回?
- visual-studio - 无法在 Azure DevOps 上运行单元测试