3. Desfer

Almost anything you do to an image in GIMP can be undone. You can undo the most recent action by choosing EditUndo from the main menu, but this is done so frequently that you really should memorize the keyboard shortcut, Ctrl+Z.

Undoing can itself be undone. After having undone an action, you can redo it by choosing EditRedo from the main menu, or use the keyboard shortcut, Ctrl+Y. It is often helpful to judge the effect of an action by repeatedly undoing and redoing it. This is usually very quick, and does not consume any extra resources or alter the undo history, so there is never any harm in it.

[Atenció] Atenció

Si desfeu una o més accions i després opereu sobre la imatge de qualsevol manera, excepte desfent o refent, ja no serà possible refer aquestes accions: es perdran per sempre. La solució, si això us suposa un inconvenient, és duplicar la imatge i després operar sobre la còpia (no sobre l'original, perquè l'historial de desfer/refer no es copia quan es duplica una imatge).

Si us trobeu sovint desfent i refent molts passos alhora, pot ser més convenient treballar amb el diàleg de l'historial de desfer. És un diàleg acoblable que mostra un petit esborrany per a cada punt de l'historial de desfer, i permet retrocedir o avançar, cap a un cert punt, fent-hi clic.

Desfer es duu a terme específicament per a cada imatge: l'«historial de desfer» és un dels components d'una imatge. Per a aquest propòsit, el GIMP utilitza una certa quantitat de memòria per a cada imatge. Podeu personalitzar les preferències per a incrementar o reduir aquesta quantitat, utilitzant la pàgina Recursos del sistema del diàleg de preferències. Aquí hi ha dues variables importants: la quantitat mínima de nivells de desfer, que el GIMP mantindrà malgrat la quantitat de memòria que es consumeixi, i la memòria màxima per a desfer, que, si se sobrepassa, el GIMP començarà a eliminar els articles més antics de l'historial de desfer.

[Nota] Nota

Si bé l'historial de desfer és un component de la imatge, no es desa quan deseu la imatge amb el format nadiu del GIMP, XCF, que conserva totes les altres propietats de la imatge. Quan la imatge es torna a obrir, té un historial de desfer buit.

La implementació de desfer en el GIMP és prou sofisticada. Moltes de les operacions requereixen molt poca memòria de desfer (per exemple, canviar la visibilitat a una capa), així que podeu efectuar seqüències llargues d'aquestes abans que es comencin a eliminar de l'historial de desfer. Algunes operacions (canviar la visibilitat a una capa és de nou un bon exemple) són comprimides, i per això efectuar-les diverses vegades produeix un sol punt en l'historial de desfer. No obstant això, hi ha altres operacions que poden consumir una gran quantitat de memòria de desfer. La majoria dels filtres estan implementats per connectors, i el GIMP no té una manera eficient de saber què ha canviat. Pel que l'única forma d'implementar l'operació desfer és memoritzant el contingut complet de la capa afectada abans i després de l'operació. Podríeu efectuar només unes quantes operacions d'aquestes abans que es comencin a eliminar de l'historial de desfer.

3.1. Accions que no es poden desfer

Most actions that alter an image can be undone. Actions that do not alter the image generally cannot be undone. Examples include saving the image to a file, duplicating the image, copying part of the image to the clipboard, etc. It also includes most actions that affect the image display without altering the underlying image data. The most important example is zooming. There are, however, exceptions: toggling Quick Mask on or off can be undone, even though it does not alter the image data.

Hi ha unes poques accions importants que alteren una imatge però no poden desfer-se:

Tancar la imatge

L'historial de desfer és un component de la imatge, així que quan una imatge es tanca i tots els seus recursos són alliberats, l'historial desapareix. Per això, llevat que la imatge no hagi estat modificada des de l'última vegada que va ser desada, el GIMP sempre us demana que confirmeu si realment voleu tancar-la.

Revertir la imatge

«Revertir» significa recarregar la imatge del fitxer. El GIMP, en realitat, implementa això tancant la imatge i creant-ne una de nova, així que, com a conseqüència, es perd l'historial de desfer. Per això, si la imatge no va ser desada, el GIMP demana que confirmeu que realment voleu revertir la imatge a l'estat anterior.

«Porcions» d'accions

Algunes eines requereixen dur a terme una sèrie complexa de manipulacions abans que facin efecte, però només permet desfer l'acció sencera en comptes dels elements individuals. Per exemple, les tisores intel·ligents requereixen crear un camí tancat fent clic en múltiples punts de la imatge, i fer clic dins del camí per a crear una selecció. No es poden desfer les pulsacions individualment: si es desfà després d'acabar, es torna al punt inicial. Un altre exemple: quan treballeu amb l'eina Text, no podeu desfer cada caràcter individualment, ni els canvis d'estil de lletra, etc. Desfer, després d'acabar, esborra la capa de text creada.

Filters, and other actions performed by plug-ins or scripts, can be undone just like actions implemented by the GIMP core, but this requires them to make correct use of GIMP's Undo functions. If the code is not correct, a plug-in can potentially corrupt the Undo History, so that not only the plug-in but also previous actions can no longer properly be undone. The plug-ins and scripts distributed with GIMP are all believed to be set up correctly, but obviously no guarantees can be given for plug-ins you obtain from other sources. Also, even if the code is correct, canceling a plug-in while it is running may corrupt the Undo History, so it is best to avoid this unless you have accidentally done something whose consequences are going to be very harmful.