「用Python高效工作」1分鐘完成一天的P圖工作量

上篇文章給大家分享瞭如何處理excel檔案,並對其做一些簡單的資料分析。今天給大家講講運營或者新媒體同學經常會遇到的批次P圖的問題。例如某公司做了一個海選活動,50:1的淘汰率,但是參與人數太多,進入複試階段的,也有200人,為了讓200人獲得階段性的成就感,刺激其為活動做二次傳播,通常運營的同學都會做成就卡片,方便這200人曬朋友圈或者其他平臺。

「用Python高效工作」1分鐘完成一天的P圖工作量

批次處理數字證書

這樣問題難點不是在設計,難點是在複製,數量在幾百左右,一個人一天還能夠搞定,但是超過了1k,那麼運營的同學就只有哭娘了。如果大家用今天提到的技能,再多的圖也不怕。

不用學PS就能快速完成P圖任務,就只在python啦。首先匯入我們要使用的3個常用庫

from PIL import Imagefrom PIL import ImageDrawfrom PIL import ImageFontfont = ImageFont。truetype(‘SourceHanSerifCN-Bold-2。otf’,size=40)

Image是處理圖片的(開啟、縮放、剪裁等),ImageDraw是在圖片上完成文字、圖形、以及圖片貼上拼接,ImageFont是定義需要用什麼樣的字型,注意不要用需要版權的字型。

im=Image。open(“你的圖片地址”)x=29 #剪裁起始點的X座標y=29 #剪裁起始點的Y座標w=383 #要剪裁的寬度h=383 #要剪裁的高度region = im。crop((x, y, x+w, y+h))

上面這段程式碼完成了對圖片的基礎剪裁。

draw = ImageDraw。Draw(im) #對開啟的圖片im進行繪製description=“你要輸入的文字說明” #可以是標題、暱稱等w, h = font。getsize(description) #獲取description在當前字型font下的大小(w為寬度,h為高度,方便在圖中計算文字的排版位置)pos_x=(im。size[0]-w)/2 #計算文字所在位置的X座標pos_y=(im。size[1]-h)/2 #計算文字所在位置的Y座標draw。text((pos_x,pos_y),description,‘black’,font) # 注 black是顏色,你也可以用RGB標識

上面幾行程式碼就完成了圖片加文字的操作。

貼上二維碼

活動通常會帶上二維碼,方便使用者迴流,這就要使用到圖片的拼接方法。

qr_img=Image。open(“你的活動二維碼”)im。paste(qr_img,(p_x,p_y)) #將二維碼圖片貼上到活動圖片上,p_x和p_y是圖片上的位置座標im。save(‘你要儲存的檔案。jpg’)

好了,到現在已經講清楚了怎麼完成單次p圖,需要大家利用上一講處理excel檔案的知識,讀出相應的活動資訊,利用for語句把P圖擴充套件到批次模式。

超有用的三方庫

自動生成QR碼的庫

MyQR

,可以透過pip install myqr 安裝。使用它就可以不再依賴草料二維碼網站,根據地址批次生成個性二維碼(例如個人的主頁或者作品地址),如下圖

「用Python高效工作」1分鐘完成一天的P圖工作量

自動剪下圖片的庫

smartcrop

,透過pip install smartcrop安裝,它可以幫你完成指定尺寸的剪下,例如要將一張活動海報剪下成開機封面,後者有特殊的尺寸要求,通常需要用PS人工處理,以保證重要部分的展示,但這樣就失去了批次程式化操作的可能。有了這個庫就可以完成機器根據特徵自動完成剪輯,批次做開機封面就太簡單了。

「用Python高效工作」1分鐘完成一天的P圖工作量

上圖紅色區域,是該庫使用特徵提取找到了圖片中最有資訊量的位置。自動剪下就不會錯過該區域啦。

import smartcropimage = Image。open(“你的圖片”)sc = smartcrop。SmartCrop()result = sc。crop(image, 寬度, 高度)

學習完今天這堂課,運營的同學就可以輕鬆應對海量的活動需求了,看完記得實操一下,免得過眼雲煙,沒有體驗就沒有長進呀。歡迎大家留言,說出你工作中碰的效率難題。

覺得有用的,請分享給你的運營小夥伴。