在本篇博客中,我们将探讨如何使用 wxPython 和 Pillow 库创建一个简单的图标生成器。用户可以通过该工具选择目标文件夹,并生成三种不同尺寸(16x16、48x48、128x128)的PNG格式图标文件。图标将采用“截图框”的主题,通过图形化方式展示如何快速生成自定义图标。
C:\pythoncode\new\createicon3size.py
全部代码
import wx
from PIL import Image, ImageDraw
import os
class IconGenerator(wx.Frame):
def __init__(self, parent, title):
super().__init__(parent, title=title, size=(600, 400))
# 创建面板
panel = wx.Panel(self)
# 创建控件
self.folder_picker = wx.DirPickerCtrl(panel, path="", size=(500, -1), pos=(50, 50))
self.generate_button = wx.Button(panel, label="生成图标", pos=(50, 150))
# 绑定事件
self.generate_button.Bind(wx.EVT_BUTTON, self.on_generate)
self.Show()
def on_generate(self, event):
# 获取目标文件夹路径
target_folder = self.folder_picker.GetPath()
if not target_folder:
wx.MessageBox("请选择目标文件夹", "错误", wx.ICON_ERROR)
return
# 生成图标并保存为 PNG 文件
self.generate_icons(target_folder)
def generate_icons(self, target_folder):
sizes = [16, 48, 128]
for size in sizes:
file_path = os.path.