thumbnail-maker 是做什麼的?
scripts/thumbnail.py(旁邊需有 scripts/fonts.py)。Python 3.9+ 並執行 pip install pillow。
# 技術 / 教學風格:真實螢幕擷圖,圈出重點行,並從標題畫出箭頭
python thumbnail.py --title "Claude 差點刪掉了 *全部*" --style dark --shot terminal.png --circle 0.19,0.17,0.18 --arrow --out t.jpg
# 人物講述風格:將去背人物放在標題前方
python thumbnail.py --title "我測試了 *每套* AI 開發工具" --style dark --photo me-cutout.png --out t.jpg
# 照片背景,Shorts 尺寸
python thumbnail.py --title "當 *開發者* 的一天" --bg desk.jpg --style dark --size 1080x1920 --out short.jpg
| 選項 | 功能說明 |
|---|---|
--title | 3-5 個字效果最好。用 *字* 標記關鍵字(會加上方框或顏色)。除非加上 --keep-case,否則會自動轉大寫。 |
--style | dark(近黑色 + 黃色)、light(米白色 + 紅色),或更強烈的 pop、red、green、tech。 |
--look | clean(預設):純色背景加上柔和暗角;或 --bg 照片模糊加深以提升對比。burst:舊版漸層 + 光芒效果。 |
--shot img | 使用真實螢幕擷圖作為主要視覺。寬幅裁切(例如終端機或 UI 的一兩行)會滿版置於標題下方;較高的圖片則放在標題旁邊。圖片會縮放填滿空間。 |
--circle x,y,r | 在螢幕截圖上手繪紅色橢圓。x,y 為中心點,r 為橢圓的半寬,皆以截圖比例表示。 |
--arrow | 從標題指向橢圓的手繪箭頭(若上方空間不足,會繞過標題)。--mark-color 可更改紅色。 |
--photo img | 人物照片。透明 PNG(去背圖)會加上外框並繪製在標題邊緣前方以增加立體感;一般照片則會變成帶邊框的卡片(可搭配 --photo-shape circle、--tilt)。 |
--subtitle、--emoji、--accent、--highlight color、--size、--align、--font | 與先前相同:第二行小字、表情貼紙、關鍵字顏色、無方框的彩色關鍵字、輸出尺寸、對齊方式、標題字型。 |
設計原則(參考 2026 年最受歡迎縮圖的做法)
- 一個想法,3-5 個字。 標題應與圖片互補,而非描述圖片。
- 呈現真實畫面。 截取實際錯誤、結果或 UI 的關鍵行,並圈選出來,效果勝過通用素材。
- 臉部: 使用已去背、表情清晰的人物,佔畫面高度的 40-60%。文字不要遮到眼睛。
- 兩種顏色。 純色背景加一個強調色。避免使用光芒、大量 emoji 或漸層文字,這些看起來像模板或 AI 生成。
- 保持右下角空白: YouTube 會在該處顯示影片長度。
檢查項目(輸出到畫面上,以及 <名稱>.preview.png)
- 在 168 像素寬(YouTube 搜尋尺寸)下,標題字母高度低於 8 像素 → 發出警告。
- 標題(填充色與背景、以及其外框之間)的有效對比度低於 3:1 → 發出警告。
- 瞇眼測試: 將標題區域模糊至 48 像素寬,仍須能從背景中凸顯出來。
- 時間戳角落: 標題延伸到右下角 20% x 16% 區域 → 發出警告。
- 關鍵字框與背景融為一體、關鍵字與框/外框對比不足、字數超過 6 個。 出現任一警告則回傳錯誤碼 1。使用圖片前請先檢視預覽圖。
限制
- 不提供去背功能:請傳入已經去背的 PNG(可使用 remove.bg、Photoshop、macOS「拷貝主體」)。
- 圓圈與箭頭的位置由
--circle參數決定:請檢查預覽圖並調整 x/y/r 直到橢圓對準目標。 - 字型:標題使用 Impact(Windows/macOS;Linux 上請安裝
ttf-mscorefonts或設定FONT_TITLE=/path/Anton-Regular.ttf)。可透過FONT_TITLE、FONT_BOLD、FONT_EMOJI環境變數覆蓋。 - Emoji:僅支援單碼點(不支援 libraqm 的 Pillow 無法處理 ZWJ 序列)。
- 不提供臉部偵測:請自行裁切照片,確保臉部不靠近邊緣。