O que thumbnail-maker faz?
scripts/thumbnail.py (com scripts/fonts.py ao lado). Python 3.9+ e pip install pillow.
# tech / tutorial: um screenshot real, a linha importante circulada, uma seta vinda do título
python thumbnail.py --title "Claude almost deleted *everything*" --style dark --shot terminal.png --circle 0.19,0.17,0.18 --arrow --out t.jpg
# talking-head: uma pessoa recortada na frente do título
python thumbnail.py --title "I tested *every* AI coding tool" --style dark --photo me-cutout.png --out t.jpg
# fundo com foto, tamanho Shorts
python thumbnail.py --title "A day as a *dev*" --bg desk.jpg --style dark --size 1080x1920 --out short.jpg
| Opção | O que faz |
|---|---|
--title | 3-5 palavras funciona melhor. *palavra* marca a palavra‑chave (uma caixa ou cor). Em maiúsculas, a menos que use --keep-case. |
--style | dark (preto sujo + amarelo), light (branco sujo + vermelho) ou os mais chamativos pop, red, green, tech. |
--look | clean (padrão): cor sólida com vinheta suave, ou --bg com foto desfocada e escurecida para contraste. burst: o visual antigo com gradiente + explosão solar. |
--shot img | Um screenshot real como imagem principal. Cortes largos (uma ou duas linhas de terminal ou interface) ocupam toda a largura abaixo do título; os mais altos ficam ao lado. Redimensionado para preencher o espaço. |
--circle x,y,r | Oval vermelho desenhado à mão sobre o screenshot. x,y = centro e r = metade da largura do elemento, tudo em frações do screenshot. |
--arrow | Seta desenhada à mão do título até o círculo (faz um desvio ao redor do título quando não há espaço acima). --mark-color muda o vermelho. |
--photo img | Foto de pessoa. Um PNG com transparência (recorte) é contornado e desenhado na frente da borda do título para dar profundidade; uma foto normal vira um cartão com borda (--photo-shape circle, --tilt). |
--subtitle, --emoji, --accent, --highlight color, --size, --align, --font | Como antes: uma segunda linha pequena, um adesivo de emoji, cor da palavra‑chave, palavra‑chave colorida sem caixa, tamanho da saída, alinhamento, fonte do título. |
Regras de design (baseadas no que as melhores thumbnails fazem em 2026)
- Uma ideia, 3-5 palavras. O título complementa a imagem; não a descreva.
- Mostre a coisa real. Um screenshot recortado do erro, resultado ou interface real supera arte genérica. Corte apertado na linha que importa e circule‑a.
- Rostos: um recorte com expressão clara, grande (40-60% da altura). Não coloque texto sobre os olhos.
- Duas cores. Fundo liso mais um acento. Nada de explosões solares, paredes de emoji ou texto gradiente; eles parecem template ou feitos por IA.
- Mantenha o canto inferior direito livre: o YouTube desenha a duração do vídeo ali.
Verificações (impressas e em <nome>.preview.png)
- Altura das letras do título com largura de 168 px (busca do YouTube) abaixo de 8 px → aviso.
- Contraste efetivo do título (preenchimento vs fundo, e seu contorno) abaixo de 3:1 → aviso.
- Teste do squint: a área do título desfocada para 48 px de largura deve ainda se destacar do ambiente.
- Canto do timestamp: título alcançando os 20% x 16% inferiores direitos → aviso.
- Caixa da palavra‑chave se misturando ao fundo, contraste palavra‑chave vs caixa/contorno, mais de 6 palavras. Código de saída 1 em qualquer aviso. OLHE a folha de preview antes de usar a imagem.
Limitações
- Sem remoção de fundo: passe um PNG já recortado (remove.bg, Photoshop, macOS "Copiar Assunto").
- Círculos e setas são posicionados a partir dos números
--circle: verifique o preview e ajuste x/y/r se o oval errar. - Fontes: Impact para títulos (Windows/macOS; no Linux instale
ttf-mscorefontsou definaFONT_TITLE=/caminho/Anton-Regular.ttf). Substitua comFONT_TITLE,FONT_BOLD,FONT_EMOJI. - Emoji: apenas um code point (Pillow sem libraqm não consegue juntar sequências ZWJ).
- Sem detecção de rosto: corte as fotos para que o rosto não fique perto de uma borda.