我正在缩放图标(使用软件缩放器算法),并希望通过将新调整大小的图标保存到磁盘,同时保留透明度(Alpha通道)来缓存这些图标。
拨打" Bitmap.SaveToDisk(' filename.bmp')"然后是" Bitmap.LoadFromDisk(' filename.bmp')"剥去alpha通道。
拨打" Bitmap.SaveToDisk(' filename.png')"然后是" Bitmap.LoadFromDisk(' filename.png')"由于PNG格式需要编码/解码,因此维护alpha通道但CPU开销要高得多。
我知道我可以进入幕后,获取扫描线并简单地将扫描线数据转储到文件中,但我想知道是否有更简单的方法来降低CPU利用率?
编辑#1:
我仍然对一个答案很感兴趣,但同时我写了一个解决方案来保存/加载来自firemonkey TBitmap的原始ARGB数据:
https://github.com/bLightZP/Save-and-Load-FMX-ARGB-Bitmap