Py之PIL:Python的PIL库的简介、安装、使用方法详细攻略

简介: Py之PIL:Python的PIL库的简介、安装、使用方法详细攻略

目录


PIL库的简介


PIL库的安装


PIL库的用方法


1、几何图形的绘制与文字的绘制


2、绘制图形的各种案例




PIL库的简介


        PIL,Python Imaging Library,已经是Python平台事实上的图像处理标准库了。PIL功能非常强大,但API却非常简单易用。

Python Imaging Library (PIL)

http://pillow-cn.readthedocs.io/zh_CN/latest/reference/index.html



PIL库的安装


pip install Pillow

pip install PIL



PIL库的用方法


ImageDraw.Draw(image)      #创建一个可用来对image进行操作的对象。对所有即将使用ImageDraw中操作的图片都要先进行这个对象的创建。

draw.textsize(string,options)   #⇒ (width, height)  含义:返回给定字符串的大小,以像素为单位。  变量option的font用于指定所用字体。它应该是类ImangFont的一个实例,使用ImageFont模块的load()方法从文件中加载的。

Python之PIL:基于Python的PIL库实现图片格式与Base64格式相互转换



1、几何图形的绘制与文字的绘制


draw.line()       #直线的绘制,第一个参数指定的是直线的端点坐标,形式为(x0, y0, x1, y1),第二个参数指定直线的颜色;

draw.rectangle()          #矩形绘制,第一个参数指定矩形的对角线顶点(左上和右下),形式为(x0, y0, x1, y1),第二个指定填充颜色,第三个参数指定边界颜色;

(1)传统的PIL 的draw rectangle 无法设置线宽。可以采用线段函数绘制四边形


draw = ImageDraw.Draw(im)

draw.line([(x,y),(x+width,y),(x+width,y+height),(x,y+width),(x,y)], width=line_width, fill=line_color)

draw.arc()        #(椭)圆弧的绘制,第一个参数指定弧所在椭圆的外切矩形,第二、三两个参数分别是弧的起始和终止角度, 第四个参数是填充颜色,第五个参数是线条颜色;

draw.chord()       #弦的绘制,和弧类似,只是将弧的起始和终止点通过直线连接起来;

draw.pieslice()      #圆饼图的绘制,和弧与弦类似,只是分别将起始和终止点与所在(椭)圆中心相连;

draw.ellipse()        #椭圆的绘制,第一个参数指定椭圆的外切矩形, 第二、三两个参数分别指定填充颜色和线条颜色,当外切矩形是正方形时,椭圆即为圆;

draw.polygon()          #绘制多边形,第一个参数为多边形的端点,形式为(x0, y0, x1, y1, x2, y2,……),第二、三两个参数分别指定填充颜色和线条颜色;

draw.text()           #文字的绘制,第一个参数指定绘制的起始点(文本的左上角所在位置),第二个参数指定文本内容,第三个参数指定文本的颜色,第四个参数指定字体(通过ImageFont类来定义)。



2、绘制图形的各种案例


Python之PIL之绘图:基于Python的PIL库绘制各种图形、添加文字等


 

相关文章
|
6天前
|
机器学习/深度学习 PyTorch 算法框架/工具
python这些库和框架哪个更好
【9月更文挑战第2天】python这些库和框架哪个更好
18 6
|
6天前
|
机器学习/深度学习 数据采集 算法框架/工具
python有哪些常用的库和框架
【9月更文挑战第2天】python有哪些常用的库和框架
14 6
WK
|
6天前
|
数据采集 XML 安全
常用的Python网络爬虫库有哪些?
Python网络爬虫库种类丰富,各具特色。`requests` 和 `urllib` 简化了 HTTP 请求,`urllib3` 提供了线程安全的连接池,`httplib2` 则具备全面的客户端接口。异步库 `aiohttp` 可大幅提升数据抓取效率。
WK
21 1
|
2天前
|
数据采集 机器学习/深度学习 数据挖掘
探索Python编程之美:从基础到进阶
【9月更文挑战第4天】在数字时代的浪潮中,编程已成为一种新兴的“超能力”。Python,作为一门易于上手且功能强大的编程语言,正吸引着越来越多的学习者。本文将带领读者走进Python的世界,从零基础出发,逐步深入,探索这门语言的独特魅力和广泛应用。通过具体代码示例,我们将一起解锁编程的乐趣,并理解如何利用Python解决实际问题。无论你是编程新手还是希望提升技能的开发者,这篇文章都将为你打开一扇通往高效编程的大门。
|
3天前
|
数据采集 机器学习/深度学习 数据挖掘
探索Python编程之美:从基础到实战
【9月更文挑战第3天】本文旨在通过深入浅出的方式,带领读者领略Python编程语言的魅力。我们将从基本语法入手,逐步深入至高级特性,最终通过实战案例将理论知识与实践操作相结合。无论你是编程新手还是有一定经验的开发者,这篇文章都将为你提供有价值的见解和技巧。
|
2天前
|
存储 开发者 Python
探索Python编程之美
【9月更文挑战第5天】在这篇文章中,我们将一起踏上一场Python编程的奇妙之旅。从基础语法到高级特性,我们将一步步揭开Python语言的神秘面纱。你将学习如何编写清晰、高效的代码,掌握函数、类和模块的使用,以及理解面向对象编程的核心概念。此外,我们还将探讨异常处理、文件操作等实用技能。无论你是初学者还是有一定经验的开发者,这篇文章都将为你提供宝贵的知识和技巧,让你在编程的道路上更加从容自信。
|
3天前
|
API C语言 开发者
Python如何成为跨平台编程的超级巨星:系统调用深度探索
【9月更文挑战第5天】Python 作为一种高级编程语言,凭借简洁的语法、丰富的库支持和强大的社区,迅速在编程界崭露头角。尤其在跨平台编程方面表现卓越,这得益于其解释器设计和对系统调用的深度整合。CPython 采用 C 语言编写,可为不同操作系统编译,使 Python 程序无需修改即可运行。Python 标准库提供了操作系统功能的抽象,如文件操作、进程控制等,隐藏了底层差异,实现了代码的统一。
18 7
|
3天前
|
存储 人工智能 数据挖掘
探索Python编程:从基础到进阶的旅程
【9月更文挑战第3天】在编程的世界里,Python以其简洁明了的语法和强大的功能库赢得了无数开发者的青睐。本文将带你走进Python的世界,从基础的数据类型和控制结构开始,逐步深入到面向对象编程(OOP)和异常处理等高级主题。无论你是初学者还是有一定经验的开发者,这篇文章都能为你提供新的视角和思考。
13 8
|
1天前
|
数据采集 机器学习/深度学习 存储
Python编程入门:从基础到实战
【9月更文挑战第6天】本文将引导你走进Python的世界,从零基础开始,逐步掌握Python的基础语法和常用库。我们将通过实例讲解,让你在轻松愉快的氛围中学习Python编程。最后,我们还将分享一些实用的技巧和资源,帮助你在学习过程中不断进步。让我们一起开启Python编程之旅吧!
15 4
下一篇
DDNS