CommunityImagemgithub.com

Ferramentas de Mestre de Quadrinhos

Ferramentas de produção específicas para quadrinhos: uso do ComfyUI para painéis consistentes, lettering vetorial (balões, rabichos, explosões, legendas, SFX), detecção em sua própria arte, texto em objetos como crachás e placas, controle de qualidade e montagem de páginas. Use junto com o comic-master.

O que é Ferramentas de Mestre de Quadrinhos?

Esta skill, complementar ao comic-master, fornece um conjunto completo de ferramentas de produção para quadrinhos. Ela se concentra em aspectos práticos, como geração de painéis consistentes com ComfyUI, lettering vetorial de alta qualidade e detecção de texto em arte própria. A skill suporta plataformas de IA como Claude Code e ferramentas de linha de comando, oferecendo scripts prontos para uso (como o letterer.py) e regras detalhadas para garantir resultados profissionais. Ela aborda problemas comuns, como lettering ruim resultante de ferramentas inadequadas, e promove práticas como uso de fontes adequadas para quadrinhos, balões com cauda curvada e dimensionamento correto. Além disso, inclui processos de revisão e controle de qualidade (QA) para validar a saída, garantindo que o lettering fique legível, não sobreponha rostos e siga a ordem de leitura correta. Em suma, é um guia prático e técnico para elevar a qualidade visual de quadrinhos gerados por IA.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/quantiqueue/comic-skills/tree/HEAD/skills/comic-master-tooling

Installed? Explore more Imagem skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Comic Master — Ferramentas

Complemento ao comic-master. Essa skill define a aparência de boas páginas; esta aborda as ferramentas que as produzem. A maioria dos letterings ruins vem de ferramentas ruins: elipses rasterizadas desenhadas à mão, fontes do sistema e texto colado diretamente sobre a arte.

1. Arte de painéis com ComfyUI

Como executar o próprio ComfyUI (instalar modelos, iniciar, executar templates e workflows) pertence às skills genéricas do ComfyUI em vendor/comfy-cli-skills/ na raiz deste repositório. Esta seção aborda como usá-las para quadrinhos.

1.1 Configuração de geração de um projeto de quadrinhos

  • Dois workflows por projeto: text-to-image para novos painéis, image-edit para correções de continuidade, correspondência de cenas e texto em objetos. Escolha-os uma vez, com um modelo e configurações fixas, e registre-os na bíblia do projeto.
  • Um painel = um job = uma imagem salva. Isso torna cada painel rastreável até seu prompt, seed e configurações.
  • Dimensione cada renderização a partir do layout, e não o contrário. Pegue a caixa do painel do thumbnail e renderize com cerca de 1 megapixel nessa proporção (ex.: 1408×704 widescreen, 768×1024 retrato, 1536×640 tira). Em seguida, redimensione ou corte para caber na caixa, mantendo os detalhes críticos da história longe das bordas de corte.
  • Processe em lote por cena, não por página, para que luz, paleta e fundos permaneçam consistentes entre os painéis de uma cena.

1.2 Consistência

  • Folha de modelo primeiro. Gere uma ficha de variações e expressões para cada personagem, escolha a melhor e reutilize-a como imagem de referência (IP-adapter, entrada image-edit, ou uma LoRA de personagem se você puder treinar uma).
  • Âncoras fixas (comic-master comic-characters.md §4.5) palavra por palavra em cada prompt, enumeradas da esquerda para a direita; uma âncora de estilo para todo o projeto.
  • Seeds: registre a seed de cada painel aceito para que possa ser regenerado ou variado.
  • Controle de pose: use um OpenPose ou depth ControlNet quando o bloqueio for importante (ordem dos falantes, linhas de visão, a linha de 180°).

