-1

我想将大量小位图放入一个 *.res 文件中。但我不想将它与编译器链接,而是让它停留在硬盘上。有可能我会创造更多。

有没有办法获取这个资源文件,读取它并加载具有确切名称的位图?就像是:

Bitmap.LoadFromResourceFile(AFileName: TFileName; const BMPName: string);

Bitmap.LoadFromResourceFile(GetCurrentDir + '\sprites.res', 'SMILE')

*.res 文件周围的所有内容都与已编译的文件有关,但我没有找到任何解决方案,我在上面描述过。

谢谢

4

1 回答 1

2

根据定义,资源被编译成可执行文件,无论是在主应用程序中还是在外部 DLL 中,但它仍然被编译。不编译就无法将编辑器中的位图保存到 .res 文件中,因为它是一个编译文件。如果您不希望将位图编译到应用程序中,您可以保存单个 .bmp 文件,然后通过 加载它们TBitmap.LoadFromFile(),或者将它们编译成资源 DLL 并使用LoadLibrary()and加载它们TBitmap.LoadFromResource...()

于 2013-08-19T00:31:52.947 回答