El diff predeterminado de Git no muestra diferencias entre imágenes. Es
normal: no está pensado para eso. Sin embargo, estaría genial que Git
mostrase los cambios de imágenes como los de código, ¿no? Al menos algo
más bonito que...
$ git diff
diff --git a/es-ES/images/autobuilder.png b/es-ES/images/autobuilder.png
index 6f5f6eb..6f0dd78 100644
Binary files a/es-ES/images/autobuilder.png and b/es-ES/images/autobuilder.png differ
Algo como esto...
Eso lo he hecho usando un guion que usa la biblioteca ImageMagick para
comparar imágenes. Aquí te enseño cómo hacer lo mismo.
Hay muchas formas y programas útiles para hacer esto. Aquí os cuento mi
método:
Si no tienes ffmpeg, instálalo (en distribuciones de GNU/Linux
basadas en Debian con sudo apt-get install ffmpeg).
Separa el vídeo en fotogramas:
mkdir fotogramas && ffmpeg -i tuvideo fotogramas/fotograma%04d.png (los
fotogramas se guardarán en la carpeta fotogramas).
Borra los fotogramas que no necesites (paso opcional).
Une los fotogramas extraídos creando un gif con el programa
adecuado. Puedes usar animate
(animate fotograma*.png anim.gif) para hacerlo rápido, pero si
buscas controlar mejor el espacio de tiempo entre fotogramas utiliza
convert (convert -delay 0 -loop 0 fotograma*.png anim.gif).
-delay num indica el tiempo entre los fotogramas y -loop 0
quiere decir que cuando acabe de reproducir las imagenes empezará
de nuevo. Estas herramientas suelen estar ya instaladas en muchas
distribuciones de GNU/Linux, forman parte de ImageMagick
(http://imagemagick.org/script/index.php).
¿Alguna vez has querido ocultar un mensaje o un archivo en una imagen?
Se puede hacer muy fácilmente en menos de treinta segundos.
En la imagen de arriba lo veis. Realmente, solo hace falta usar la
instrucción echo 'Tu mensaje' >> tu_imagen, lo demás es solo para
demostraros que funciona y para enseñaros a después el mensaje. La
imagen se puede abrir posteriormente sin problema; tiene la misma
apariencia. La única diferencia es que ocupa más espacio. En el ejemplo
que os he mostrado, la imagen ocupa 15 bytes más que antes, después de
haber escrito el mensaje.
¿No entendéis todo el código que he escrito? Tranquilos, ahora lo
explico. file favicon.png, me dice el tipo del archivo. ls -l
muestra información detallada de todos los archivos del directorio en el
que me encuentro. Como solo hay uno, solo aparece la imagen. El número
2588 que aparece tras ejecutarlo es tamaño en bytes de la imagen. Con
ls -lh puedo ver el tamaño en un formato más legible, en kilobytes en
vez de en bytes. Como solo me interesa el tamaño, paso ls -lh a cut
-d" " -f5 por una tubería para que solo me aparezca la columna 5, cada
columna está separada por un espacio (" "). Por último, leo el mensaje
oculto con strings, que extrae todos los caracteres alfanuméricos
encontrados en la imagen.
Si vuelvo a ejecutar la instrucción file favicon.png, encontraré el
mismo formato que antes: PNG.
Podemos aplicar este método no solo a texto, sino también a archivos de
distinto tipo.
Teniendo seleccionada una capa de texto, hacemos click derecho con
el ratón y clicamos en Ruta a partir del texto.
Creamos una nueva capa transparente y la ponemos bajo la capa del
texto.
Aumentamos el tamaño de la selección a partir de la ruta. Para
ello, clicamos en Seleccionar>A partir de ruta y después en
Seleccionar>Agrandar. La agrandaremos lo que estimemos
oportuno.
Colorea la selección. Coge la herramienta de relleno
(Mayús+B), selecciona el color que quieras
utilizar y clica en la selección de los bordes de las letras (no te
olvides del borde
interior de algunas letras).