Geração de Template de Página de Detalhes Visual
Entrega Padrão: Imagem Longa Editável por Modelo
- A montagem da página de detalhes usa por padrão as regras para PSD de imagem longa editável. Para cada modelo dentro do escopo de entrada, é gerada uma imagem longa independente com o conteúdo do respectivo modelo substituído, organizada por modelo.
- O layout padrão atual usa temporariamente
xiaoshanxingfenggandongku-zhong.psb(790 × 40000 px), entregando o PSB com a tela completa preservada. É possível especificar explicitamente um modelo antigo na tarefa. Código do produto, material, faixa de tamanhos e tabelas seguem as regras de fonte caractere por caractere originais. - Imagens de produto e imagens de modelo/cena usam objetos inteligentes incorporados substituíveis separadamente. Texto do produto, nomes de cores e células de tabela usam camadas de texto nativas do Photoshop. O novo modelo mestre ajusta a grade das seções S3 (seleção de tamanho), S4 (seleção rápida de tamanho) e S5 (relatório de prova) de acordo com o número real de linhas e colunas, preservando os títulos, esquema de cores, posição dos módulos e design fixo do modelo mestre.
- Quando o usuário solicitar explicitamente módulos JPG, use o fluxo JPG abaixo. Quando o usuário solicitar JPG simultaneamente, exporte conforme necessário.
Montagem por Modelo
- Levante todos os modelos no diretório raiz de entrada, verifique o modelo PSD/PSB e as camadas reais. Distinga entre design fixo e conteúdo que varia por modelo.
- Para cada modelo, prepare um JSON de tarefa e um caminho de saída independente. Vincule o texto do produto, tabela de tamanhos, seleção rápida de tamanhos, relatório de prova existente, imagens do produto, imagens de modelo/cena e outros módulos que variam por modelo. O JSON do produto existente pode ser reutilizado como fonte de dados.
- Use
scripts/build_editable_long_psd.pypara gerar o JSX por modelo e, em seguida, execute-o no Photoshop. Quando um slot do modelo mestre não puder ser correspondido ou faltar material para o respectivo modelo, liste o código do modelo, o módulo e os itens ausentes. Conteúdo dinâmico de modelos antigos, JPG mesclado ou cópias incompletas do modelo mestre não podem ser entregues como produto final para aquele modelo. - Reabra cada PSD de saída, verifique o código do modelo, conteúdo visível, editabilidade do texto e da tabela, e certifique-se de que as imagens do produto e da cena possam ser abertas separadamente como objetos inteligentes sem depender de links externos. Liste o caminho do produto final de cada modelo e os itens incompletos.
Preparação do Ambiente
Antes do primeiro uso, inicialize o ambiente Python no diretório scripts/ da skill:
cd scripts
uv sync
Se o uv não estiver instalado, execute primeiro:
- macOS/Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh - Windows:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
Após a inicialização, certifique-se de usar o Python do .venv para executar os scripts de ferramentas.
Estrutura de Entrada
A estrutura de materiais do produto geralmente é:
<raiz-entrada>/
<pasta-produto>/
product_data.json
informacoes_produto.jpg|png
selecao_tamanho.png|jpg|jpeg
selecao_rapida_tamanho.png|jpg|jpeg
imagens_transparentes/
<nome-cor>.png
imagens_modelo/
1.jpg
2.jpg
3.jpg
O diretório de template embutido é:
template/
A estrutura do template geralmente é:
template/
01informacoes_produto.jpg
02imagem_transparente.jpg
03selecao_tamanho.jpg
04tamanho_recomendado.jpg
05selecao_rapida_tamanho.jpg
imagem_modelo1.jpg
imagem_modelo2.jpg
imagem_modelo2_sobreposicao.png
imagem_modelo3.jpg
Fluxo de Execução
- Primeiro, confirme o diretório raiz de entrada e o diretório raiz de saída; por padrão, use
template/eassets/embutidos na skill. - Se o produto ainda não tiver dados estruturados, use a própria capacidade de reconhecimento de imagem do GPT para ler as três imagens
informacoes_produto,selecao_tamanhoeselecao_rapida_tamanho, combine-as para gerar um JSON do produto e salve-o emscripts/output/product_data/<nome-pasta-produto>-product_data-<timestamp>.json. - Leia as regras de conversão de imagem/tabela para dados, valide o JSON do produto, escreva conteúdo incerto em
warningse não invente. - Antes de executar o script de renderização, verifique se existem materiais de imagem de modelo para o produto; se existirem imagens de modelo legíveis, use obrigatoriamente a seleção estética por IA para selecionar imagens/recortes, produza as coordenadas dos pixels da imagem fonte para cada imagem de modelo disponível e salve em
scripts/output/visual_model_selection/visual_model_selection-<timestamp>.json. - Execute o script de processamento em lote genérico; não permita codificar nomes de produtos ou dados de produtos; se um JSON de coordenadas de IA foi gerado nesta rodada, passe-o explicitamente com
--visual-model-selection "<caminho-json-coordenadas>", e não dependa de fallback automático ou espera automática do script. - Gere uma subpasta de saída separada para cada produto, mantendo o nome original da pasta do produto.
- As imagens finais só devem ser geradas em
--output-root/<nome-pasta-produto>/; o relatório de processamento em lote é gerado uniformemente emscripts/output/report/render_report-<timestamp>.json. - Se o usuário solicitar "arquivos em camadas", "PSD", "ajuste secundário no Photoshop" ou entrega para revisão do designer, use
scripts/create_layered_psd_package.py; ele gera simultaneamente a lista de JPGs, PSDs e o script de montagem JSX do Photoshop. - Após a saída, faça uma verificação visual e de dimensões, especialmente verificando bordas brancas, linhas verdes residuais, fantasmas de tabelas, texto desalinhado, variação de tamanho em imagens transparentes e corte de imagens de modelo.
- Leia o relatório para confirmar que todas as imagens de modelo com coordenadas têm
modeigual avisual_model_selection; se houver fallback paracover_crop, explique item por item se foi por coordenada ausente, coordenada inválida, arquivo fonte inexistente ou incapacidade do ambiente atual de fazer julgamento visual confiável.
Fluxo de Arquivos Camada do Photoshop
Quando o usuário precisar de arquivos ajustáveis secundariamente pelo designer, use o fluxo de camadas do Photoshop:
cd scripts
uv run python create_layered_psd_package.py `
--input-root "<raiz-entrada>" `
--output-root "<raiz-saida>"
O script gera em <raiz-saida>/_photoshop_layered/:
layered_psd_manifest.json
build_layered_psd.jsx
Em seguida, chame o Photoshop para gerar os PSDs:
powershell -ExecutionPolicy Bypass -File run_photoshop_jsx.ps1 `
-JsxPath "<raiz-saida>/_photoshop_layered/build_layered_psd.jsx"
Os PSDs são gerados em:
<raiz-saida>/<nome-pasta-produto>/_psd/
Convenção de camadas:
- Fundo do template é separado como
00 Fundo do Template. - Conteúdo de substituição dinâmica é organizado em camadas ligáveis/desligáveis, como imagem transparente do produto, foto de modelo, camadas de tabela, cor de fundo da área de dados.
- Cada PSD contém por padrão uma camada oculta
99 Referência de Produto Final (Oculta)para o designer verificar. - Tabelas e texto misto complexo são mantidos como camadas de pixel para consistência visual; informações do produto e nomes de cores são, na medida do possível, gerados como camadas de texto do Photoshop para ajustes finos secundários.
- Se desejar apenas reconstruir o PSD a partir de JPGs/materiais existentes sem re-renderizar os JPGs, adicione
--skip-jpg-render.
Regras de Leitura Obrigatória
Leia as referências correspondentes de acordo com a tarefa:
- Antes de processar qualquer tarefa em lote, leia as regras de execução em lote.
- Quando precisar conhecer os recursos de fonte fixa, leia as regras de recursos embutidos.
- Quando precisar conhecer ou substituir recursos de template, leia as regras de recursos de template embutidos.
- Quando precisar obter dados de imagens/materiais de tabela, leia as regras de conversão de imagem/tabela para dados.
- Ao desenhar texto ou encontrar problemas de fonte, leia as regras de fontes e texto.
- Ao processar
01informacoes_produto.jpg, leia as regras de informações do produto. - Ao processar
02imagem_transparente.jpg, leia as regras de imagem transparente. - Ao processar
03selecao_tamanho.jpgou05selecao_rapida_tamanho.jpg, leia as regras de tabela. - Ao processar
imagem_modelo1.jpg,imagem_modelo2.jpg,imagem_modelo3.jpg, leia as regras de imagem de modelo. - Quando precisar usar coordenadas de corte estético subjetivo por IA, leia as regras de seleção inteligente de recorte de imagem de modelo.
- Ao usar ou manter scripts, leia a documentação de scripts.
- Quando precisar exportar arquivos PSD em camadas ou controlar o Photoshop, leia as regras de arquivos PSD em camadas do Photoshop.
Scripts Atuais
scripts/detail_template_replacer_2000.py
scripts/main.py
scripts/create_layered_psd_package.py
scripts/run_photoshop_jsx.ps1
scripts/create_product_data_template.py
scripts/validate_product_data.py
Execução
Exemplo de comando:
cd scripts
uv run python main.py `
--input-root "<raiz-entrada>" `
--output-root "<raiz-saida>"
Se houver materiais de imagem de modelo nesta rodada, gere primeiro visual_model_selection-<timestamp>.json e, em seguida, passe explicitamente o arquivo de coordenadas:
cd scripts
uv run python main.py `
--input-root "<raiz-entrada>" `
--output-root "<raiz-saida>" `
--visual-model-selection "output/visual_model_selection/visual_model_selection-<timestamp>.json"
Se usar um diretório de dados externo ou diretório de template externo:
cd scripts
uv run python main.py `
--input-root "<raiz-entrada>" `
--output-root "<raiz-saida>" `
--data-dir "<diretorio-dados>" `
--template-dir "<diretorio-template-personalizado>" `
--visual-model-selection "<visual_model_selection-json>"
Padrões de Aceitação
- Cada pasta de produto de entrada deve ser processada ou ter o motivo do não processamento reportado.
- Todas as imagens de saída devem ter largura de 790px.
- Texto fixo do template, fundo, blocos verdes, logotipo, linhas decorativas e camadas de sobreposição não podem ser danificados por desenho dinâmico.
- Os dados do produto devem vir de
product_data.jsonou de um arquivo estruturado equivalente, não podem ser codificados em Python. - Valores vazios devem ser deixados vazios, sem preenchimento de valores padrão e sem inferência.
- Não podem aparecer bordas brancas, linhas verdes residuais, fantasmas de tabelas, linhas verticais brancas em cabeçalhos verdes.
- O tamanho e a espessura da fonte devem ser consistentes para o mesmo tipo de texto; números mistos não podem pular para cima e para baixo.
- O tamanho visual das imagens transparentes na mesma página deve ser consistente; os nomes das cores devem estar próximos ao produto e na mesma linha de base.
- O corpo principal da imagem do modelo não pode ser deformado; a prioridade é garantir a integridade da cabeça e do corpo.
- O processamento em lote que contém materiais de imagem de modelo deve primeiro gerar o JSON de coordenadas de IA e depois executar o script; no relatório, a imagem de modelo correspondente deve exibir
visual_model_selection, a menos que o motivo da impossibilidade de usar coordenadas de IA tenha sido explicitamente explicado.