Python实现普通图片转ico图标的方法详解
作者:玩转测试开发 发布时间:2023-08-13 07:09:36
标签:Python,图片,ico,图标
简介
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 格式图标。
来源:https://mp.weixin.qq.com/s/Qo7n4zGGkcOGhxxW6fStiA
0
投稿
猜你喜欢
- 最近在做一个魔术网的div+css切割,昨晚发现了长期以来一直无记录下来的问题!关于兼容IE跟FF的float属性。趁现在还清醒赶紧记下笔记
- 看过数据库的备份与还原。大多数都是用组件来完成的。其实可通过sql语句来完成。 由于时间关系,未对参数进行验证和界面美化。代码
- 导读需要使用python做一个将很多个不规则PPT导出成用文件夹归纳好的图片集,所以就需要使用comtypes调用本机电脑上的ppt软件,批
- 在程序实际应用中,少不了要进行字符串拼接的操作。下面介绍一下Python语言中四种字符串拼接的方式。1. 算术运算符拼接在Python中算术
- 用户体验已经是一个老生常谈的话题了。我非常赞同某位达人所说的,用户体验设计应该贯穿于产品从萌芽到出生的整个过程,产品原型、视觉设计、前端开发
- networkx是Python的一个包,用于构建和操作复杂的图结构,提供分析图的算法。图是由顶点、边和可选的属性构成的数据结构,顶点表示数据
- 原文地址:30 Days of Mootools 1.2 Tutorials - Day 19 - TooltipsMootools 1.2
- 基本上快被这个问题搞疯了,症状如下症状描述:在ie下(6或7,8没有试过)当出现中英文混排,都采用默认字体时,并使用 li 列表做float
- 无限分类是实际开发中经常用到的一种数据结构,一般我们称之为树形结构。题设:类似淘宝的商品分类,可以在任意分类设置其子类。 一、创建
- 使用torchvision库的datasets类加载常用的数据集或自定义数据集图像识别是计算机视觉中的一个基础任务,它的目标是让计算机能够识
- 前言今天制作的这一款能在B站能指定直播间、自动发弹幕的功能的脚本,因为没做那么多的功能,所以代码很简单,适合刚入门的同学学习先打开一个直播间
- Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。Python由Guido van Rossum于 * 底发明,第一个
- 前言Beautiful Soup是python的一个HTML或XML的解析库,我们可以用它来方便的从网页中提取数据,它拥有强大的API和多样
- 本文实例讲述了Python实现获取邮箱内容并解析的方法。分享给大家供大家参考,具体如下:# -*- coding: utf-8 -*-fro
- Python简介及入门python为什么是python选择自己喜欢的语言,这往往不容易,更多的是根据需求话说,之前是java,大学用了三年+
- 本文实例讲述了Django框架会话技术。分享给大家供大家参考,具体如下:会话技术1、Cookie客户端会话技术(数据存储在客户端)以key-
- PHP程序员玩转Linux系列文章:1.PHP程序员玩转Linux系列-怎么安装使用CentOS2.PHP程序员玩转Linux系列-lnmp
- 傅里叶变换是在高数是一个很重要的知识点,今天将结合Python代码实现傅立叶变换。傅立叶变换我们平时是如何去分解一个复杂的问题呢?一个经典的
- pytorch默认使用单精度float32训练模型,原因在于:使用float16训练模型,模型效果会有损失,而使用double(float6
- 1.画最简单的直线图代码如下:import numpy as np import matplotlib.pyplot as plt x=[0