1.3 Regras de prompting que se sustentam

  • Saiba se negativos funcionam. Modelos destilados executados com CFG 1 (FLUX.2 klein, Z-Image-Turbo) geralmente ignoram o prompt negativo. Com eles, declare o que você quer de forma positiva ("exatamente quatro pessoas", "testa relaxada e lisa"). Use negativos apenas com modelos executados com CFG real, ou adicione um nó de orientação negativa (ex.: NAG).
  • Prompt no idioma do modelo. FLUX e Qwen/Z-Image leem frases naturais; SDXL lê tags separadas por vírgula. Para modelos de frases, use uma ordem fixa: enquadramento e ângulo → cada figura com posição, da esquerda para a direita → a ação única → expressão como anatomia → cenário → luz → estilo.
  • Expressões como anatomia, nunca nomes. "Entediado" tende a produzir uma carranca. Descreva em vez disso: "pálpebras superiores meio abaixadas, sobrancelhas altas e retas, boca em uma linha reta e fechada". Onde os negativos funcionam, também faça o prompt negativo da falha ("sobrancelhas franzidas, carrancudo").
  • Cores de figurino dentro da cláusula que nomeia a parte do corpo ("macacão marinho nos ombros"). Close-ups tendem a cores genéricas; faça o prompt negativo da cor do desvio.
  • Sem duplicatas: uma âncora por figura, contagem e ordem explícitas ("exatamente três pessoas: da esquerda, …") e, onde os negativos funcionam, "personagens duplicados, clone, pessoas extras" no negativo.
  • Reserve espaço para texto no prompt ("o terço superior é parede vazia e lisa"). Peça uma imagem limpa e sem palavras ("sem texto, sem letras, sem balões de fala", no negativo onde funciona, caso contrário, formulado positivamente como "imagem limpa sem nenhum lettering"), exceto em uma passagem deliberada de edição de texto em objetos.
  • Encene a partir do thumbnail. Transforme o thumbnail em um bloqueio grosseiro (bonecos de palito, caixas para móveis) e alimente-o como uma pose, lineart ou imagem de controle de profundidade, para que a colocação do elenco, a escala e quem está na sala sigam o plano.
  • Gere vários, escolha um. Renderize 3–4 seeds por painel e escolha com base no OBJETIVO do painel e nas âncoras antes de qualquer lettering.

1.4 Edição em vez de regerar

Use o fluxo de trabalho de edição de imagem com o painel existente como entrada:

  • Painéis correspondentes (mesma sala, gags de repetição, takes de reação): corrija o painel anterior para o novo em vez de gerar do zero.
  • Remoção supera reencenação. "Remova a segunda pessoa à mesa" funciona; "mova-o para trás da cadeira" geralmente falha.
  • Correções de continuidade: extras soltos, cores de figurino erradas, um objeto na mão errada. Inpaint ou edite apenas essa região.
  • Texto em objetos (§4): uma palavra curta escrita em um crachá ou placa, verificada em 1:1.

1.5 Revisão antes do lettering

  • Compare cada renderização com suas âncoras e o OBJETIVO do painel: rosto, cores do figurino, objetos e mãos, direção da luz, pessoas extras, glifos soltos, zona de texto vazia.
  • Mantenha um registro por painel (prompt, seed, configurações, aceito ou rejeitado e por quê) para que as correções sejam reproduzíveis.

1.6 Configurações de modelo recomendadas

8 GB de VRAM (o padrão funcional):

TarefaModelo e arquivosObservações
Painéis e ediçõesFLUX.2 [klein] 4B fp8 (flux-2-klein-4b-fp8) + codificador de texto qwen_3_4b + flux2-vae~4 passos, CFG 1. O modo de edição usa imagens de referência (folhas de modelo) para personagens fiéis ao modelo. Apache-2.0.
Painéis únicos de alta qualidade, texto em objetosZ-Image-Turbo int8 (z_image_turbo_int8_convrot) + qwen_3_4b_fp8_mixed + ae.safetensorsTemplate image_z_image_turbo_int8; ~8 passos. Melhor texto e seguimento de instruções; sem edição de imagem de referência. Controle de pose/profundidade via template do Z-Image-Turbo Fun Union ControlNet. Apache-2.0.
Controle de encenaçãoSDXL + OpenPose ControlNet + IP-adapterControle de pose e layout mais maduro em 8 GB; refine o resultado com Klein.
Recortes de personagenscomfyui-rmbg com BiRefNet toonout (feito para cartoons e ilustrações) ou RMBG-2.0Para o fluxo de trabalho em camadas abaixo.
Upscaling4x-UltraSharp, em mosaicoRenderize ~1 MP, depois aumente para o tamanho de impressão.

