再見Photoshop,我用Pillow制作公眾號封面圖
寫公眾號寫久了,不知道什么樣的封面圖才能吸引你們,于是想著優(yōu)化下公眾號的封面圖。
我的需求很簡單, 不搞花里胡哨的,選一張合適的封面圖,簡單處理將其亮度調(diào)暗一點,然后在圖片上加一句能概括文章主題的標(biāo)題即可。類似昨天的封面圖一樣。

對于會PS的人來說可能就是一分鐘的事情,可是我一沒安裝PS,二來PS已經(jīng)完全生疏。所以對我來說最合適的工具是用代碼來實現(xiàn),也是分分鐘的事。
Python中有個很出名的圖片處理庫 Pillow,功能非常強(qiáng)大,用起來很順手。如果你要經(jīng)常處理圖片,特別是批量處理,可以嘗試下這個庫。如果你還不會python,趕緊學(xué)。
安裝Pillow
pip install pillow
圖片變暗
我們需要用到Pillow下面一個叫ImageEnhance的模塊,主要是處理圖像增強(qiáng)的, 這個模塊下面的Brightness類用于調(diào)整圖片的亮度背后復(fù)雜的邏輯pillow已經(jīng)都給你封裝好了,你只需要指定數(shù)值就可以調(diào)節(jié)。
ImageEnhance.Brightness(image)
factor = 0.3
im_output = enhancer.enhance(factor)
factor 是亮度因子,大于1會讓圖片更亮,小于1使圖片變暗, 本質(zhì)上其實就是調(diào)整圖片的像素值
原始圖是這樣的

只需要4行代碼就可以將圖片變暗
from PIL import Image, ImageEnhance
# 加載圖片
im = Image.open("cover.png")
# 構(gòu)建enchance.Brightness對象
enhancer = ImageEnhance.Brightness(im)
factor = 0.3
# 調(diào)整亮度值
im_output = enhancer.enhance(factor)
# 保存圖片
im_output.save('darkened-image.png')
效果圖是這樣的

添加文字
第二步在圖片中添加文字,大概需要4個步驟
設(shè)置文字大小
指定文字字體
指定文字顏色
計算文字放置位置
將文字畫到圖片中間
注意有些字體不支持中文,字體的選擇可以在路徑 C:\Windows\Fonts 查找,macOS的路徑 /System/Library/Fonts, 找到指定的字體后右鍵選擇【屬性】后即可獲取該字體的完整名稱。

# 字體大小
font_size = 56
# 文字內(nèi)容
text = '摸魚神器'
# 字體文件路徑
font_path = 'C://Windows/Fonts/msyhbd.ttc'
# 設(shè)置字體
font = ImageFont.truetype(font_path, font_size)
# 文本的寬、高
text_width, text_height = font.getsize(text)
# 圖片的寬、高
width, height = im.size
draw = ImageDraw.Draw(im_output)
draw.text(((width - text_width) / 2, (height - text_height) / 2), text, fill="rgb(255,255,255)", font=font)
im_output.save('darkened-image.png')
將前后兩端代碼連在一起就構(gòu)成了完整代碼,最后我們其實還可以給圖片打上水印之類的功能,就是圖片右下角那個文字。這部分留給讀者自己實現(xiàn)。

評論
圖片
表情
