49 lines
1.8 KiB
Python
49 lines
1.8 KiB
Python
from PIL import Image
|
|
import os
|
|
|
|
# 新的图片路径
|
|
new_image_path = r"e:\project\flutter\f3\flutter_application_2\assets\IMG_20260402_172628.png"
|
|
|
|
# 输出目录
|
|
app_scope_dir = r"e:\project\flutter\f3\flutter_application_2\ohos\AppScope\resources\base\media"
|
|
entry_media_dir = r"e:\project\flutter\f3\flutter_application_2\ohos\entry\src\main\resources\base\media"
|
|
|
|
try:
|
|
# 打开新图片
|
|
with Image.open(new_image_path) as img:
|
|
print(f"新图片尺寸: {img.size}")
|
|
|
|
# 调整为 288x288 用于 app_icon.png
|
|
img_288 = img.resize((288, 288), Image.Resampling.LANCZOS)
|
|
app_icon_path = os.path.join(app_scope_dir, "app_icon.png")
|
|
img_288.save(app_icon_path)
|
|
print(f"已保存 288x288 图标到: {app_icon_path}")
|
|
|
|
# 调整为 1024x1024 用于 entry 目录的图标
|
|
img_1024 = img.resize((1024, 1024), Image.Resampling.LANCZOS)
|
|
|
|
# 保存到 entry 目录
|
|
entry_icon_path = os.path.join(entry_media_dir, "icon.png")
|
|
img_1024.save(entry_icon_path)
|
|
print(f"已保存 1024x1024 图标到: {entry_icon_path}")
|
|
|
|
# 保存其他尺寸
|
|
sizes = [
|
|
(216, "icon_216.png"),
|
|
(48, "icon_48.png"),
|
|
(512, "icon_512.png"),
|
|
(72, "icon_72.png"),
|
|
(96, "icon_96.png"),
|
|
]
|
|
|
|
for size, filename in sizes:
|
|
resized_img = img.resize((size, size), Image.Resampling.LANCZOS)
|
|
output_path = os.path.join(entry_media_dir, filename)
|
|
resized_img.save(output_path)
|
|
print(f"已保存 {size}x{size} 图标到: {output_path}")
|
|
|
|
print("\n鸿蒙端所有图标更新完成!")
|
|
|
|
except Exception as e:
|
|
print(f"处理图片时出错: {e}")
|