Em 8 GB: use pesos fp8/int8/GGUF; mova o codificador de texto para a CPU ou uma segunda GPU quando estiver apertado; decodificação VAE em mosaico para imagens grandes; um modelo carregado por vez; mantenha qualquer LLM local em uma GPU diferente.

Personagens em camadas: gere cada personagem em um fundo plano e simples, recorte-o (BiRefNet toonout) e componha sobre um fundo compartilhado por cena. Isso corrige problemas de encenação, escala e quem está na sala que o prompting sozinho não resolve, e permite que os objetos mantenham o mesmo tamanho entre os painéis.

Com mais VRAM: FLUX.2 [klein] 9B (~20 GB; não comercial), Qwen-Image-2.1 (~24 GB; 10 imagens de referência, saída RGBA transparente, edições com máscara; licença de pesquisa), FLUX.2 [dev] (24 GB+ em fp8; qualidade superior e múltiplas referências; não comercial). Verifique a licença de cada cartão de modelo antes do uso comercial; a pilha de 8 GB acima é toda Apache-2.0.

2. Motor de lettering: desenhe vetores, não pixels

2.0 Use a ferramenta de lettering (padrão)

Não escreva código de lettering. Use scripts/letterer.py, que está dentro da pasta desta skill (ao lado deste SKILL.md), junto com scripts/README.md, scripts/styles.json e as fontes aprovadas em scripts/fonts/. Resolva o caminho relativo a este SKILL.md, onde quer que o repositório tenha sido clonado; nunca copie o script para um projeto. Ele já segue todas as regras desta seção e executa as verificações de QA do §5. Requisitos: Python 3.9+ com Pillow e numpy (pip install -r scripts/requirements.txt); recomendado mediapipe, que ativa a verificação automática de rosto (balões não devem ficar sobre rostos) e "tail_to": "auto".

Fluxo de trabalho:

  1. python scripts/letterer.py grid --image panel_or_page.png --out grid.png e veja a sobreposição. Leia os retângulos dos painéis, a caixa da cabeça e boca de cada falante e as áreas abertas. Em seguida, escolha a posição de cada balão e o ponto de mira do rabicho de acordo com as regras de posicionamento em comic-master comic-lettering.md §12.2 e o procedimento passo a passo em §12.7: balão em espaço aberto próximo à cabeça, rabicho apontado para a boca, mas terminando fora da cabeça. Todas as coordenadas são relativas: 0.0–1.0 a partir do canto superior esquerdo.
  2. Escreva uma especificação de página (JSON) com os itens na ordem de leitura:
{
  "image": "strip.png", "out": "strip_lettered.png",
  "panels": [[0.0125,0.03,0.329,0.97], [0.342,0.03,0.658,0.97], [0.671,0.03,0.988,0.97]],
  "avoid": "faces_mask.png",
  "items": [
    {"style": "declaration", "text": "A cidade chama. Eu respondo.", "zone": [0.03,0.06,0.31,0.24]},
    {"style": "speech", "text": "Mais alguém ouviu|esse barulho?", "at": [0.46,0.30], "tail_to": [0.52,0.52]},
    {"style": "sfx-micro", "text": "bzzt bzzt", "at": [0.39,0.62]},
    {"style": "sfx", "text": "KA-CHUNK", "at": [0.80,0.88], "size": 2.4, "rotate": -8}
  ]
}
  1. python scripts/letterer.py page spec.json. Código de saída 0 significa que todas as verificações de QA passaram; 1 significa que foi renderizado, mas o QA falhou, então leia as falhas impressas, corrija a especificação (mova o balão para mais perto do falante, aumente a zona, corte palavras, re-quebre com |) e execute novamente; 2 significa um erro (estilo desconhecido, fonte ausente, especificação inválida).
  2. Veja o PNG em tamanho real e como thumbnail. Mantenha o SVG (editável) e o _qa.json (números medidos) com a página.

