使用Python合成圖片的實(shí)現(xiàn)代碼(圖片添加個(gè)性化文本,圖片上疊加其他圖片)
1.業(yè)務(wù)需求背景
業(yè)務(wù)提供一張底層圖片1以及需要在底層圖片上添加的圖片2,兩張圖片大小不一致,將小圖2添加到底圖1中,并在其他的空白部分添加個(gè)性化的文本信息
2.圖片處理邏輯
在底層圖片上添加文本信息,圖片另存到一個(gè)新的路徑,命名為圖3
將圖3和圖2合并,處理位置信息,透明率等,將處理完成之后的圖片另存到新的路徑,命名為圖4
3.代碼處理部分
3.1 圖片上添加文本信息
from PIL import Image,ImageDraw,ImageFont
# 底圖添加字體文本
im = Image.open("./底圖.png").convert('RGBA')
# 查看原圖的大小
print(im.mode,im.size)
# 生成與原圖大小完全一致的新圖片,設(shè)定為完全透明
txt=Image.new('RGBA', im.size, (0,0,0,0))
# 設(shè)置字體,字號(hào)
fnt=ImageFont.truetype(r"C:\Windows\Fonts\STXINWEI.TTF", 50)
d=ImageDraw.Draw(txt)
# 拼接需要在圖片上填寫的文本
name = "李敏"
date_today = "2020-04-28"
a = """
親愛的{0}:
叮。
確認(rèn)收貨:專屬生日祝福!
快樂屬于您,幸福屬于您!
溫馨屬于您,好運(yùn)屬于您!
工作在忙碌,本能照顧您!
\r\r\r\rXX部門
\r\r\r\r{1}
""".format(name,date_today)
# 設(shè)置字體信息所在的位置,寫入的信息,顏色
d.text((txt.size[0]-950,txt.size[1]-1300),a,font=fnt,fill=(28,28,28,255))
# 保存新的圖片
out=Image.alpha_composite(im,txt)
out.save(r"NEW-1.png")
3.2 兩張大小不一致的圖片重疊
import cv2
import numpy as np
import matplotlib.pyplot as plt
import os
from PIL import Image,ImageDraw,ImageFont
# 讀取兩張圖片信息
os.chdir('E:\RPA\生日賀卡')
bear = cv2.imread('./baiyang+gou.png')
sky = cv2.imread('./NEW-1.png')
"""
bear 小圖
sky 大圖
"""
# 根據(jù)小圖像的大小,在大圖像上創(chuàng)建感興趣區(qū)域roi(放置位置任意?。?
rows, cols = bear.shape[:2] #獲取bear的高度、寬度
roi = sky[0:rows, 0:cols]
dst = cv2.addWeighted(bear,1,roi,0,0) #圖像融合,設(shè)置透明度,大小等
add_img = sky.copy() #對(duì)原圖像進(jìn)行拷貝
add_img[800:rows+800, 75:cols+75] = dst # 將融合后的區(qū)域放進(jìn)原圖,可通過改數(shù)值修改位置
# 讀取融合之后的圖片數(shù)據(jù)(數(shù)據(jù)類型為dateframe對(duì)象)
ret = cv2.cvtColor(add_img,cv2.COLOR_BGR2RGB)
im = Image.fromarray(ret)
im.save("./完整圖.png")
print("圖片保存完成")
到此這篇關(guān)于使用Python合成圖片的實(shí)現(xiàn)代碼(圖片添加個(gè)性化文本,圖片上疊加其他圖片)的文章就介紹到這了,更多相關(guān)Python合成圖片內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- python使用pil庫實(shí)現(xiàn)圖片合成實(shí)例代碼
- 使用ImageMagick進(jìn)行圖片縮放、合成與裁剪(js+python)
- 使用python-cv2實(shí)現(xiàn)視頻的分解與合成的示例代碼
- python3實(shí)現(xiàn)語音轉(zhuǎn)文字(語音識(shí)別)和文字轉(zhuǎn)語音(語音合成)
- Python 實(shí)現(xiàn)將大圖切片成小圖,將小圖組合成大圖的例子
- Python實(shí)現(xiàn)語音識(shí)別和語音合成功能
- Python中將兩個(gè)或多個(gè)list合成一個(gè)list的方法小結(jié)
- python圖片合成的示例
相關(guān)文章
Python爬蟲實(shí)戰(zhàn)演練之采集拉鉤網(wǎng)招聘信息數(shù)據(jù)
讀萬卷書不如行萬里路,只學(xué)書上的理論是遠(yuǎn)遠(yuǎn)不夠的,只有在實(shí)戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用Python采集拉鉤網(wǎng)招聘信息數(shù)據(jù),大家可以在過程中查缺補(bǔ)漏,提升水平2021-10-10
VSCode配置python環(huán)境及中文問題解決方法
這篇文章主要介紹了VSCode配置python環(huán)境及中文問題,print打印中文亂碼如何解決這個(gè)問題呢,本文給大家?guī)韮煞N方法幫助大家解決這個(gè)問題,需要的朋友可以參考下2022-02-02
matplotlib設(shè)置顏色、標(biāo)記、線條,讓你的圖像更加豐富(推薦)
這篇文章主要介紹了matplotlib設(shè)置顏色、標(biāo)記、線條,讓你的圖像更加豐富,本文通過實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09
python爬蟲框架scrapy代理中間件掌握學(xué)習(xí)教程
這篇文章主要介紹了python爬蟲框架scrapy代理中間件掌握學(xué)習(xí)教程,為大家說明一下 scrapy 中代理相關(guān)知識(shí)點(diǎn),有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-11-11

