语言:WPF C#
批量图标转换
本项目基于WPF + .NET Framework/.NET Windows开发一款桌面端批量图标转换工具,核心实现多张 PNG/JPG 图片一键批量生成多尺寸内嵌一体的标准 ICO 图标文件,适配 Windows 程序、软件快捷方式、网站图标、EXE 程序资源图标等场景。界面采用现代化轻量化 UI 设计,操作直观、支持异步后台转换不卡顿界面,自带重名自动处理、进度可视化、尺寸自定义等实用能力。
2026年8月14日更新:
添加 .icns (苹果APP 图标) 和 cur 转换(鼠标图标)
........................................
图标文件 C++:PublicIcon.dll (使用 PublicIcon.dll,0 1 2 3 ......)
下载:https://download.csdn.net/download/polloo2012/93270529
# PNG/JPG批量转ICO工具(WpfIcoConverter)项目功能说明 ## 一、项目概述 本项目基于 **WPF + .NET Framework/.NET Windows** 开发一款桌面端批量图标转换工具,核心实现多张PNG/JPG图片一键批量生成**多尺寸内嵌一体的标准ICO图标文件**,适配Windows程序、软件快捷方式、网站图标、EXE程序资源图标等场景。界面采用现代化轻量化UI设计,操作直观、支持异步后台转换不卡顿界面,自带重名自动处理、进度可视化、尺寸自定义等实用能力。 ### 技术栈 1. 前端界面:WPF XAML,自定义圆角渐变按钮、卡片布局、自定义进度条美化; 2. 图像处理:System.Drawing GDI+ 高质量双三次缩放,PNG无损嵌入ICO; 3. 异步处理:Task异步批量转换,Dispatcher跨线程安全更新UI; 4. 文件操作:自动创建输出目录、重名文件随机后缀防覆盖、资源自动释放防内存泄漏。 ## 二、核心功能模块说明 ### (一)图标尺寸自定义模块 1. **内置全规格图标尺寸** 预置Windows全场景常用图标分辨率:16×16 / 20×20 / 24×24 / 32×32 / 48×48 / 64×64 / 72×72 / 96×96 / 128×128 / 256×256 / 512×512 / 768×768。 2. **自由勾选组合** 用户可按需勾选任意尺寸,生成的ICO文件内部会包含所有勾选分辨率,系统会根据使用场景自动匹配对应大小图标(桌面大图/任务栏小图标/资源管理器缩略图)。 3. **快捷批量操作按钮** - 全选全部尺寸:一键勾选所有分辨率,生成超大兼容完整ICO; - 恢复标准默认:还原软件推荐常用尺寸(16/20/24/32/48/256),适配绝大多数Windows软件需求。 4. **转换锁定限制** 转换进行中禁止修改尺寸勾选,避免任务错乱。 5. **校验拦截** 未勾选任何尺寸时点击转换会弹出警告,阻止无效转换任务。 ### (二)批量文件导入转换模块 1. **多文件多选导入** 打开文件选择框支持多选,支持格式:`.png`、`.jpg`、`.jpeg` 透明/普通图片。 2. **后台异步批量处理** 转换逻辑放入Task后台线程运行,全程不冻结窗口、不阻塞界面操作;转换时锁定转换、尺寸操作按钮,防止重复触发任务。 3. **高质量图像缩放算法** 使用GDI+ 高画质双三次插值缩放,开启抗锯齿、高质量合成模式,缩放后图标边缘清晰,避免模糊锯齿;原图支持透明通道,缩放后透明信息保留。 4. **标准ICO文件生成逻辑** 遵循Windows ICO官方二进制规范: - 将每个尺寸图片单独编码为无损PNG流嵌入ICO; - 自动写入图标头部、尺寸索引、图像偏移信息; - 单个ICO文件集成多分辨率,原生兼容Windows所有场景。 5. **自动资源回收** 转换完成自动释放Bitmap、MemoryStream、FileStream等图像与文件资源,杜绝内存泄漏。 ### (三)文件输出与重名处理模块 1. **统一输出目录自动创建** 程序启动自动在程序根目录生成 `OutputICO` 文件夹,所有转换后的ICO统一存放;目录不存在则自动新建。 2. **重名自动防覆盖机制** 若输出目录已存在同名ICO文件,自动在文件名后追加 `_0000~9999` 四位随机数字后缀(如 `logo_1234.ico`),不会覆盖原有文件,避免数据丢失。 3. **一键打开输出文件夹** 独立按钮直接调用资源管理器打开ICO输出目录; 智能状态控制:输出文件夹无文件时按钮自动置灰禁用,生成文件后自动启用。 ### (四)可视化进度与状态反馈模块 1. **自定义美化进度条** 蓝紫渐变圆角进度条,支持百分比平滑填充,0值时自动隐藏进度填充块,无转换时界面整洁; 2. **实时进度数值展示** 进度条右侧实时显示 `当前处理文件数/总文件数`(例:3/15); 3. **底部状态文字提示** - 空闲状态:显示“就绪”; - 转换中:实时展示当前正在处理的图片文件名; - 转换失败:单独提示失败文件名称与错误原因; - 转换完成:汇总统计成功数量、失败数量; 4. **转换完成弹窗可选(代码预留)** 注释内置完成弹窗代码,可按需开启,展示转换汇总信息与输出路径。 ### (五)异常容错与提示模块 1. **转换中重复点击拦截** 正在转换时再次点击转换按钮,弹出提示“正在转换中,请等待完成”; 2. **文件读取异常捕获** 图片损坏、格式错误、文件占用、权限不足等异常单独捕获,标记为失败项并记录错误信息,不会中断整个批量转换流程; 3. **目录打开失败捕获** 打开输出文件夹权限不足、目录损坏时弹出错误提示框; 4. **参数合法性校验** 无勾选尺寸、未选择图片文件等场景主动弹窗警告,避免无效运行。 ## 三、界面UI设计特性 1. 现代化浅色简约风格,淡蓝底色+白色卡片分区,降低视觉疲劳; 2. 全局圆角设计:按钮、卡片、进度条统一圆角10~12px; 3. 渐变主按钮+浅灰蓝次要按钮区分功能层级,鼠标悬浮发光、点击下沉按压动效; 4. 窗口居中启动、仅支持最小化,禁止拉伸窗口大小,布局固定美观; 5. 窗口阴影悬浮效果,脱离系统原生简陋窗口样式; 6. 所有交互控件统一美化:复选框、文本、进度条统一样式规范。 ## 四、适用使用场景 1. Windows桌面软件、WPF/WinForm程序图标制作; 2. 网站favicon.ico 多尺寸图标批量生成; 3. 文件夹自定义图标、快捷方式图标批量处理; 4. 美工/开发批量导出成套软件图标素材; 5. 多图片素材一键批量打包为独立ICO文件。 ## 五、软件优势 1. 批量处理,一次性转换数十张图片,效率远高于在线单张转换工具; 2. 本地离线运行,无需上传图片至网络,保护图片隐私(透明Logo、商业素材); 3. 内置全规格尺寸,无需手动调整分辨率,一键生成兼容全Windows场景图标; 4. 高画质缩放,保留透明通道,输出标准原生ICO,无第三方库依赖; 5. 界面轻量化、无广告、无捆绑,操作逻辑简单,新手可快速上手; 6. 完善容错机制,转换失败不中断批量任务,自动规避文件覆盖风险。 ## 六、运行依赖说明 1. 依赖.NET Windows运行时(.NET Framework 4.8 / .NET 6/7/8 Windows); 2. 依赖GDI+图像处理库(Windows系统自带,无需额外安装组件); 3. 仅支持Windows操作系统,不兼容Linux/macOS。