python - 填充图像以在 wxpython 中使用

标签 python icons wxpython python-imaging-library padding

我正在寻找最有效的方法来“方形”图像以用作图标。例如,我有一个尺寸为 24x20 的 .png 文件。我不想以任何方式更改图像的“图像”部分,我只想在图像的边缘添加透明像素,以便它变成 24x24。我的研究表明我需要创建一个 24x24 的透明 Canvas ,将我的图像粘贴到上面,然后保存结果。我在 wxpython 工作,想知道是否有人可以指导我完成整个过程。更好的是,我还安装了 PIL,想知道是否没有内置的方法来执行此操作。这似乎是一种相当有规律地执行的操作,但没有一种 imageops 方法非常符合要求。

最佳答案

使用image.paste将图像粘贴到透明背景上:

import Image
FNAME = '/tmp/test.png'
top = Image.open(FNAME).convert('RGBA')
new_w = new_h = max(top.size)
background = Image.new('RGBA', size = (new_w,new_h), color = (0, 0, 0, 0))
background.paste(top, (0, 0))
background.save('/tmp/result.png')

关于python - 填充图像以在 wxpython 中使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8561896/

相关文章:

python - "IsADirectoryError: [Errno 21] Is a directory: "是一个文件

python - wxpython listctrl 和修复列宽

python - 如何在自定义Python记录器中获取进程、线程名称、级别名称

python - Django Rest Framework中的OTP验证

python - rpy2:在放入 DataFrame 时防止 StrVector 分解

ios - 每天更换图标

css - Angular JS 中搜索文本中的 Material 图标

python - WxPython,将双击事件链接到特定列表框,而不是所有列表框

python - 如何将两个估计器对象传递给sklearn的GridSearchCV,以便它们在每个步骤中具有相同的参数?

c++ - fatal error CVT1100 : duplicate resource. 类型 :ICON, 名称 :1 (C++, Visual Studio C++ 2010)