Bonjour,
oui tu peux sauvegarder un historique d'images dans un dossier temporaire pour aller les récuperer sur demande de l'utilisateur. Il existe aussi une autre solution plus difficile à mettre en oeuvre : dans un fichier texte, tu enregistre tout ce que l'utilisateur fait à partir de l'image initiale, pour pouvoir redessiner toutes les étapes moins celle qu'il veut annuler.
Exemple : sur une image "C:\Img.bmp", l'utilisateur fait un rectangle rouge (juste contour du rectangle) du point 5;5 au point 89:122.
Dans le fichier texte :
[BEGIN]
RECT(5, 5, 89, 122, RS_CONTOUR); // Ou RS_CONTOUR permet de dessiner juste le contour.
...
[END]
Evidemment, cette solution est difficile à appliquer, mais prend infiniment moins de place que les images temporaires.
Mais la meilleure des solutions à mon avis consiste à mettre en mémoire les images dans un tableau dynamique. Cela prend beaucoup de mémoire, mais est simple à intégrer dans une application, sans avoir à sortir de fichiers (qui peuvent être tripotés par l'utilisateur et provoquer un crash de l'application dans ce cas ...).
J'espère avoir répondu à ta question !
Cordialement, Bacterius !