Campos do item: style; text (| força uma quebra de linha, caso contrário, ele quebra automaticamente em um losango; _palavra_ sublinha para ênfase); at [x,y] centro ou zone [x0,y0,x1,y1] para caber dentro; tail_to [x,y] ponto de mira: não a boca em si, mas um ponto no espaço aberto logo fora da cabeça, na linha do balão em direção à boca, a cerca de 1 ch de distância do rosto (a ferramenta para a ponta um pouco antes, então o rabicho aponta para o falante sem tocá-lo); omita com "no_tail": true. Não use "auto": ele retorna os próprios lábios; panel índice opcional, size multiplicador, rotate (graus, sentido horário), fill (fundo), ink (contorno), text_color, font, tail_bend, link (índice de um balão anterior do mesmo falante: une os dois), bleed (true para quebrar a borda do painel de propósito), seed.

Campos da página além do básico: defaults define cores e fonte para cada item ({"fill": "#FDF6E3", "ink": "#2B2B2B", "text_color": "#1F3A7A"}); styles substitui um estilo para esta página ({"speech": {"fill": "#FFF7D6"}}); avoid padrão é "auto" (rostos detectados são protegidos), ou uma imagem de máscara, ou false.

Faça o lettering da página ou tira montada em uma única execução page, nunca painel por painel. Uma execução mantém o tamanho do lettering idêntico entre os painéis e permite que o QA verifique a ordem de leitura e sobreposições em toda a página.

Campos da página: image, out/svg/qa caminhos, panels (fortemente recomendado: usado para espaçamento de bordas, ordem de leitura e tamanho do lettering), ch (altura da capitular em px; o padrão é o lado curto do painel mediano ÷ 30, o mesmo em todos os lugares), avoid (branco = rostos, mãos ou ação principal que deve permanecer livre; construa a partir de uma passagem de segmentação), direction (ltr, ou rtl para mangá).

Estilos (execute python scripts/letterer.py styles para a lista ao vivo com usos de uma linha):

  • Diálogo: speech, speech-hand (rabicho à mão, itálico, curvo), emphasis (a linha grande; sublinhe com _word_), whisper (tracejado), strain (contorno trêmulo, amarelo pálido: palavras através dos dentes cerrados), electronic (rabicho em ziguezague).
  • Pensamentos: thought-1 (= thought, nuvem fofa), thought-2 (vieiras finas), thought-3 (oval liso com bolhas). Em caso de dúvida, use thought-1: é o padrão sempre que um balão de pensamento é solicitado sem mais detalhes. Uma trilha de pensamento precisa de pelo menos 2,5 ch de espaço aberto entre o balão e seu ponto de mira, ou o QA falha. Veja comic-master comic-lettering.md §12.8.
  • Alto: shout, shout-2 (explosão desenhada à mão), burst (sem rabicho).
  • Caixas: caption, caption-hand, declaration e declaration-hand (voz sobreposta citada; empilhe vários para baixo em uma página para um monólogo), locator, narrator.
  • SFX: sfx (na fonte, com um contorno externo branco fino), sfx-micro (sons pequenos), sfx-stack (um som repetitivo empilhado ao lado de sua fonte: "wub|wub|wub").

Mantenha um visual de diálogo por livro: ou os estilos simples ou os -hand, não uma mistura dentro de uma cena. Veja examples/styles/sheet_lettered.png na raiz do repositório para todos os estilos lado a lado. Adicione um estilo adicionando uma entrada a styles.json, nunca escrevendo novo código de desenho.

Item único rápido: python scripts/letterer.py bubble --image in.png --out out.png --text "SE ABAIXEM!" --style shout --at 0.17,0.25 --tail-to 0.155,0.47 --panel 0.0125,0.03,0.329,0.97

