怎么用Python3代码实现把情书写到图片中
发表于:2024-11-13 作者:千家信息网编辑
千家信息网最后更新 2024年11月13日,这篇文章主要讲解了"怎么用Python3代码实现把情书写到图片中",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么用Python3代码实现把情书写到图
千家信息网最后更新 2024年11月13日怎么用Python3代码实现把情书写到图片中
这篇文章主要讲解了"怎么用Python3代码实现把情书写到图片中",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么用Python3代码实现把情书写到图片中"吧!
1 Pillow 安装
我们都知道,针对图片进行操作,就会用到Pillow这个库,因为Pillow 是个第三方库,所以,在使用前,我们要进行 安装。
老规矩, pip 方式安装:
pip install Pillow
其他方式安装:
Python3自动安装第三方库,跟pip说再见
Python:一行代码,导入Python所有库
2 Pillow 介绍
安装完成后,我们先来简单介绍几个常用示例
2.2.1 新建及保存图片
# -*- coding:utf-8 -*-# @Time : 2021-12-17# @Author : carl_DJfrom PIL import Image#创建一张新的图片:mode 为RGB,size :520x520 ,color :0,100,200img = Image.new('RGB',(520,520),(0,100,200))# 保存图片img.save('img.jpg')
运行代码,可以看到,在默认路径自动创建一张img.jpg图片
我们打开图片,看看是啥样子的。
没错,就是这张图片。
2.2 重新绘制图片
我们在上面生成的图片中,画两条线
# -*- coding:utf-8 -*-# @Time : 2021-12-17# @Author : carl_DJfrom PIL import Image,ImageDraw#创建一张新的图片#img = Image.new('RGB',(520,520),(0,100,200))#img.save('img.jpg')#直接打开生成的img.jpg图片img = Image.open('img.jpg')#取得绘图对象,需要绘制对角线draw = ImageDraw.Draw(img)#绘制对角线draw.line((0,0,img.size[0],img.size[1]),fill = 128 ,width = 2)draw.line((0,img.size[1],img.size[0],0),fill = 128 ,width = 2)#保存图片img.save('img-line.jpg')
运行代码后,我们打开生成的图片
奈斯,说明符合我们的预期。
2.3 图片合并
我们把两个图片合并。
# -*- coding:utf-8 -*-# @Time : 2021-12-17# @Author : carl_DJfrom PIL import Image#直接打开img.jpg图片img = Image.open('img.jpg')#创建一个小的图片img_small = Image.new('RGB',(30,30),'yellow')#把img_samll 黏贴在 img.jpg图片的 的20x20的位置img.paste(img_small,(20,20))#保存新生成的图片img.save('img-paste.jpg')
运行代码,我们看下效果
完美。
3 实战
简单说一下我们的思路,大致分三步
1、先创建基本的信息:文案内容,像素尺寸,字体类型,图片路径;
2、创建小图来填充内容,在创建大图状态填充好的小图内容;
3、循环遍历图片的内个像素点,把文字黏贴上去。
我们先看下唐三的女神图片:
我们看下代码实现:
# -*- coding:utf-8 -*-# @Time : 2021-12-17# @Author : carl_DJfrom PIL import Image,ImageDraw,ImageFont#像素放大尺寸img_king_size = 20#输入内容text = '我想和你一起吹吹风'#设置字体font = ImageFont.truetype('simsun.ttc',img_king_size)#图片路径img_path = './king.jpg'#打开图片img = Image.open(img_path)img_w,img_h = img.size#创建一个小图,用于填充字体img_child = Image.new("RGB", (img_king_size, img_king_size))#创建一个大图,状态填充好的小图字体img_ans = Image.new("RGB",(img_w * img_king_size,img_h * img_king_size))#获取单个文字的宽和高text_w,text_h = font.getsize('中')#文字水平居中offset_x = (img_king_size - text_w) >> 1#文字垂直居中offset_y = (img_king_size - text_h) >> 1char_index = 0#小图用于绘制文字draw = ImageDraw.Draw(img_child)#循环遍历原图的每一个像素点for x in range(img_w): for y in range(img_h): #绘制背景,让图片更好看 draw.rectangle((0,0,img_king_size,img_king_size),fill = 'lightgray') #用(x,y)处的像素点的色值进行绘制字体 draw.text((offset_x,offset_y),text[char_index],font = font,fill = img.getpixel((x,y))) img_ans.paste(img_child,(x * img_king_size,y * img_king_size)) char_index = (char_index + 1) % len(text)img_ans.save('king-letter.jpg')
我们看下效果图
由于生成图片的大小,超过上传最大限制,所以,不能上传原图,
我就截取一下,看看效果:
我再给放大N倍,
感谢各位的阅读,以上就是"怎么用Python3代码实现把情书写到图片中"的内容了,经过本文的学习后,相信大家对怎么用Python3代码实现把情书写到图片中这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
图片
代码
内容
像素
字体
文字
utf-8
生成
效果
路径
建一
学习
运行
原图
对角
对角线
就是
尺寸
思路
方式
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
远建网络技术咨询是什么意思
未成年人网络安全怎么样
网络安全服务管理规定
java调用数据库查询
查询中文图书的数据库
银川网络安全会
做好网络安全文化建设
西安微信软件开发公司
手机图形数据库
保障网络安全与数据安全作文
无锡媒体软件开发定制价格
网络安全大赛信息安全竞赛
按信息处理层次划分数据库
软件开发的技术代码
网络安全基线加固服务
mac无法连接到服务器
全球城市数据库下载
步步高服务器不响应
厦门朗码网络技术有限公司
全国最新网络安全宣传周
关系数据库有哪些专业术语
微信小程序存储数据库
网络安全作业暑假活动
后台服务器怎么与前端交互
昌吉网络安全管理局
无线打印机怎么接收数据库
服务器版的杀毒软件
服务器空间租用合同
数据库十大知识
生物go分析数据库