極客編程日歷2018桌面壁紙

圖靈社區(qū)出版了一本極客編程日歷“Happy Hacking 2018” ,實體已經(jīng)售罄,但是提供了PDF電子版下載。我們可以編寫腳本,把日歷和桌面壁紙結合在一起。最終效果如圖:

編程日歷桌面壁紙

Python源代碼:

import datetime

from wand.image import Image #pip install Wand

PDF_SOURCE = '/home/pjheng/文檔/code_calendar_2018.pdf[{}]' #下載的PDF日歷路徑
BACKGROUND_SOURCE = '/usr/share/backgrounds/adapta/tealized.jpg' #使用的壁紙
OUTPUT = '/home/pjheng/圖片/turing.jpg' #生成的壁紙路徑

PAGE_OFFSET = 6 #周歷從PDF文檔的第7頁開始
MARGIN_LEFT = 200 #周歷的左邊距
MARGIN_TOP = 200 #周歷的上邊距

current_week = datetime.datetime.now().isocalendar()[1] #獲取當前是第幾周
page = PAGE_OFFSET + current_week #獲取周歷在PDF文檔中的頁號

with Image(filename=PDF_SOURCE.format(page), resolution=200) as calendar:
    with Image(filename=BACKGROUND_SOURCE) as background:
        background.composite_channel('default_channels', calendar, 'blend', MARGIN_LEFT, MARGIN_TOP)
        background.save(filename=OUTPUT)

結合crontab(或者Windows的任務計劃程序),將腳本設定為每周一零點執(zhí)行即可。
另外,有朋友遇到了Wand拋異常的問題,我分別在Python 3.6.3 + Wand 0.4.4 和 Python 3.4.3 + Wand 0.4.3 中測試,沒有重現(xiàn)。
還可以做一些有趣的擴展。比如繪制一個方框,框選下方的當天日期等等。

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容