Se a ferramenta estiver faltando, siga as regras abaixo para construir o equivalente e ainda produza os mesmos números de QA.

  • Construa o lettering como SVG e renderize-o com resvg, cairosvg ou Chromium headless (Playwright). Vetores fornecem curvas suaves, kerning real, traços limpos e uma camada editável. Não desenhe balões com chamadas de elipse raster.
  • Use uma fonte de quadrinhos real.
    • Diálogo: Comic Neue, Patrick Hand, Anime Ace ou outra face de letras desenhadas à mão, todas em maiúsculas, uma fonte para toda a obra.
    • SFX e títulos: uma face display pesada como Bangers.
    • Nunca uma sans-serif do sistema (Arial, Helvetica, DejaVu). Falhe alto se o arquivo de fonte estiver faltando em vez de cair de volta silenciosamente.
    • Diálogo e legendas usam apenas uma face de letras desenhadas à mão, simples e vertical. Nenhuma fonte display, techno, futurística, stencil, de terror ou novidade para palavras que as pessoas devem ler: letras com barras transversais ausentes ou formas estilizadas de E/A/M tornam a leitura mais lenta e mudam o tom. Faces decorativas são apenas para SFX, títulos e logotipos.
    • Mantenha uma lista aprovada na bíblia do projeto (ex.: diálogo: Comic Neue Bold ou Anime Ace; SFX: Bangers) e recuse qualquer fonte que não esteja nela.
  • Balões são ajustados ao texto:
    1. Quebre o texto em um losango: linha superior curta, meio mais largo, linha inferior curta, sem última linha de uma palavra.
    2. Meça o bloco de texto e desenhe um oval arredondado ou superelipse ao redor dele.
    3. Aumente a parede até que cada canto do texto esteja a pelo menos uma altura de capitular de distância dela.
    • Nunca esprema o texto em uma elipse fixa.
  • Rabichos são caminhos curvos e afinados, não triângulos:
    • Base com cerca de 1/8 da largura do balão (nunca menos de ~0,8 altura de capitular), no lado mais próximo do falante.
    • Comprimento de até cerca da metade da altura do balão (ou 2,5 ch para balões pequenos), curvando-se em direção à boca e terminando a cerca de 1 ch dela. A curva segue a direção da fala (para cima e para a direita para um personagem de pé falando com alguém sentado).
    • Nunca um triângulo reto.
  • Balões nunca cobrem rostos. Use o mapa de profundidade ou o detector de rostos do MediaPipe como uma máscara de evitação e mova o balão ou seu rabicho para fora dela.
  • O lettering é dimensionado pela página, não por balão. Todos os balões em uma página usam a mesma altura de capitular, definida no campo ch. Isso mantém a hierarquia de fala consistente (não importa onde o texto caia, um personagem principal sempre parece do mesmo tamanho).
  • Ordem de leitura: itens na especificação da página na ordem em que um leitor os encontra: balões em um painel da esquerda para a direita, depois de cima para baixo; painéis na ordem de leitura. O QA verificará isso.

2.1 Formatação de texto

  • Palavras-chave em negrito para ênfase em legendas (ex.: "de repente ELES estavam lá"). Nunca itálico em quadrinhos; itálico significa um estilo de balão específico (pensamento, voz eletrônica, sussurro), não ênfase.
  • Pausa: reticências são três pontos separados por espaço ("eu… não sei"). Nunca um caractere de reticências.
  • Corte: travessão em (—espaços—) para interrupções, não um hífen simples.
  • Língua estrangeira: texto em itálico no balão com um asterisco no início: "*Senhor, por favor". A ferramenta lida com isso como um estilo separado se você precisar.
  • Pontuação e fechamento: sempre mantenha a pontuação dentro do balão, mesmo que a fala continue. Um balão nunca termina com um travessão a menos que o falante seja interrompido; para fala continuada, use um pequeno balão separado sem rabicho ligado ao primeiro.

3. Detecção: encontre letras existentes na sua arte

