Python实现普通图片转ico图标的方法详解

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

Python实现普通图片转ico图标的方法详解

玩转测试开发   2022-11-30 我要评论

简介

ICO是一种图标文件格式,图标文件可以存储单个图案、多尺寸、多色板的图标文件。一个图标实际上是多张不同格式的图片的集合体,并且还包含了一定的透明区域。它是图标文件格式的一种,可以存储单个图案、多尺寸、多色板的图标文件。图标是具有明确指代含义的计算机图形。其中桌面图标是软件标识,界面中的图标是功能标识。

历史攻略

pip安装第三方库全攻略:普通安装、安装whl后缀文件、使用国内镜像安装

下载安装包

确认你的python版本,如:python,显示为3.8.2则下载cp38相关的文件名称,如:PythonMagick‑0.9.19‑cp38‑cp38‑win_amd64.whl

下载地址

https://www.lfd.uci.edu/~gohlke/pythonlibs/#pythonmagick

安装后缀pythonmagick - whl文件

pip install PythonMagick-0.9.19-cp38-cp38-win_amd64.whl

案例源码

# -*- coding: utf-8 -*-
# time: 2022/11/22 18:08
# file: football-demo.py
# 公众号: 玩转测试开发
from PIL import Image
import PythonMagick


def gen_ico_pill(image_path, resize=50, suffix='.png'):
    save_path = image_path.replace(suffix, '_pil.ico')
    image = Image.open(image_path)
    image_resize = image.resize((resize, resize), Image.LANCZOS)
    image_resize.save(save_path)


def gen_ico_magick(image_path, resize=50, suffix='.png'):
    save_path = image_path.replace(suffix, '_magick.ico')
    image = PythonMagick.Image(image_path)
    image.sample(
        f'{resize}x{resize}')
    image.write(save_path)


if __name__ == '__main__':
    image_path = r'D:\codes\devopsPro\ai\football.png'
    gen_ico_pill(image_path, resize=50, suffix='.png')
    gen_ico_magick(image_path, resize=50, suffix='.png')

效果图

运行完成后的保存效果:左侧为ico,右侧为原图。

即:例如网站logo,图标等也会经常使用 ico 格式图片。通过python - PythonMagick和PIL则可以快速的生成原图的 ico 格式图标。

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们