- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
这是一个简单的问题,但我似乎无法在文档中的任何地方找到答案。我知道 FreeImage 支持 1、4、8、16、24 和 32+ 位
图像。但除此之外,文档还提到 16 位
图像可以是 555
或 565
格式。我想知道其他图像位深度存储为什么格式?或者如果格式是任意的,有没有办法从 FreeImage 库中动态检索格式?
最佳答案
在 FreeImage 中确定 555 与 565 模式非常容易:
unsigned red_mask, green_mask, blue_mask;
red_mask = FreeImage_GetRedMask(dib);
green_mask = FreeImage_GetGreenMask(dib);
blue_mask = FreeImage_GetBlueMask(dib);
if (FreeImage_GetBPP(dib) == 16)
{
if ((red_mask == FI16_565_RED_MASK) &&
(green_mask == FI16_565_GREEN_MASK) &&
(blue_mask == FI16_565_BLUE_MASK))
{
// We are in RGB16 565 mode
}
else
{
// We are in RGB16 555 mode
}
}
而且您始终可以使用 FreeImage_ConvertTo16Bits555()
和 FreeImage_ConvertTo16Bits565()
函数来转换为您想要的格式。
关于c++ - 获取 FreeImage 像素数据格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15288798/
我在 Mac OS X 10.6 上从 /lib/FreeImage 的源代码编译了 FreeImage 3.10.0。 我可以看到编译后这些文件被复制了: /usr/local/lib/libfre
我正在尝试从使用 Gstreamer 创建的流中提取帧,并尝试使用 FreeImage 或 QImage 保存它们(这个用于测试)。 GstMapInfo bufferInfo; Gs
我正在编写一个小应用程序来读取图像中每个像素的颜色并将其写入文件。首先我是用 Python 做的,但它在大图像上太慢了。然后我发现了 FreeImage 库,我可以使用它,但我不明白如何使用 GetP
我有以下代码来加载纹理。 PackageTexture AssetImporter::ProcessTexture(const boost::filesystem::path& assetPath,
任何人都可以告诉我在哪里可以找到 freeImage.so 吗?我一直在努力寻找相同的东西但没有成功..任何帮助将不胜感激。我已经尝试将 freeimage.a 转换为 freeImage .so 并
我使用的是 Kubuntu 14.04,并安装了 FreeImage 库 sudo apt-get install libfreeimage-dev 据我所知,它已正确安装,/usr/include
我正在尝试遵循 OpenGL 教程,但该教程使用 SOIL(对我不起作用),而我使用的是 FreeImage。 你能告诉我为什么我的代码不起作用吗? 教程代码: // Load texture GLu
如何使用 FreeImage ( http://freeimage.sourceforge.net/ ) 将一些文本添加到图像中? 我搜索了文档,但没有找到有关如何执行此操作的信息 最佳答案 使用 F
我正在为我的 android 项目使用 freeimage.so,我如何访问像素数据,即从 SD 卡拍摄的图片的 RGB 分量,我已经在这个主题上搜索了很长时间..任何帮助都会受到高度赞赏。提前致谢
如标题所述,我正在使用 FreeImage 在我的 OpenGL 游戏中加载纹理,但如何获取子图像? 我现在的代码是这样的: FREE_IMAGE_FORMAT fif = FIF_UNKNO
这是一个简单的问题,但我似乎无法在文档中的任何地方找到答案。我知道 FreeImage 支持 1、4、8、16、24 和 32+ 位 图像。但除此之外,文档还提到 16 位 图像可以是 555 或 5
请帮助我在使用 FreeImage 加载位图后清理我的堆。不知何故删除[]数据;导致 _ASSERTE(_CrtIsValidHeapPointer(pUserData)) 断言,除了评论这一行之外,
我使用 FreeImage 打开一个多页 TIFF 文件并锁定特定页面。之后,我使用以下代码更改页面的图像分辨率: FreeImage.SetResolutionX(page, (uint)outpu
我在网上搜索了如何执行此操作,但找不到任何关于如何禁用 FreeImage 中的某些插件的信息。阅读 Changelog我看到这是可能的,但我找不到任何文档。例如,我不需要 EXR(它需要 OpenE
这适用于使用 FreeImage Library(一个用于管理图像的开源 C 库)的人: http://freeimage.sourceforge.net/ 这个问题已经在不同的论坛多次提交,但我找不
我是 python 新手,建议我使用 Canopy。我正在努力跟进 with this tutorial ,但我陷入了 mahotas.imread 行。我收到一个错误,说以这个结尾: Full er
我已经关注了这方面的帖子,但我仍然没有采取一些步骤。我是 C# 的新手,这可能就是问题所在。我希望得到一点帮助(我整天都在努力解决这个问题)。 我可以在 Visual Studio 中打开 FreeI
我已经从源代码编译并安装了 FreeImage。 当我运行 sudo make install 在我的系统上安装以下文件时 /usr/local/include/FreeImage.h /usr/lo
以下代码 fragment 导致错误....已附加 logcat...我试图将图像路径从 java 代码传递到 NDK 代码,然后我尝试使用 FreeImage 库打开位图.... JNIEXPORT
我正在尝试加载图像,因为我必须对其应用算法。如果我加载一个每 channel 8 位的图像,则没有问题,但如果我加载一个 16bpc 的图像,它就会“毁掉”。不幸的是,由于我没有足够的声誉,我无法上传
我是一名优秀的程序员,十分优秀!