A todos nos encantan las pantallas gigantes en los conciertos, en escaparates, en espectáculos y eventos de todo tipo... en general, en cualquier sitio donde vemos pantallas, nos quedamos mirándolas (por eso las ponen). Y si además, las imágenes cambian si interactuamos con la pantalla o con el entorno, nos gustan más todavía (por ejemplo, imágenes procesadas sobre la marcha con ImageMagick). Y cuanto más grandess sean, mejor. Tanto es así, que muchas veces se utilizan varias pantallas para mostar una imagen.
Y si somos nosotros los que programamos la interacción con los usuarios, lo último que queremos es que se vea mal o que se descuadre la imagen al mostrarse en las pantallas. Así que vamos a ver cómo dividir una imagen para mostrar cada una de las partes en una pantalla distinta.
Usaremos una imagen cualquiera:
Y supongamos que queremos dividirla en cuatro imágenes iguales para cuatro pantallas distintas. ¿Cómo lo haremos? Cortando por la mitad horizontalmente y por la mitad verticalmente. Es decir, al 50% horizontalmente y al 50% verticalmente. Esto es muy importante, porque instintivamente podemos pensar en divididir al 25%. Pero esto nos haría cuatro cortes (100/25=4) horizontales y otros tantos cortes verticales, por lo que nos dejaría una imagen dividida en 16 partes (4x4 cortes).
Vamos a comprobarlo:
convert fuente_plaza_Emperador_Carlos.jpg -crop 50% fuente_plaza_Emperador_Carlos%d.jpg
Explicación:
convert -> el comando de ImageMagick con el que trabajamos.
fuente_plaza_Emperador_Carlos.jpg -> El nombre de la imagen con la que vamos a trabajar. En este caso, como es una fuente que está en la Plaza del Emperador Carlos, la he llamado así. Si fuera una foto de mi prima bailando una jota, se llamaría mi_prima_bailando_una_jota.jpg. Pero no es el caso.
-crop 50% -> Le indicamos a convert que corte por la mitad horizontalmente y por la mitad verticalmente. Podemos usar también -crop 50%x50% pero como el valor es el mismo para el corte horizontal y el vertical, nos podemos ahorrar unos caracteres indicando sólo una vez el porcentaje.
fuente_plaza_Emperador_Carlos%d.jpg -> Cómo queremos que se llamen los ficheros generados. Le indicamos tres patrones:
- fuente_plaza_Emperador_Carlos -> el nombre de todas las imágenes generadas a través de esta instrucción comenzará con la cadena "fuente_plaza_Emperador_Carlos"
- %d -> después de la primera cadena que será igual para todos los ficheros, cada uno llevará un número correlativo desde 0 y que irá aumentando de izquierda a derecha. Es decir:
- 0.- Recorte superior izquierdo
- 1.- Recorte superior derecho
- 2.- Recorte inferior izquierdo
- 3.- Recorte inferior derecho
- .jpg -> Las imágenes generadas tendrán la extensión .jpg
Veamos el resultado:
fuente_plaza_Emperador_Carlos0.jpg:
fuente_plaza_Emperador_Carlos1.jpg:
fuente_plaza_Emperador_Carlos2.jpg
fuente_plaza_Emperador_Carlos3.jpg
Y, ya que estamos troceando imágenes, vamos a ver cómo quedaría si hubiera tenido la tentación de escribir 25%:
convert fuente_plaza_Emperador_Carlos.jpg -crop 25% fuente_plaza_Emperador_Carlos%d.jpg
fuente_plaza_Emperador_Carlos0.jpg:
fuente_plaza_Emperador_Carlos1.jpg:
fuente_plaza_Emperador_Carlos2.jpg:
fuente_plaza_Emperador_Carlos3.jpg:
fuente_plaza_Emperador_Carlos4.jpg: fuente_plaza_Emperador_Carlos5.jpg: fuente_plaza_Emperador_Carlos6.jpg: fuente_plaza_Emperador_Carlos7.jpg: fuente_plaza_Emperador_Carlos8.jpg: fuente_plaza_Emperador_Carlos9.jpg: fuente_plaza_Emperador_Carlos10.jpg: fuente_plaza_Emperador_Carlos11.jpg: fuente_plaza_Emperador_Carlos12.jpg: fuente_plaza_Emperador_Carlos13.jpg: fuente_plaza_Emperador_Carlos14.jpg: fuente_plaza_Emperador_Carlos15.jpg: