如果Delphi应用程序有许多TImage组件,我怎么能保持它的大小?

Sha*_*elt 3 delphi timage

我想用Delphi制作一个应用程序.问题是我将有很多TImage组件 - 这将使exe大小非常大.到目前为止,我的exe是20MB大,我只完成了主页,根据我的计算,exe单独的大小将超过10GB - 这太过分了.

如何制作具有数百/数千张图像的应用程序,同时让exe的尺寸变小?

Dav*_*nan 11

不要将图像放在可执行文件中.将它们保存在外部文件中并在运行时加载它们.

这将要求您TImage在设计时停止将图像加载到控件中,而是使用动态代码加载图像,然后传输到TImage控件.这样做有很多好处:

  1. 您可以将可执行文件保持在合理的大小,可以放入虚拟地址空间.
  2. 您可以为图像使用最合适的压缩格式.如果我没记错的话,Delphi TImage会以非常低效的方式持久存在.dfm文件中.您可以选择使用PNG或JPEG压缩.
  3. 保持文件外部允许您在开发时更好地管理它们.您可以将它们作为单独的文件保存在修订控制系统中.将图像存储在.dfm文件中可以在需要更改图像时进行艰苦的更新.您必须与IDE进行大量交互.存储为文件允许您覆盖文件,并提交到存储库.

  • 此外,如果多次使用相同的图像,则只需要该图像的一个副本,然后加载到需要的任何图像控件中. (2认同)