C++ 位图资源 (RT_BITMAP) 和 PNG 图像格式
C++ Bitmap Resource (RT_BITMAP) and PNG Image Format
我正在开发的一个应用程序在 window 中向用户显示各种 PNG 图像,并且工作正常。我的问题更多是关于我的 PNG 如何存储在 PE 中。目前,PNG 作为资源存储在可执行文件中,在 RT_RCDATA
资源类型下,因为这是我发现的最多 appropriate/relevant 类型。
Question #1: Is there a more appropriate Resource Type for storing PNG's?
此外,我注意到有一种适合BMP(位图)的资源类型,名为RT_BITMAP
。
Question #2: Why is there a predefined resource type for Bitmaps, but not one for more widely used image formats, such as PNG/JPG?
答案 #1:不尽然。据我所知,没有专门处理 PNG 资源的函数,这意味着在将数据发送到 GDI+ 或其他图像加载库之前,您必须自己手动加载资源。文本是否显示为 RT_DATA 或 RT_IMG 或 RT_PNG 或 RT_JPG 或多或少是任意的,前提是不引入与预先存在的资源类型的冲突。
答案 #2:因为在创建资源类型时,尚未创建 PNG 和 JPG。 PNG 出现在 1996 年左右,JPG 出现在 1992 年左右。
我正在开发的一个应用程序在 window 中向用户显示各种 PNG 图像,并且工作正常。我的问题更多是关于我的 PNG 如何存储在 PE 中。目前,PNG 作为资源存储在可执行文件中,在 RT_RCDATA
资源类型下,因为这是我发现的最多 appropriate/relevant 类型。
Question #1: Is there a more appropriate Resource Type for storing PNG's?
此外,我注意到有一种适合BMP(位图)的资源类型,名为RT_BITMAP
。
Question #2: Why is there a predefined resource type for Bitmaps, but not one for more widely used image formats, such as PNG/JPG?
答案 #1:不尽然。据我所知,没有专门处理 PNG 资源的函数,这意味着在将数据发送到 GDI+ 或其他图像加载库之前,您必须自己手动加载资源。文本是否显示为 RT_DATA 或 RT_IMG 或 RT_PNG 或 RT_JPG 或多或少是任意的,前提是不引入与预先存在的资源类型的冲突。
答案 #2:因为在创建资源类型时,尚未创建 PNG 和 JPG。 PNG 出现在 1996 年左右,JPG 出现在 1992 年左右。