Se você tem um JPEG de um desenho de quadrinhos existente e não sabe onde estão os balões, use um detector. Isso permite extrair, remover e substituir letras existentes, ou cronometrar onde colocar as novas.

3.1 Escolha um detector

  • Comic Text Detector (pytorch, modelo treinado em quadrinhos): funcional, detecta letras em vários idiomas. Execute como script independente.
  • Google Vision / AWS Textract / Azure OCR: melhor para letras pequenas em objetos (placas, crachás) se o Comic Text Detector falhar devido ao tamanho ou rotação.
  • Segmentação YOLO/Detectron2: se você tiver uma necessidade de alta precisão, treine em suas próprias páginas de quadrinhos (letras como classe de segmentação).

3.2 Saída esperada

O detector produz:

  • Um mapa de máscara com caixas delimitadoras onde existe letra.
  • Um JSON ou CSV com as coordenadas de cada texto detectado: útil para medir se seu novo lettering cabe, ou para colocar balões automaticamente em espaços vazios.
  • O texto reconhecido (se o detector incluir OCR) que você pode usar para restaurar o conteúdo ou verificar a substituição de letras.

3.3 Fluxo de trabalho de remoção e substituição

  1. Detectar: execute o detector na página digitalizada. Obtenha caixas na resolução da página.
  2. Mascarar: crie uma máscara de imagem preenchendo as caixas detectadas com branco (para remover o lettering existente).
  3. Inpaint: use a máscara com uma ferramenta de inpainting (dentro do seu editor de imagens, ou via ComfyUI com um modelo de inpainting como LaMa) para preencher as áreas mascaradas com o fundo. Agora você tem uma página sem letras.
  4. Substituir: aplique sua nova camada de letras (da ferramenta de lettering) sobre a página limpa.

4. Texto em objetos (crachás, placas, sinais, letreiros)

Às vezes você precisa de texto não em um balão, mas em um objeto do mundo: um crachá, uma placa de rua, um letreiro de loja, um botão. A geração direta de texto por IA produz glifos ilegíveis na maioria das vezes; esta seção mostra como contornar isso.

4.1 Método 1: edição de imagem de texto curto (recomendado)

Usando o fluxo de trabalho de edição de imagem (para modelos FLUX ou Qwen-Image que suportam instruções):

  1. Renderize a cena sem texto (objeto vazio: placa limpa, crachá liso).
  2. No prompt de edição, instrua: "adicione o texto 'ADMIN' no centro do crachá, fonte Arial, cor branca".
  3. Verifique em 1:1; se glifos estiverem errados, tente uma fonte diferente ou torne o texto mais curto.

Limitações: funciona apenas para texto curto (1–2 palavras); letras longas ou pequenas demais se tornam garranchos. Use a geração de máscara (§3) para localizar o objeto se a edição não conseguir encontrá-lo.

4.2 Método 2: sobreposição vetorial manual

Para texto mais longo ou maior precisão:

  1. Renderize a cena com uma máscara para a área do objeto (use um mapa de profundidade ou segmentação para isolar o objeto).
  2. No pós-processamento, desenhe o texto como uma camada SVG sobre a área do objeto, escalonado e girado para corresponder à perspectiva.
  3. Mescle a camada na imagem de fundo (composição padrão do SVG).

4.3 Método 3: treine um LoRA de texto curto (avançado)

Se suas páginas de quadrinhos têm frequentemente o mesmo tipo de placa ("SAÍDA" sobre uma porta, "FECHADO" em uma janela), treine um LoRA que aprenda a forma e localização desse texto, de modo que você possa gerá-lo diretamente com o prompt.

5. Controle de qualidade (QA) e montagem de página

5.1 Verificações automáticas de QA (executadas pela ferramenta de lettering)

Para cada página letrada, o script produz um _qa.json com estas medições:

  • Distância mínima do balão ao rosto: > 1 ch de qualquer rosto detectado.
  • Tamanho mínimo do texto: o tamanho da fonte em px está dentro de ±5% do ch especificado.
  • Distância do rabicho à boca: o ponto final do rabicho está a 0,5–2,0 ch do ponto alvo.
  • Sobreposições: nenhum balão se sobrepõe a outro balão ou à borda designada (a menos que bleed: true).
  • Ordem de leitura (verifica ordem dos itens vs painéis).
  • Relação largura/altura do balão: dentro de 0,5–3,0 (não muito alongado).

