⚠️ Este es un sitio de traducción no oficial, sin relación con ImageMagick Studio LLC. Para información autorizada, consulte la página original (https://imagemagick.org/gradient/).

Degradado de imagen

Un degradado de imagen crea una mezcla gradual entre dos colores formada en una figura que es lineal, circular o elíptica.

Para un degradado lineal, el operador es:

gradient:
gradient:_fromColor_
gradient:_fromColor_ -_toColor_

A menos que se anule, el fromColor predeterminado es blanco y el toColor es negro. Por ejemplo, gradient:gray devuelve un degradado de gris a negro.

Para un degradado radial, el operador es:

radial-gradient:
radial-gradient:_fromColor_ -_toColor_

El valor predeterminado para un degradado lineal sitúa el fromColor en la parte superior de la imagen y el toColor en la parte inferior. De forma similar, el valor predeterminado para un degradado radial sitúa el fromColor en el centro de la imagen y el toColor en el borde de la imagen.

Los colores del degradado pueden ser cualquier color válido definido según https://imagemagick.org/color/. Los colores con nombre black/white/grayXX y gray(XX[%]) son grises no lineales. En sistemas Linux, encierre los colores rgb(a) y hexadecimales entre comillas. Use comillas dobles si emplea variables para los valores.

He aquí un ejemplo de degradado lineal (en contraposición al radial):

magick -size 256x256 gradient: linear_gradient.png
magick -size 256x256 gradient:white-black linear_gradient.png

linear gradient

Si desea un degradado radial, pruebe:

magick -size 256x256 radial-gradient: radial_gradient.png
magick -size 256x256 radial-gradient:white-black radial_gradient.png

radial gradient

Si desea degradados de escala de grises no lineales, añada -colorspace RGB -colorspace gray antes de guardar la salida. Por ejemplo:

magick -size 256x256 gradient: linear_gradient.png
magick -size 256x256 gradient:white-black -colorspace RGB -colorspace gray linear_linear_gradient.png


magick -size 256x256 radial-gradient: radial_gradient.png
magick -size 256x256 radial-gradient:white-black -colorspace RGB -colorspace gray linea_radial_gradient.png

Los degradados se ven afectados por estos defines:

-define gradient:vector=x1,y1, x2,y2 Especifica la dirección del degradado lineal desde vector1 (x1,y1) hasta vector2 (x2,y2). El fromColor se ubica en la posición del vector x1,y1 y el toColor en la posición del vector x2,y2.
-define gradient:center=x,y Especifica las coordenadas del punto central para el degradado radial. El valor predeterminado es el centro de la imagen.
-define gradient:radii=x,y Especifica los radios x e y del degradado. Si el radio x y el radio y son iguales, la figura del degradado radial será un círculo. Si difieren, la figura será una elipse. Los valores predeterminados son el máximo entre la mitad del ancho y la mitad del alto de la imagen.
-define gradient:angle=angle in degrees Para un degradado lineal, especifica la dirección del degradado desde fromColor hacia toColor en sentido horario positivo respecto al norte (arriba). Para un degradado radial, especifica la rotación del degradado en sentido horario positivo desde su orientación X-Y normal.
-define gradient:bounding-box=widthxheight+x+y Limita el degradado a una región mayor o menor que las dimensiones de la imagen. Si la región definida por el cuadro delimitador es menor que la imagen, el fromColor es el color del fondo.

También admitimos dos defines de conveniencia para establecer la dirección del degradado lineal y la figura del degradado radial.

-define gradient:direction={NorthWest, North, Northeast, West, East, SouthWest, South, SouthEast} Especifica la dirección del degradado lineal hacia arriba/abajo/izquierda/derecha o las esquinas diagonales.
-define gradient:extent={Circle, Diagonal, Ellipse, Maximum, Minimum} Especifica la figura de un degradado radial centrado en la imagen. Circle y Maximum dibujan un degradado radial circular incluso para imágenes de forma rectangular, con un radio igual al mayor entre la mitad del ancho y la mitad del alto de la imagen. Las opciones Circle y Maximum son ambas equivalentes al degradado radial predeterminado. La opción Minimum dibuja un degradado radial circular incluso para imágenes de forma rectangular, con un radio igual al menor entre la mitad del ancho y la mitad del alto de la imagen. La opción Diagonal dibuja un degradado radial circular incluso para imágenes de forma rectangular, con un radio igual a la mitad de la diagonal de la imagen. La opción Ellipse dibuja un degradado radial elíptico para imágenes de forma rectangular, con radios iguales a la mitad del ancho y la mitad del alto de la imagen.

Ejemplos

El degradado lineal predeterminado también puede generarse de cualquiera de las siguientes maneras (o invirtiendo la dirección e intercambiando fromColor y toColor):

magick -size 256x128 -define gradient:direction=north gradient:black-white linear_gradient_default.png
magick -size 256x128 -define gradient:angle=0 gradient:black-white linear_gradient_default.png

linear gradient

El equivalente de

magick -size 128x256 gradient: -rotate 90 linear_gradient_east.png

puede generarse mediante cualquiera de las siguientes (o invirtiendo la dirección e intercambiando fromColor y toColor):

magick -size 256x128 -define gradient:direction=east gradient:black-white linear_gradient_east.png
magick -size 256x128 -define gradient:angle=90 gradient:black-white linear_gradient_east.png

radial gradient east

A continuación se muestran ejemplos de degradados radiales que van del negro en el centro al blanco en el borde, para los casos de "maximum/circle/predeterminado", "minimum", "diagonal", "ellipse" y elipse rotada 45 grados, respectivamente.

magick -size 256x128 radial-gradient:black-white radial_gradient_maximum.png
magick -size 256x128 -define gradient:radii=128,128 radial-gradient:black-white radial_gradient_maximum.png

radial gradient maximum

magick -size 256x128 -define gradient:extent=minimum radial-gradient:black-white radial_gradient_minimum.png
magick -size 256x128 -define gradient:radii=64,64 radial-gradient:black-white radial_gradient_minimum.png

magick -size 256x128 -define gradient:extent=diagonal radial-gradient:black-white radial_gradient_diagonal.png

magick -size 256x128 -define gradient:extent=ellipse radial-gradient:black-white radial_gradient_ellipse.png
magick -size 256x128 -define gradient:radii=128,64 radial-gradient:black-white radial_gradient_ellipse.png

radial gradient ellipse

magick -size 256x256 -define gradient:radii=128,64 -define gradient:angle=45 radial-gradient:black-white radial_gradient_ellipse_angle45.png

radial gradient ellipse angle 45