ITPub博客

首页 > 数据库 > 数据库开发技术 > 教你用Python秀恩爱、撒狗粮——这是我的某某某

教你用Python秀恩爱、撒狗粮——这是我的某某某

原创 数据库开发技术 作者:阿黎逸阳的代码 时间:2021-01-03 07:02:00 0 删除 编辑
新的一年悄然来临,祝大家在新的一年红红火火,幸福美满😘。

本文教大家用Python来秀恩爱,撒狗粮,单身狗慎入(●ˇ∀ˇ●)。





绘制成果


HAPPY NEW YEAR
1、这是我的男朋友




2、这是我的女朋友






代码解析


HAPPY NEW YEAR
1、导入包并设置文件存储路径


首先,加载需要的包并设置文件的存放路径。

import osimport cv2import numpy as npfrom PIL import Imagefrom PIL import ImageFont, ImageDraw, Image
os.chdir(r"F:\公众号\5.请给我一个女朋友") #设置图片的存放路径



2、导入包并设置文件存储路径


接着,读取男朋友(代称,粉丝朋友不要介意🤦‍)的图片和背景图片。
并把男朋友的图片缩小为背景图片的一定比例。
然后,把缩小的男朋友图片粘贴到背景图片中去。
ico = Image.open("xz.jpg")                  #打开男朋友的图片friend_img = Image.open("slw2.jpg")         #打开头像图片ratio = friend_img.width/ico.width/1.5       #计算男朋友图片缩放比例size_ico = (int(ico.width*ratio),int(ico.height*ratio))  #计算男友图片的尺寸ico = ico.resize(size_ico,Image.ANTIALIAS)               #缩放男朋友图片#ico_position = (friend_img.width-ico.width,friend_img.height-ico.height)  #计算粘贴的坐标ico_position = (60,60)                 #设置男朋友图片粘贴的坐标friend_img.paste(ico, ico_position)    #粘贴图片head_size = 200,200                    #设置微信头像的标准尺寸head_img = friend_img.resize(head_size,Image.ANTIALIAS)    #更改图片成微信头像的标准尺寸head_img.save("background.jpg", quality=100, optimize=True)
得到结果如下:

其中,背景图片如下:

男朋友图片如下:


3、在图片上添加文字

最后,在图片上添加文字。

bk_img = cv2.imread("background.jpg")    #编辑图片路径fontpath = "font/simsun.ttc"             #设置需要显示的字体font = ImageFont.truetype(fontpath, 16)  # 16为字体大小img_pil = Image.fromarray(bk_img)draw = ImageDraw.Draw(img_pil)# (28, 105)为字体的位置,(170,100,100)为字体颜色draw.text((28, 105),  "这是我的", font = font, fill = (170,100,100))draw.text((28, 130),  "男朋友", font = font, fill = (170,100,100))bk_img = np.array(img_pil)cv2.imshow(r"add_text", bk_img)      #显示图片cv2.waitKey()    cv2.imwrite(r"add_text2.jpg",bk_img)  # 保存图片路径

注:如需文中全量代码和图片,请到公众号中回复“我的某某某”即可免费获取。

你可以根据需要,改成你喜欢的文字、喜欢的字体颜色和大小。
本文设置的图片大小是微信头像标准尺寸,可以直接用作微信头像。

往期回顾:
3D星空图V2版
520表白代码合集
用python绘制皮卡丘
叮—请查收你的圣诞礼物

娱乐圈排行榜动态条形图绘制

扫一扫关注我

19967879837

投稿微信号、手机号

原文作者:阿黎逸阳的代码;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2020-02-15

  • 博文量
    282
  • 访问量
    130883