5.2 Montagem de página

Monte uma página a partir de painéis individuais renderizados:

  1. Grade de layout: use a ferramenta de grade para definir retângulos de painéis na página final. Um script scripts/page_assembler.py (se existir) pega uma lista de imagens de painéis e uma especificação de grade e as coloca em uma tela de página única.
  2. Calhas: espaçamento consistente entre painéis (típico: 4–8 px para web, 12–20 px para impressão).
  3. Numerar painéis (opcional, para rascunhos de layout): adicione números de painéis no canto superior esquerdo de cada painel, usando um estilo de letra de layout (pequena, cinza).
  4. Margens da página: uma margem ao redor de toda a página, maior que as calhas (típico: 20–40 px para web, 50–100 px para impressão).
  5. Salvar como PNG ou PDF. O PDF é preferido para impressão (vetores para letras, raster para arte).

5.3 Processo de aprovação

Para uma única página:

  1. O editor (ou você) revisa os painéis em 1:1 e como thumbnail.
  2. Verifique o arquivo _qa.json para quaisquer falhas.
  3. Execute a correção de continuidade, se necessário (veja §1.4).
  4. Se o QA passar e a aprovação visual for obtida, marque a página como final.

6. Exemplo de fluxo de trabalho completo

  1. Thumbnail da página (digitalizado ou desenhado).
  2. Especificação de layout: de thumbnail para especificação JSON de painéis.
  3. Geração de painéis com ComfyUI (2–3 seeds por painel, escolha o melhor).
  4. Verificação de consistência contra a bíblia do projeto.
  5. Edições para corrigir continuidade ou adicionar texto a objetos.
  6. Geração de grade: python scripts/letterer.py grid --image page_render.png --out grid.png para escolher a posição do balão.
  7. Especificação da página com letras: escreva a especificação JSON com ordem de leitura, posições de balões e texto.
  8. Renderização de letras: python scripts/letterer.py page spec.json; verifique o código de saída e a saída.
  9. QA e aprovação: Verifique _qa.json e saída visual; repita se necessário.
  10. Exportação final: página montada como PNG (web) ou PDF (impressão).

7. Licenciamento e atribuições

  • FLUX.2 klein: Apache-2.0. Adequado para uso comercial com atribuição, se exigido pelo modelo. Verifique o cartão do modelo.
  • Z-Image-Turbo: Apache-2.0. Mesmo aviso.
  • Fontes em scripts/fonts/: cada uma tem sua própria licença (SIL OFL, Apache, etc.). Verifique antes de distribuir uma obra que usa essas fontes; a maioria permite uso comercial gratuito.
  • Comic Text Detector: MIT. Sinta-se à vontade para modificar e redistribuir.
  • Ferramenta de lettering (letterer.py): MIT.

8. Solução de problemas

ProblemaCausa provávelSolução
Painéis não correspondem às âncoras (rosto, cor)Prompt muito vago ou seed não gravadaVerifique as âncoras; use seed fixa; tente IP-adapter
Letras geradas por IA são garranchosModelo não consegue renderizar texto longoUse o método de sobreposição vetorial (§4.2) ou mantenha texto curto
Balão sobrepõe rostoavoid ausente ou ponto de mira muito próximoAdicione máscara de evitação; mova balão para cima/esquerda
Rabicho do balão parece um triângulotail_bend não definido ou muito baixoDefina tail_bend: true na especificação ou um valor como 0,3
Fonte não encontradaCaminho da fonte ausente no styles.jsonVerifique se o arquivo existe e o caminho está correto; recarregue

Para mais detalhes sobre boas páginas (âncoras, estrutura de painéis, hierarquia de fala), veja a skill comic-master.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Habilidades Relacionadas