N Numbrush Télécharger

Comment une application de coloriage enregistre votre progression

La réponse évidente serait d’enregistrer l’image. La bonne réponse consiste à enregistrer un octet par région et à reconstruire l’image, ce qui change à la fois le coût de la sauvegarde et ce à quoi elle survit.

Quand on repose son téléphone au milieu d’un coloriage et qu’on le rouvre trois jours plus tard exactement là où on l’avait laissé, il se passe quelque chose de moins évident qu’il n’y paraît. La question mérite d’être posée à l’envers : qu’est-ce qui, précisément, a été conservé ? L’image ? Ce serait la réponse spontanée, et c’est aussi la mauvaise.

Comprendre le choix réel a des conséquences très concrètes pour qui colorie : cela explique pourquoi la reprise est instantanée, pourquoi une progression pèse moins qu’une photo, et pourquoi elle survit à certaines choses et pas à d’autres.

La solution évidente et ce qu’elle coûte

Enregistrer l’image en cours revient à écrire un fichier de plusieurs millions de pixels à chaque interruption. Sur une toile de deux mille pixels de côté, cela fait quatre millions de pixels, soit plusieurs mégaoctets une fois compressés. Écrire cela après chaque région remplie est hors de question ; on ne peut donc l’écrire que de temps en temps, ce qui signifie qu’une fermeture brutale fait perdre le travail intermédiaire.

Le problème le plus sérieux est ailleurs. Une image aplatie ne dit plus quelle région est laquelle. Elle contient des pixels colorés, pas la liste des régions terminées. Impossible d’en déduire un décompte fiable de ce qui reste, impossible d’annuler la dernière action, impossible de reprendre proprement si l’image de référence a été redessinée. On a conservé l’apparence du travail en perdant sa structure.

Ce qui est réellement enregistré

Le dessin lui-même n’a pas besoin d’être sauvegardé : il ne change pas. Il est livré une fois pour toutes, sous une forme qui associe à chaque pixel un numéro de région, accompagné d’une petite table donnant la couleur correspondant à chaque numéro. Cette matière première est identique le premier jour et le dernier.

Ce qui change au fil du travail se résume donc à une seule information par région : est-elle remplie, et si oui avec quel numéro de couleur. Un octet par région suffit très largement. Une image de trois mille régions occupe trois kilooctets, et beaucoup moins une fois compressée, puisque de longues plages de régions consécutives portent la même valeur. On est trois ordres de grandeur en dessous d’une image.

À ce prix, on peut écrire après chaque geste. Un enregistrement de quelques kilooctets est instantané et n’a aucun effet perceptible sur la fluidité. C’est ce qui explique qu’une interruption brutale, un appel entrant, une batterie vide ne coûtent presque jamais plus d’une région.

Reconstruire plutôt que restituer

À la réouverture, l’image affichée n’est pas rechargée, elle est refabriquée. On reprend la carte des régions, on lit la liste des régions remplies, et on recolorie l’ensemble en une passe. L’opération est assez légère pour tenir dans le temps d’ouverture d’un écran, et elle a une propriété intéressante : elle donne toujours le résultat exact, sans accumulation d’erreurs, quel que soit le nombre de fois où l’image a été refermée.

Cette reconstruction a une deuxième vertu. Puisque l’image finale est recalculée à partir de la carte et de la table des couleurs, on peut changer l’une ou l’autre sans toucher à la progression. Une palette retouchée, un rendu à une autre résolution, un affichage sur un écran plus grand : la liste des régions remplies reste valable, parce qu’elle ne parle pas de pixels, elle parle de régions.

Ce à quoi cela survit, et ce à quoi cela ne survit pas

Une progression ainsi enregistrée traverse sans difficulté la fermeture de l’application, le redémarrage de l’appareil, une mise à jour du logiciel et un changement de résolution d’affichage. Elle est très petite, donc une sauvegarde générale de l’appareil l’emporte au passage sans qu’on ait à s’en occuper.

Elle est en revanche indissociable de deux choses. D’abord de l’appareil : une progression vit là où elle a été écrite, et rien ne garantit qu’elle existe ailleurs si aucune synchronisation n’a été mise en place. Ensuite de la numérotation exacte du dessin : si la même image est republiée avec un découpage différent, la région numéro huit cent d’hier n’est plus celle d’aujourd’hui, et l’ancienne progression devient inapplicable — la plupart des formats gèrent cela en associant à chaque sauvegarde l’identifiant de version du dessin, et en repartant de zéro plutôt que d’afficher n’importe quoi.

Cette différence entre enregistrer une apparence et enregistrer une structure se retrouve partout en informatique graphique, mais le coloriage en donne un cas particulièrement net : c’est parce que l’on renonce à conserver l’image qu’on peut se permettre de tout conserver, tout le temps.

Questions fréquentes

Faut-il enregistrer manuellement avant de fermer ?

Dans la conception courante, non : l’enregistrement est déclenché à chaque région remplie, parce qu’il ne coûte que quelques kilooctets. Un bouton d’enregistrement explicite serait le signe qu’on écrit quelque chose de lourd, donc rarement, ce qui est justement le mécanisme qu’on cherche à éviter.

Pourquoi la reprise d’un grand coloriage est-elle presque instantanée ?

Parce que rien n’est téléchargé ni décompressé : la carte des régions est déjà présente, et la progression tient en quelques kilooctets. Le seul vrai travail est de recolorier l’image en une passe à partir de ces deux éléments, ce qui se fait en une fraction de seconde.

Une progression peut-elle être perdue en changeant de téléphone ?

Oui, si elle n’existe que dans le stockage local et qu’aucune sauvegarde de l’appareil ni synchronisation n’a été effectuée. Sa très petite taille joue en sa faveur : elle est emportée par une sauvegarde générale sans qu’on y pense, à condition que cette sauvegarde inclue bien les données de l’application.

Essayer sur une vraie toile

Numbrush est un coloriage par numéros pour adultes : mandalas, rosaces et entrelacs géométriques, douze couleurs par planche, une loupe pour les endroits étroits, et aucune sanction si le doigt tombe à côté. Gratuit, hors ligne, sans publicité ni compte.

Télécharger dans l’App Store

Guides liés

Tous les guides