Añadir un borde a una imagen con ImageMagick
Para añadir un borde a una imagen con convert o con mogrify, tenemos dos operadores que tenemos que definir siempre en este orden:
-bordercolor $color -border $numero_de_pixeles
O, si queremos que sea distinto el borde horizontal del vertical, indicarlo con:
-bordercolor $color -border ${numero_de_pixeles_anchura}x${numero_de_pixeles_altura}
Veamos una serie de ejemplos partiendo de una imagen cualquiera. Creamos un lienzo como base:
convert -size 600x345 xc:CadetBlue base_border.jpg
Sobre esta imagen, vamos a añadirle un borde de un grosor uniforme:
convert base_border.jpg -bordercolor RoyalBlue -border 50 border_50.jpg
También podríamos haber creado directamente el lienzo con el borde:
convert -size 600x345 xc:CadetBlue -bordercolor RoyalBlue -border 50 lienzo_border_50.jpg
Lo que no podemos hacer es primero dibujar el borde y después elegir el color, ya que ImageMagick utilizará el color por defecto, sin saber qué color queremos y dibujará el borde:
convert -size 600x345 xc:CadetBlue -border 50 -bordercolor RoyalBlue lienzo_border_50_color_por_defecto.jpg
También podemos elegir el grosor del borde horizontal y vertical:
convert -size 600x345 xc:CadetBlue -bordercolor RoyalBlue -border 50x100 lienzo_border_50_100.jpg
O indicar más de un borde. Vamos a crear un lienzo, le añadimos un borde uniforme de 50 píxeles y otro borde de color OrangeRed de 50 píxeles verticales y 0 horizontales:
convert -size 600x345 xc:CadetBlue -bordercolor RoyalBlue -border 50 -bordercolor OrangeRed -border 50x0 lienzo_con_dos_bordes.jpg