====== ImageMagick ======
Manipulación de imágenes: creación, edición, conversión...
* [[http://www.imagemagick.org/script/index.php|Web oficial]]
{{ http://www.imagemagick.org/image/wizard.png?300 |}}
===== Convertir =====
==== Pasar imágenes a PDF ====
convert page*.png mydoc.pdf
La conversión desde imágenes JPEG genera pérdida. Para evitarlo, mejor utilizar [[https://gitlab.mister-muffin.de/josch/img2pdf|img2pdf]]
Si obtenemos el siguiente error:
convert-im6.q16: not authorized `myfile.pdf' @ error/constitute.c/WriteImage/1037.
Debemos eliminar la restricción en el fichero de políticas de seguridad: ''/etc/ImageMagick-6/policy.xml''. Basta con comentar la línea:
==== Convertir HEIC / HEIF a JPEG ====
magick mogrify -format jpg *.HEIC
El formato ''.HEIC'' es original de Apple. Pueden contener una o más imágenes guardadas en formato ''HEIF'' (//High Efficiency Image File//). Cada fichero HEIC sirve como contenedor para miniaturas, metadatos de la imagen e incluso secuencias de imágenes (como los GIF animados).
===== Redimensionar =====
Redimensionar un tanto por ciento respetando la relación de aspecto:
convert original.png -resize 25% modificado.png
===== Añadir texto =====
convert -pointsize 40 -font LiberationSans-Bold -annotate +0+100 "Texto" -fill "#ff0000" original.png resultado.png
* ''pointsize'': tamaño, en puntos, de la tipografía.
* ''font'': especifica la tipografía a utilizar. Podemos pasarle el nombre o la ruta a esa fuente.
* ''annotate'': añade texto a la imagen.
* ''fill'': color del texto
Ejemplo añadiendo texto a una imagen tipo rifa (2000 x 647 px) para generar varias imágenes con números de rifa consecutivos :
for i in {1..500}
do
numero_rifa=$(printf "%04d\n" $i)
magick convert -pointsize 44 -font /usr/share/fonts/TTF/Coustard-Regular.ttf -annotate +910+520 "${numero_rifa}" -kerning 5 -pointsize 44 -annotate -90x+1945+265 "${numero_rifa}" -fill "#ffb511" rifa-navidad-2024-sin-numero.png resultado/rifa_$numero_rifa.png
done
* ''kerning'': separación de las letras.