python处理图片之PIL模块简单使用方法

Python处理图片之PIL模块简单使用方法

为什么要使用PIL模块

PIL(Python Imaging Library)模块是Python中最常用的图像处理模块之一。它提供了丰富的图像处理方法,可以实现图片缩放、旋转、裁剪、增加文字等基本操作,也可以实现图像矩阵的遍历以及过滤等高级操作。使用PIL模块,不仅可以提高开发效率,还可以让我们的应用程序有更美观的界面和更好的用户体验。

如何安装PIL模块

PIL模块需要通过pip来安装,可以在命令行中输入以下命令来安装:

pip install Pillow

PIL模块常用方法

下面介绍PIL模块的一些常用方法。

1. 打开图片

from PIL import Image

im = Image.open("test.jpg")

其中,test.jpg是图片的路径。PIL模块可以打开多种图片格式,包括bmp、jpg、png等。

2. 获取图片信息

print(im.format, im.size, im.mode)

打印出来的是图片的格式、尺寸和颜色模式。比如输出结果可能为:JPEG (1920, 1080) RGB。

3. 显示图片

im.show()

可以在系统默认的图片编辑器里打开该图片。

4. 保存图片

im.save("test2.jpg")

将该图片另存为为"test2.jpg"

5. 剪裁图片

crop_im = im.crop((100, 100, 400, 400))
crop_im.save("crop_test.jpg")

其中,(100,100)是左上角坐标,(400,400)是右下角坐标。

6. 缩放图片

resize_im = im.resize((400,400))
resize_im.save("resize_test.jpg")

将图片大小缩放为400×400。

示例

下面是一个示例,将图片剪裁为正方形,并将图片大小缩放为400×400。

from PIL import Image

im = Image.open("test.jpg")
crop_im = im.crop((100, 100, 400, 400))
resize_im = crop_im.resize((400, 400))
resize_im.save("crop_resize_test.jpg")

另外一个示例,向图片中添加文字。

from PIL import Image, ImageDraw, ImageFont

im = Image.open('test.jpg')

draw = ImageDraw.Draw(im)
font = ImageFont.truetype("arial.ttf", 36)

message = "hello world!"

textwidth, textheight = draw.textsize(message, font)
x = im.width - textwidth - 10
y = im.height - textheight - 10

draw.text((x, y), message, font=font)

im.save("test_with_text.jpg")

其中,arial.ttf是字体文件的路径。在Windows系统中,字体文件通常在C:\Windows\Fonts目录下。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python处理图片之PIL模块简单使用方法 - Python技术站

(0)
上一篇 2023年5月18日
下一篇 2023年5月18日

相关文章

  • 使用 selenium 获取 Chrome Devtools 内容的 Python 脚本

    【问题标题】:Python script using selenium to obtain Chrome Devtools content使用 selenium 获取 Chrome Devtools 内容的 Python 脚本 【发布时间】:2023-04-07 14:15:01 【问题描述】: 我在尝试使用 python 脚本在 Chrome Devtoo…

    Python开发 2023年4月8日
    00
  • Python教程按照字典的键或值进行排序方法解析

    Python可以使用sorted方法来对字典进行排序。sorted方法返回一个由排序后的键、值组成的列表。 按照字典键排序 对字典按照键进行排序方法如下。使用sorted方法,对字典test_dict的键进行排序。 test_dict = {‘a’: 3, ‘b’: 4, ‘c’: 1, ‘d’: 2} sorted_dict = sorted(test_d…

    python 2023年5月13日
    00
  • 如何使用python操作vmware

    如何使用Python操作VMware 操作VMware的Python库是pyvmomi,该库允许Python开发者利用vSphere API与vCenter Server, ESXi 和其它 VMware 产品进行交互。以下是使用Python操作VMware的完整攻略。 步骤一:安装pyvmomi包 在终端中执行以下命令: pip install pyvmo…

    python 2023年5月18日
    00
  • Python提取PDF指定内容并生成新文件

    下面我将为你详细讲解如何使用Python提取PDF指定内容并生成新文件的完整攻略。 1. 安装需要的Python库 首先,我们需要安装一些Python库来读取和操作PDF文件。其中,常用的库包括PyPDF2和pdfminer。你可以使用pip命令来安装它们,如下所示: pip install PyPDF2 pip install pdfminer 2. 打开…

    python 2023年5月31日
    00
  • 使用python os模块复制文件到指定文件夹的方法

    使用python os模块可以很方便地复制和移动文件。下面是使用os模块复制文件到指定文件夹的步骤: 1.导入os模块 要使用os模块,需要在代码开始时先导入该模块。可以使用以下语句导入os模块: import os 2.使用shutil模块中的copy()函数复制文件 在os模块中没有直接的复制文件的函数,但是可以使用shutil模块中的copy()函数来…

    python 2023年6月2日
    00
  • 详解Python文件修改的两种方式

    下面是详解Python文件修改的两种方式的完整攻略。 方式一:使用Python内置的文件操作函数 Python 提供了内置函数 open() 和 close() 用于打开和关闭文件,以及提供了一些文件操作的方法。通过这些函数,我们可以直接打开一个文件,读取或修改其中的内容,最后保存并关闭文件。 打开文件 使用内置函数 open() 可以打开一个文件,函数语法…

    python 2023年6月5日
    00
  • 解决Python requests库编码 socks5代理的问题

    以下是关于“解决Python requests 库编码 socks5 代理的问题”的完整攻略: 解决 Python requests 库编码 socks5 代理的问题 在使用 Python requests 库时,我们可能需要使用 socks5 代理。然而,使用 socks5 代理时,可能会遇到编码问题。以下是解决 Python requests 库编码 s…

    python 2023年5月15日
    00
  • python高手之路python处理excel文件(方法汇总)

    标题:Python高手之路:Python处理Excel文件(方法汇总) 本文将介绍多种方法使用Python处理Excel文件。主要包括三种常见的Python第三方库(pandas、openpyxl、xlrd/xlwt),以及一种使用comtypes实现的win32com方法。下面分别进行详细讲解。 一、 Pandas Pandas是Python数据分析中使用…

    python 2023年5月13日
    00
合作推广
合作推广
分享本页
返回顶部