2026 — Livraison jeux & UI : PNG nine-patch Android, alignement zones d’étirement et de contenu, cadre 1 px et checklist d’acceptation batch sur Mac M4 distant

Public : designers et front livrant des .9.png Android (HUD, bulles, boutons). Les rejets viennent d’un cadre 1 px ambigu, d’un étirement mal aligné à la grille device ou d’un ICC absent au packaging Gradle.

Contenu : spec étirement / padding, tableau cadre–transparence–échelle–sRVB, workflow lot, FAQ couleur & coutures, réglages batch Mac M4. Poursuivre avec sRGB / Display P3, Figma alignement pixel, QA PNG par lot.

Sommaire

Interprétation de la spécification

Le .9.png ajoute une jupe 1 px : haut + gauche = colonnes/rangées étirables (noir opaque) ; bas + droite = padding du contenu enfant. Coins 100 % transparents. Sur l’anneau, seuls transparent total et noir plein sont valides — gris, dégradé ou adouci déplacent le padding d’~1 dip et font « mordre » le texte sur les coins.

Causes fréquentes de retour build : étirement trop fin à l’échelle device ; padding ticket ≠ marques exportées ; anneau flou ; ICC manquant ou mélange P3 / sRVB. Le graphisme utile reste à ≥ 1 px à l’intérieur du ring.

Sujet Règle cadre 1 px Bord transparent Échelle (@1x … @3x) Export sRGB
Marques d’étirement (haut + gauche) Noir continu ; viser au moins 2 px de large par axe à l’export natif Cellules sans marque 100 % transparentes Facteurs 1,0 / 1,5 / 2,0 / 3,0 ; éviter le double arrondi Embarquer sRGB IEC61966-2.1 ; P3 seulement si dérogation écrite
Marques de padding (bas + droite) Aligner sur les insets ticketés ; symétrie par défaut Coins transparents pour décoder les deux axes Revérifier les dp dans l’inspecteur de layout après export Même ICC que l’étirement ; une seule chaîne d’outils par drop
Graphisme intérieur Pixels utiles ≥ 1 px à l’intérieur du cadre Plume et halo restent à l’intérieur, pas sous la jupe Rastériser à la densité cible ; documenter tout affûtage après réduction sRVB puis recompression sans perte ; journaliser l’ICC dans le manifeste

Les facteurs Android 1,0, 1,5, 2,0 et 3,0 doivent dériver d’un même master logique : évitez de multiplier les arrondis intermédiaires entre outils de design et scripts CLI, sinon une bande marquée comme « deux pixels » en maquette devient une colonne bruitée sur un écran xxhdpi réel. Lorsque plusieurs outils touchent le fichier, journalisez la version de chaque étape dans le manifeste pour reproduire exactement un build accepté en revue. Une phrase d’intention dans le ticket — « stretch horizontal uniquement » — évite les interprétations divergentes entre artistes et intégrateurs.

Workflow d’export par lot

Même définition de « prêt à merger » pour le studio et la CI : dossiers, scripts et manifeste alignés.

  1. Geler dp, rayons, bords étirables ; un master par densité (mdpi→xxhdpi) pour tracer le padding.
  2. Marques en dernier : calque vectoriel sur grille, traits 1 px nets, fusion pour diff rapide entre builds.
  3. Arborescence drawable-*dpi homogène pour scripts d’octets par bucket.
  4. Chaîne macOS unique (sips / ImageMagick) sur tout le sprint pour ICC stable.
  5. Portillons : alpha obligatoire ; RVB 1–254 sur l’anneau = rejet ; option dimensions impaires interdites.
  6. Manifeste : sha256, px_w, px_h, density, icc, version preset — la CI différencie régression graphique et renommage.

Repères sprint : 2 px transparents aux coins du cadre ; sans ICC = dérogation signée ; HUD xhdpi souvent < 180 Ko sans animation embarquée.

FAQ : dérives de couleur & crénelage

Pourquoi les gris neutres « tournent » après étirement ?

Alpha prémultipliée + gamma déplacent les tons. Utilisez alpha droit si la chaîne l’exige, embarquez sRVB, validez sur téléphone milieu de gamme plutôt qu’en Display P3 studio.

Couture « marches d’escalier » ?

Zone étirable trop fine ou dégradé dans la zone marquée : élargir aplats, déplacer dégradés hors marques.

WebP à la place ?

Pas en drop-in des View classiques ; migration Compose / vectoriel = autre chantier. Ici : PNG .9 contractuel legacy et kits jeu.

Paramètres de traitement batch sur Mac M4 distant

Un Mac mini M4 loué pour les passes nocturnes stabilise chemins absolus et laisse la mémoire unifiée charger de nombreux PNG pendant les mesures d’alpha sur la jupe. Débutez avec des seuils larges, puis resserrez quand les faux positifs tendent vers zéro. Sur un nœud partagé, isolez les jobs dans un compte système dédié et des répertoires locaux non synchronisés cloud pour éviter latence et fichiers fantômes qui faussent le debounce.

  • Workers ImageMagick ≤ cœurs physiques − 1.
  • Debounce 20–40 s après la dernière écriture avant QA.
  • Alpha 1–254 dans couronne 2 px du cadre = échec sauf waiver documentée.
  • Octets : HUD xhdpi souvent < 180 Ko ; chrome lourd ≤ 400 Ko sans animation dans le fichier.
  • ICC sRVB embarqué ou dispense signée jointe au manifeste.

Synthèse & conversion

En 2026, le .9.png reste prévisible si la jupe est traitée comme une spec binaire : tableau, workflow lot et seuils M4 documentés réduisent les allers-retours design–build sur les kits HUD jeu.

Consultation sans compte : accueil, achat, tarifs, aide SSH/VNC pour brancher un worker Mac M4 distant.

Choisir votre nœud Mac et l’accès distant

Automatiser la QA nine-patch et les lots PNG sur Apple Silicon

Louer maintenant Voir les tarifs et nœuds Guide SSH / VNC
Nine-patch PNG 2026 QA batch sur Mac distant
Louer