首页 > 解决方案 > 无法在 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_GetErrorFailed 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给出路径。

标签: c++dlllinkersdl-2sdl-image

解决方案


推荐阅读