Localizar Capturas de Pantalla de la App Store
Preserva el arte gráfico aprobado y localiza solo su copia de marketing. Renderiza el texto final de forma determinista con fuentes instaladas, compón solo dentro de la región de copia aprobada, y usa asc para revisar/aplicar para la entrega remota.
Flujo de Trabajo
- Inventario de los PNG fuente, orden, dimensiones, familias de dispositivos y capturas remotas existentes.
- Redacta la copia nativa del mercado. Preserva la idea de venta; no traduzcas literalmente cuando la redacción se vuelva forzada. Mantén los saltos de línea intencionales.
- Inspecciona cada imagen fuente antes de editar.
- Prepara una imagen maestra limpia eliminando solo la copia de marketing fuente. Prefiere una imagen maestra limpia aprobada existente. Si es necesaria la limpieza, usa una máscara ajustada y preserva cada píxel fuera de ella.
- Renderiza la copia localizada exacta con
scripts/render_localized_text.py. Usa una fuente instalada con cobertura de glifos confirmada; nunca uses generación de imágenes para dibujar el texto final. - Define un cuadro de región de texto ajustado y verifica que el mapa de bits final difiera de la fuente aprobada solo dentro de él.
- Revisa una hoja de contacto etiquetada, luego inspecciona cada título CJK al 100% de escala para ver glifos exactos, ortografía, ajuste de línea, jerarquía y costuras de limpieza.
- Valida dimensiones, opacidad RGB, cantidad de archivos, orden, copia exacta del manifiesto y cero píxeles cambiados fuera de cada región permitida.
- Genera artefactos de revisión ASC, inspecciónalos, apruébalos y súbelos con
plan/applysolo cuando sus grupos planificados coincidan exactamente con la matriz de configuración regional/tipo de pantalla prevista. Nunca elimines ni reemplaces capturas remotas sin autorización explícita. - Lista las capturas remotas nuevamente y verifica la configuración regional, la familia de dispositivos, la cantidad y el estado de procesamiento.
Límite de Generación de Imágenes
No le pidas a un modelo de imágenes que renderice la copia localizada final. El texto generativo puede contener glifos sustituidos, restos o caracteres alucinados, incluso si el prompt dice textualmente.
Usa la generación de imágenes solo cuando no se pueda producir un parche de fondo limpio localmente, y solicita eliminación en lugar de reemplazo:
Caso de uso: precise-object-edit
Tipo de activo: imagen maestra limpia para una captura de pantalla de App Store localizada
Imagen de entrada: destino de edición
Solicitud principal: Elimina solo la copia de marketing existente y reconstruye el fondo.
Restricciones: Preserva el fondo, la maqueta del dispositivo, la perspectiva, la iluminación, cada píxel de la pantalla del producto, los colores, el recorte y la relación de aspecto. No traduzcas ni redibujes la UI del producto.
Evitar: cualquier texto, letras, símbolos, marca de agua, rediseño, cambios de dispositivo, cambios de UI o imágenes de producto alteradas.
Rechaza el resultado si cambia la composición o el arte gráfico protegido. Nunca uses el mapa de bits generado completo; compón solo un parche de limpieza revisado dentro de la región permitida.
Composición Determinista
Prepara una imagen maestra limpia localmente cuando la copia fuente sea clara sobre un fondo texturizado:
python scripts/prepare_clean_master.py \
--source /ruta/a/imagen-aprobada.png \
--output /ruta/a/imagen-maestra-limpia.png \
--box x,y,ancho,alto
Renderiza texto exacto desde un manifiesto JSON:
python scripts/render_localized_text.py --manifest /ruta/a/manifiesto-texto.json
python scripts/verify_localized_text.py --manifest /ruta/a/manifiesto-texto.json
Crea un manifiesto JSON usando el esquema en references/manifest.md, luego ejecuta:
python scripts/compose_localized_patch.py --manifest /ruta/a/manifiesto.json
El script redimensiona la edición generada a las dimensiones exactas de la fuente, combina solo dentro del rectángulo permitido más un borde difuminado, escribe un PNG RGB opaco y verifica que los píxeles decodificados fuera de la región permitida sean idénticos a la fuente.
No agrandes un cuadro para ocultar la deriva del modelo. Ajusta alrededor de la copia de marketing. Nunca incluyas UI del producto en la región permitida.
QA de la App Store
- Preserva las dimensiones de la fuente a menos que estés apuntando a un tipo de pantalla de Apple diferente.
- Requiere salida RGB opaca; rechaza PNG con canal alfa.
- Mantén un conjunto ordenado por escaparate y tipo de pantalla.
- Usa fuentes/glifos apropiados para el mercado e inspecciona visualmente la salida CJK.
- Confirma cada título a escala de miniatura y cada subtítulo a escala del 100 %.
- Compara el texto visible carácter por carácter con el manifiesto revisado. El OCR puede ayudar en la QA de escritura latina pero nunca reemplaza la inspección visual CJK.
- Rechaza letras fuente residuales, trazos duplicados, glifos de reemplazo, cuadros de tofu, puntuación inesperada o texto generado por modelo.
- Trata cero cambios de píxeles fuera de la región como un invariante estricto.
Seguridad en la Subida a ASC
Lee las habilidades instaladas asc-shots-pipeline y asc-cli-usage antes de subir. Confirma las banderas actuales con asc screenshots --help y --help de comandos específicos.
Prefiere:
asc screenshots review-generate --framed-dir OUTPUT_ROOT --output-dir REVIEW_DIR
asc screenshots review-open --output-dir REVIEW_DIR
asc screenshots review-approve --all-ready --output-dir REVIEW_DIR
asc screenshots plan --app APP_ID --version VERSION --review-output-dir REVIEW_DIR --output json
asc screenshots apply --app APP_ID --version VERSION --review-output-dir REVIEW_DIR --confirm --output json
Si plan/apply no puede expresar la asignación de configuración regional prevista, resuelve el ID de localización de versión exacto y usa asc screenshots upload solo para esa configuración regional. Lista las capturas antes y después. No asumas que la subida reemplaza las capturas existentes; inspecciona primero el comportamiento del CLI y los límites de Apple.
Algunas dimensiones son aceptadas por múltiples tipos de pantalla de Apple. Por ejemplo, 1290x2796 puede validarse tanto como APP_IPHONE_67 como APP_IPHONE_69. Si la salida del plan duplica los mismos archivos en varios tipos de pantalla, no lo apliques. Ejecuta una subida con ámbito de aplicación con un --device-type explícito, después de una ejecución de prueba coincidente:
asc screenshots upload --app APP_ID --version-id VERSION_ID --path OUTPUT_ROOT --device-type APP_IPHONE_67 --dry-run
asc screenshots upload --app APP_ID --version-id VERSION_ID --path OUTPUT_ROOT --device-type APP_IPHONE_67
Recursos
scripts/compose_localized_patch.py: composición y validación bloqueadas a nivel de píxel.references/manifest.md: esquema del manifiesto y ejemplo.