问题标签 [sdl-image]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
603 浏览

android - SDL2 IMG_LoadTexture 无法从资产中找到纹理 - Android

我试图了解为什么为 Android 编译的 SDL2 无法使用以下代码找到 JPG(或 bmp,或 png)纹理文件:

我在项目的 assets 文件夹中添加了 background.jpg 文件,它被添加到了 APK 文件中,所以我不知道发生了什么,如果你知道我遗漏了什么......

0 投票
1 回答
744 浏览

c++ - SDL从原始图像数据字符串中绘制PNG图像

我已经在我的 SDL2 项目中为 C++ 中的 Windows 32 位设置了一个 PNG 资源文件。

result变量包含 PNG 图像的所有字符(如果已转换为字符串)。

如何将此图像字符串与SDL Image一起使用并将其显示在窗口上?

0 投票
0 回答
1487 浏览

c++ - SDL2和SDL_image,编译时重定义和冲突声明

我正在尝试使用该SDL_image库,以便可以.png在使用库制作的窗口中显示文件SDL2。我的问题是,当我编译代码时,我会收到很多关于减速和 SDL 头文件中的内容的错误。我在 Ubuntu LTS 16.04 上使用 Eclipse

我不完全确定问题是什么以及如何解决这个问题,所以一步一步了解什么,为什么以及如何让我完全理解它会很棒

问题的答案在这篇文章的评论中。

这是我的错误

`

这是我的代码

0 投票
0 回答
1348 浏览

c - IMG_Load: 无法打开 xxx.png

背景:我目前正在尝试使用 SDL 2.0.7 和 SDL2_image-2.0.2 练习我的 C 技能。

问题:在执行我的程序“IMG_Load:无法打开 xxx.png”期间,我收到一条错误消息。该错误似乎很愚蠢,因为它非常明确:“我找不到图像”,但是由于图像位于适当的文件夹中……我想我需要用新的眼光来发现这个愚蠢的错误。

平台: Windows 10

IDE: Visual Studio 2017

解决问题的步骤:

1)试图将我的代码长度/功能减少到最低限度。结果:错误仍然存​​在。

2)我创建了一个新项目并复制/粘贴了简化代码。结果:在新项目上,没有错误,一切正常。

3)我比较了项目的选项和文件夹。对我来说,它们是一样的:

两个项目中的选项

两个项目中的调试文件夹

它不应该有用,但以防万一,这是我的:

代码示例:

我可能会将我的所有文件从项目 1 复制/粘贴到项目 2 中,但我想了解我的错误!

0 投票
2 回答
209 浏览

ios - SDL 在 iOS 上保存屏幕截图

我正在尝试将 SDL 的“窗口”中的屏幕或框架保存到 PNG 文件中,因此我正在使用SDL_image library。我的代码如下

但是image.png没有保存。如果有人可以领导或帮助我。谢谢!

附加代码,保存的图像只是黑色

0 投票
0 回答
446 浏览

visual-studio - Visual Studio - SDL2 - 在 libpng 16 中找不到入口点

当我在 Visual Studio 中使用 SDL2 时,我一想加载 png 就发现了一个错误。

错误说:在“C:...\bin\Debug\x64\libpng16-16.dll”中找不到入口点“inflateValidate”

我的编译器也输出这个:

在 SDL_Project.exe 中的 0x00007FFAC2072B10 (ntdll.dll) 处引发异常:0xC0000139:未找到入口点。'SDL_Project.exe' (Win32): 卸载'C:\Users\Robin Sucur\source\repos\SDL-Project-master1\bin\Debug\x64\zlib1.dll' 'SDL_Project.exe' (Win32): 卸载' C:\Users\Robin Sucur\source\repos\SDL-Project-master1\bin\Debug\x64\libpng16-16.dll'

有人知道解决方案吗?我已经搜索过,但什么也没找到...

0 投票
1 回答
850 浏览

c++ - 无法在 macOS 上的 SDL 游戏中加载图像

我正在观看在 SDL 游戏中添加图像的教程,但作者使用的是 Visual Studio。我在 XCode 上,但不确定在哪里添加资产文件夹。我尝试右键单击应用程序的根目录>>文件夹Add files to "Project"的目标,assets但图像未显示在窗口中。

主文件

这是我在函数末尾添加图像的初始化方法:

游戏.cpp

这是渲染方法:

游戏.cpp

0 投票
1 回答
567 浏览

c++ - SDL2 加载带有特殊字符的文件

我遇到了一个问题,那就是:在使用 SDL2 和 SDL2_Image 的 Windows 应用程序中,它会打开图像文件,以便稍后通过对图像数据的修改来保存它们。当它打开没有特殊字符的图像时(例如áéíóúñ,例如"buenos aires.jpg"),它会按预期工作。但是,如果有提到的任何特殊字符(例如,“córdoba.jpg”),SDL_Image 会生成错误消息“无法打开文件”。无论如何,如果我使用从 CSV 文件中获得的确切文件名的 std::ifstream 通量(冗余,如“córdoba.jpg”或“ misiónes.jpg"), ifstream 运行良好... 使用特殊字符会不会出错?UNICODE,UTF,有事吗?

关于环境的一些信息:Windows 10(西班牙语、拉丁美洲)、SDL2 和 SDL2_Image(最新版本)、使用 Mingw64 7.1.0 的 GCC 编译器

关于我正在尝试制作的软件:它使用 CSV 表单,带有阿根廷各个州的名称,已经尝试更改 .CSV 上的编码。它根据在 CSV 上找到的名称加载图像、更改它们并保存。
我知道也许我缺少一些基本的东西,但已经耗尽了我的资源。

0 投票
0 回答
1850 浏览

c++ - SDL2 图像 - IMG_Init() 返回 0,IMG_GetError() 为空

我正在尝试png使用 SDL2 加载图像。然而,即使文件存在并且渲染器被正确创建,IMG_LoadTexture也只会返回一个 nullptr,没有明显的原因。

我正在使用的函数IMG_LoadTexture如下所示,其中texturea 是SDL_Texture*

断言通过,所以找到了文件。filePath看起来像"assets/texture.png"。是预先设置好的,Game::renderer如下所示:

然而,尽管IMG_LoadTexture没有返回正确的SDL_Texture*,IMG_GetError()只是空的,意思是

调用后IMG_LoadTexture不输出任何内容。

看到我完全不知道为什么会发生这种情况,我希望有人可以在这里帮助我。

编辑:根据要求,这里是产生相同错误的程序的更完整、可编译的版本。

我在 Windows 10 Home 64 位上,使用 32 位版本的 MingW-w64 在 C++17 上编译。我的 SDL2 版本是 2.0.8,我的 SDL2_image 版本是 2.0.3。

这是我要加载的图像: 播放器

图像包含在assets原始目录和构建目录中的一个文件夹中。(我使用 CMake 在构建前删除构建目录中的文件夹并在构建后复制粘贴它)。

这是代码:

哪个输出:

0 投票
2 回答
5959 浏览

c++ - 使用 SDL2 和 SDL_image 加载 C++ 图像

我有一个关于使用 SDL_image 库在 SDL2 中加载图像的问题。

不幸的是,我在 SDL_image 文档中找不到有关 IMG_LoadTexture 的任何信息。那么使用 IMG_LoadTexture 直接将 PNG 图像加载为纹理和使用 IMG_Load 加载表面然后使用 SDL_CreateTextureFromSurface 将其转换为纹理之间有什么区别?使用其中一个有什么好处吗?