概述 | Summary
如标题描述
当 "背景图片"设置为网络时 支持保存当前背景图片
("原因"和"详情"由AI生成)
原因 | Reason
目前,当用户将 HMCL 的背景图片设置为网络图片时,每次启动启动器都需要重新从网络下载该图片。这不仅会消耗网络流量,在网络状况不佳时还会导致启动器界面加载缓慢,甚至在离线环境下完全无法显示背景。如果能够支持将当前网络背景以本地文件方式保存,用户可以避免反复下载,显著提升启动器加载速度与稳定性,同时也能将喜欢的背景图片长期保留、方便复用。
详情 | Description
在“背景图片”设置界面中,当用户选择“网络图片”并成功显示后,可增加一个“保存当前背景”按钮或右键菜单选项。点击后,HMCL 将当前正在使用的背景图片保存到本地目录(例如 .hmcl/bg/),文件名可依据原图片 URL 特征或时间戳自动生成,也可允许用户自命名。保存成功后,可自动将背景来源切换为本地文件,或保留网络设置但额外存储一份本地副本。
⚠️ 社区贡献者在实现时需特别注意:
保存操作必须基于当前已加载并显示在界面上的图片数据,例如从内存中的图像对象或本地缓存文件中直接读取并另存为,严禁为保存而重新发起网络 API 请求去下载图片。原因是:
网络图片源可能在两次请求之间发生变化(如动态图片、每日一图等),重新下载可能得到完全不同的新图片,导致保存结果与用户当前看到的背景不一致,“保存当前背景”失去意义。
即使在 URL 不变的情况下,重复请求也会造成不必要的流量消耗,并可能在无网络环境下保存失败。
建议优先复用已有的图片加载缓存机制,直接从内存或磁盘缓存中导出图片数据;若缓存已被清除不得已需要重新获取,应明确提示用户“将重新下载图片,可能与当前背景不同”并获得确认。
概述 | Summary
如标题描述
当 "背景图片"设置为网络时 支持保存当前背景图片
("原因"和"详情"由AI生成)
原因 | Reason
目前,当用户将 HMCL 的背景图片设置为网络图片时,每次启动启动器都需要重新从网络下载该图片。这不仅会消耗网络流量,在网络状况不佳时还会导致启动器界面加载缓慢,甚至在离线环境下完全无法显示背景。如果能够支持将当前网络背景以本地文件方式保存,用户可以避免反复下载,显著提升启动器加载速度与稳定性,同时也能将喜欢的背景图片长期保留、方便复用。
详情 | Description
在“背景图片”设置界面中,当用户选择“网络图片”并成功显示后,可增加一个“保存当前背景”按钮或右键菜单选项。点击后,HMCL 将当前正在使用的背景图片保存到本地目录(例如
.hmcl/bg/),文件名可依据原图片 URL 特征或时间戳自动生成,也可允许用户自命名。保存成功后,可自动将背景来源切换为本地文件,或保留网络设置但额外存储一份本地副本。保存操作必须基于当前已加载并显示在界面上的图片数据,例如从内存中的图像对象或本地缓存文件中直接读取并另存为,严禁为保存而重新发起网络 API 请求去下载图片。原因是:
网络图片源可能在两次请求之间发生变化(如动态图片、每日一图等),重新下载可能得到完全不同的新图片,导致保存结果与用户当前看到的背景不一致,“保存当前背景”失去意义。
即使在 URL 不变的情况下,重复请求也会造成不必要的流量消耗,并可能在无网络环境下保存失败。
建议优先复用已有的图片加载缓存机制,直接从内存或磁盘缓存中导出图片数据;若缓存已被清除不得已需要重新获取,应明确提示用户“将重新下载图片,可能与当前背景不同”并获得确认。