CommunityImagegithub.com

huihuisang/localize-app-store-screenshots

Localisez le texte marketing intégré dans vos captures d'écran App Store PNG tout en préservant l'imagerie originale pixel par pixel en dehors des zones de texte explicites.

Qu'est-ce que localize-app-store-screenshots ?

Cette compétence permet de localiser le texte marketing dans les captures d'écran App Store existantes (PNG) sans altérer l'artwork approuvé. Elle est particulièrement utile pour adapter des captures déjà conçues à d'autres langues de l'App Store, remplacer les titres sans refaire le design, ou préparer des captures validées pour téléchargement via l'outil en ligne de commande `asc`. La compétence repose sur un workflow déterministe : inventorier les PNG sources, rédiger des copies adaptées au marché local, nettoyer un master en supprimant uniquement le texte existant, puis composer le nouveau texte à l'aide de scripts Python et de polices installées. Elle interdit strictement l'utilisation de modèles génératifs pour produire du texte final, car ceux-ci peuvent introduire des erreurs de glyphes. Toutes les étapes sont automatisées par des scripts (`render_localized_text.py`, `prepare_clean_master.py`, `compose_localized_patch.py`, `verify_localized_text.py`) et validées par des vérifications pixel par pixel, garantissant qu'aucun pixel en dehors de la zone de texte autorisée n'est modifié. Pour l'upload, elle propose l'utilisation des commandes `asc screenshots` (review-generate, review-approve, plan/apply) avec des vérifications de sécurité explicites pour éviter toute suppression ou remplacement non autorisé de captures distantes. Elle est conçue pour Claude Code ou tout agent capable d'exécuter ces scripts Python et commandes CLI en local.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/huihuisang/ajigu-skills/tree/HEAD/skills/localize-app-store-screenshots

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

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Localiser les captures d'écran App Store

Préservez l'artwork approuvé et ne localisez que son texte marketing. Rendez le texte final de manière déterministe avec des polices installées, composez uniquement dans la zone de copie approuvée, et utilisez asc pour la révision et l'application de la livraison à distance.

Workflow

  1. Inventoriez les PNG sources, leur ordre, dimensions, familles d'appareils et les captures d'écran distantes existantes.
  2. Rédigez une copie adaptée au marché local. Préservez l'idée de vente ; ne traduisez pas littéralement lorsque la formulation devient maladroite. Gardez les sauts de ligne intentionnels.
  3. Inspectez chaque image source avant modification.
  4. Préparez un master propre en supprimant uniquement le texte marketing source. Préférez un master propre approuvé existant. Si un nettoyage est nécessaire, utilisez un masque serré et préservez chaque pixel en dehors.
  5. Rendez la copie localisée exacte avec scripts/render_localized_text.py. Utilisez une police installée avec une couverture de glyphes confirmée ; n'utilisez jamais la génération d'images pour dessiner le texte final.
  6. Définissez une boîte de zone de texte serrée et vérifiez que le bitmap final ne diffère de la source approuvée qu'à l'intérieur de celle-ci.
  7. Examinez une planche contact étiquetée, puis inspectez chaque titre CJK à 100 % pour vérifier les glyphes exacts, l'orthographe, le retour à la ligne, la hiérarchie et les coutures de nettoyage.
  8. Validez les dimensions, l'opacité RVB, le nombre de fichiers, l'ordre, la copie exacte du manifeste et zéro pixel modifié en dehors de chaque région autorisée.
  9. Générez les artefacts de révision ASC, inspectez-les, approuvez-les et téléchargez-les avec plan/apply uniquement lorsque ses groupes planifiés correspondent exactement à la matrice locale/type d'affichage prévue. Ne supprimez ni ne remplacez jamais de captures d'écran distantes sans autorisation explicite.
  10. Listez à nouveau les captures d'écran distantes et vérifiez la locale, la famille d'appareils, le nombre et l'état de traitement.

Limite de la génération d'images

Ne demandez pas à un modèle d'image de rendre la copie localisée finale. Le texte génératif peut contenir des glyphes substitués, des résidus ou des caractères hallucinés, même lorsque l'invite est textuelle.

