PIL(pillow)简单使用:新建画布、添加文字、画矩形、裁剪、粘贴

简介: PIL(pillow)简单使用:新建画布、添加文字、画矩形、裁剪、粘贴

安装依赖

pip install pillow

1、新建一张300*300的白色画布

# -*- coding: utf-8 -*-
from PIL import Image
# 参数:模式、大小、颜色
image = Image.new(mode="RGB", size=(300, 300), color="white")
image.save("1.png")

image.png

2、画布上加一些文字

# -*- coding: utf-8 -*-
from PIL import Image, ImageDraw, ImageFont
# 参数:模式、大小、颜色
image = Image.new(mode="RGB", size=(300, 300), color="white")
# 添加文字
draw = ImageDraw.Draw(image)
font = ImageFont.truetype(font='PingFang.ttc', size=40)
# 参数:位置、文本、填充、字体
draw.text(xy=(100, 100), text='demo', fill=(255, 0, 0), font=font)
image.save("1.png")

image.png

3、裁剪上面的图片,把文字部分裁出来

# 裁剪 左上角和右下角坐标 (left, upper, right, lower)
sub_image = image.crop(box=(90, 100, 210, 160))

image.png

4、为了好看,我在文字边上画个框,将裁剪下来的文字张贴到图片另外的位置

# -*- coding: utf-8 -*-
from PIL import Image, ImageDraw, ImageFont
# 参数:模式、大小、颜色
image = Image.new(mode="RGB", size=(300, 300), color="white")
# 添加文字
draw = ImageDraw.Draw(image)
font = ImageFont.truetype(font='PingFang.ttc', size=40)
# 参数:位置、文本、填充、字体
draw.text(xy=(100, 100), text='demo', fill=(255, 0, 0), font=font)
# 画个边框为1的红色矩形框
draw.rectangle(xy=(90, 100, 210, 160), fill=None, outline="red", width=1)
# 裁剪 左上角和右下角坐标 (left, upper, right, lower)
sub_image = image.crop(box=(90, 100, 220, 170))
# 裁剪下来的子图粘贴到原图上
image.paste(im=sub_image, box=(90, 200))
image.save("1.png")

image.png

相关文章
|
3月前
|
计算机视觉 Python
Python实用记录(一):如何将不同类型视频按关键帧提取并保存图片,实现图片裁剪功能
这篇文章介绍了如何使用Python和OpenCV库从不同格式的视频文件中按关键帧提取图片,并展示了图片裁剪的方法。
117 0
|
2月前
|
编解码 数据可视化 数据挖掘
Pygal库创建可缩放的矢量图表
【10月更文挑战第18天】Pygal 是一个 Python 库,专门用于创建可缩放的矢量图表。它基于 SVG 格式,支持多种图表类型,如线图、柱状图、饼图等,并提供丰富的自定义选项和交互功能。安装简单,使用 pip 即可安装。Pygal 不仅支持基本图表的创建,还允许添加数据标签、图例、注释、动画效果和交互功能,适用于数据分析、数据可视化和网站开发等多种场景。
60 6
|
6月前
|
Python
如何用PYTHON代码编辑gif,正方形变圆形
需要注意的是,这个示例考虑到了GIF的循环播放和帧间持续时间,以确保输出的GIF在视觉上与原始GIF尽可能一致。然而,根据你的特定需求,你可能还需要做进一步的调整或优化。
65 5
文本,vitepress如何插入图片,做背景图片的设计,Typora如何设置存放图片的位置
文本,vitepress如何插入图片,做背景图片的设计,Typora如何设置存放图片的位置
python 将绘制的图片保存为矢量图格式(svg)
python 将绘制的图片保存为矢量图格式(svg)
python 将绘制的图片保存为矢量图格式(svg)
|
8月前
|
机器学习/深度学习 算法 计算机视觉
python入门(六) opencv的安装,图片操作,绘制文字图形,视频操作
python入门(六) opencv的安装,图片操作,绘制文字图形,视频操作
125 0
|
8月前
|
计算机视觉 Python
OpenCV中文字的绘制与动态绘制图形讲解与实战(附Python源码)
OpenCV中文字的绘制与动态绘制图形讲解与实战(附Python源码)
212 0
|
Python 容器
tkinter模块高级操作(二)—— 界面切换效果、立体阴影字效果及gif动图的实现
tkinter模块高级操作(二)—— 界面切换效果、立体阴影字效果及gif动图的实现
303 0
|
编解码 前端开发 搜索推荐
Python3.7将普通图片(png)转换为SVG图片格式并且让你的网站Logo(图标)从此”动”起来
在之前的几篇文章中,介绍了业界中比较火爆的图片技术SVG(Scalable Vector Graphics),比如[Iconfont(矢量图标)+iconmoon(图标svg互转)配合javascript来打造属于自己的个性化社交分享系统](https://v3u.cn/a_id_143),我们可以使用svg来打造精美炫酷的分享小图标(icon),这一次我们使用python来将普通的静态的网站logo图片转换为带路径(path)的svg图片,这样就可以让网站logo能够变成动态的,作为一名不折腾不舒服斯基,一枚炫酷自带动画的网站logo自然能够满足我们的折腾欲,同时亦能击中我们的虚荣心。
Python3.7将普通图片(png)转换为SVG图片格式并且让你的网站Logo(图标)从此”动”起来
python 如何绘制动图(将300张图片生成gif动画)
最近,在绘制SST月均数据时,突然想看看近几十年sst的大致变化过程。说白了就是绘制一张gif动画,也算是学习过程啦。
python 如何绘制动图(将300张图片生成gif动画)