Utilisez la génération d'images uniquement lorsqu'un patch d'arrière-plan propre ne peut pas être produit localement, et demandez la suppression plutôt que le remplacement :

Cas d'utilisation : modification précise d'objet
Type d'actif : master propre pour une capture d'écran App Store localisée
Image d'entrée : cible de modification
Requête principale : Supprimez uniquement le texte marketing existant et reconstruisez l'arrière-plan.
Contraintes : Préservez l'arrière-plan, le mockup d'appareil, la perspective, l'éclairage, chaque pixel de l'écran produit, les couleurs, le recadrage et le rapport d'aspect. Ne traduisez ni ne redessinez l'interface utilisateur du produit.
Évitez : tout texte, lettres, symboles, filigrane, refonte, changements d'appareil, changements d'interface utilisateur ou imagerie produit altérée.

Rejetez le résultat si la composition ou l'artwork protégé change. N'utilisez jamais le bitmap généré complet ; ne composez qu'un patch de nettoyage révisé dans la région autorisée.

Composition déterministe

Préparez un master propre localement lorsque la copie source est légère sur un fond texturé :

python scripts/prepare_clean_master.py \
  --source /chemin/vers/approved.png \
  --output /chemin/vers/clean-master.png \
  --box x,y,largeur,hauteur

Rendez le texte exact à partir d'un manifeste JSON :

python scripts/render_localized_text.py --manifest /chemin/vers/text-manifest.json
python scripts/verify_localized_text.py --manifest /chemin/vers/text-manifest.json

Créez un manifeste JSON en utilisant le schéma dans references/manifest.md, puis exécutez :

python scripts/compose_localized_patch.py --manifest /chemin/vers/manifest.json

Le script redimensionne l'édition générée aux dimensions exactes de la source, ne fusionne qu'à l'intérieur du rectangle autorisé avec un bord dégradé, écrit un PNG RVB opaque et vérifie que les pixels décodés en dehors de la région autorisée sont identiques à la source.

N'élargissez pas une boîte pour masquer la dérive du modèle. Resserez-la autour du texte marketing. N'incluez jamais l'interface utilisateur du produit dans la région autorisée.

Assurance qualité App Store

  • Préservez les dimensions source, sauf si vous ciblez un type d'affichage Apple différent.
  • Exigez une sortie RVB opaque ; rejetez les PNG avec canal alpha.
  • Gardez un ensemble ordonné par storefront et type d'affichage.
  • Utilisez des polices/glyphes adaptés au marché et inspectez visuellement la sortie CJK.
  • Confirmez chaque titre à l'échelle de la vignette et chaque sous-titre à 100 %.
  • Comparez le texte visible caractère par caractère avec le manifeste révisé. L'OCR peut aider au contrôle qualité pour les scripts latins, mais ne remplace jamais l'inspection visuelle CJK.
  • Rejetez les lettres sources résiduelles, les traits en double, les glyphes de remplacement, les boîtes tofu, la ponctuation inattendue ou le texte généré par modèle.
  • Considérez zéro changement de pixel en dehors de la région comme une invariante stricte.

Sécurité du téléchargement ASC

Lisez les compétences installées asc-shots-pipeline et asc-cli-usage avant le téléchargement. Confirmez les drapeaux actuels avec asc screenshots --help et l'option --help spécifique à chaque commande.

Préférez :

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 ne peut pas exprimer le mappage de locale prévu, résolvez l'ID exact de version-localisation et utilisez asc screenshots upload pour cette locale uniquement. Listez les captures d'écran avant et après. Ne supposez pas que le téléchargement remplace les captures d'écran existantes ; inspectez d'abord le comportement de l'interface en ligne de commande et les limites d'Apple.

Certaines dimensions sont acceptées par plusieurs types d'affichage Apple. Par exemple, 1290x2796 peut être validé à la fois pour APP_IPHONE_67 et APP_IPHONE_69. Si la sortie de plan duplique les mêmes fichiers sur plusieurs types d'affichage, ne l'appliquez pas. Exécutez un téléchargement à l'échelle de l'application avec un --device-type explicite, après une simulation correspondante :

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

Ressources

  • scripts/compose_localized_patch.py : composition et validation pixel-locked.
  • references/manifest.md : schéma du manifeste et exemple.

Skills associés