imagecolorallocatealpha

(PHP 4 >= 4.3.2, PHP 5, PHP 7, PHP 8)

imagecolorallocatealphaAsignar un color para una imagen

Descripción

imagecolorallocatealpha(
    resource$image,
    int$red,
    int$green,
    int$blue,
    int$alpha
): int

imagecolorallocatealpha() se comporta de forma idéntica a imagecolorallocate() con la adición del parámetro de transparencia alpha.

Parámetros

image

Un recurso image, es devuelto por una de las funciones de creación de imágenes, como imagecreatetruecolor().

red

Valor del componente rojo.

green

Valor del componente verde.

blue

Valor del componente azul.

alpha

Un valor entre 0 y 127. 0 indica completamente opaco mientras que 127 indica completamente transparente.

Los parámetros red, green y blue son enteros entre 0 y 255 o hexadecimales entre 0x00 y 0xFF.

Valores devueltos

Un identificador de color o false si la asignación falló.

Advertencia

Esta función puede devolver el valor booleano false, pero también puede devolver un valor no booleano que se evalúa como false. Por favor lea la sección sobre Booleanos para más información. Use el operador === para comprobar el valor devuelto por esta función.

Historial de cambios

VersiónDescripción
5.1.3 Devuelve false si falló la asignación. Anteriormente devolvía -1.

Ejemplos

Ejemplo #1 Ejemplo usando imagecolorallocatealpha()

<?php
$tamaño
= 300;
$imagen=imagecreatetruecolor($tamaño, $tamaño);

// para obtener un fondo blanco con borde negro
$fondo = imagecolorallocate($imagen, 255, 255, 255);
$borde = imagecolorallocate($imagen, 0, 0, 0);
imagefilledrectangle($imagen, 0, 0, $tamaño - 1, $tamaño - 1, $fondo);
imagerectangle($imagen, 0, 0, $tamaño - 1, $tamaño - 1, $borde);

$amarillo_x = 100;
$amarillo_y = 75;
$rojo_x = 120;
$rojo_y = 165;
$azul_x = 187;
$azul_y = 125;
$radio = 150;

// asignar colores con valores alfa
$amarillo = imagecolorallocatealpha($imagen, 255, 255, 0, 75);
$rojo = imagecolorallocatealpha($imagen, 255, 0, 0, 75);
$azul = imagecolorallocatealpha($imagen, 0, 0, 255, 75);

// dibujar 3 círculos traslapados
imagefilledellipse($imagen, $amarillo_x, $amarillo_y, $radio, $radio, $amarillo);
imagefilledellipse($imagen, $rojo_x, $rojo_y, $radio, $radio, $rojo);
imagefilledellipse($imagen, $azul_x, $azul_y, $radio, $radio, $azul);

// ¡no olvide imprimir la cabecera correcta!
header('Content-Type: image/png');

// y finalmente, imprimir el resultado
imagepng($imagen);
imagedestroy($imagen);
?>

El resultado del ejemplo sería algo similar a:

Salida del ejemplo : Ejemplo usando imagecolorallocatealpha()

Ver también

To Top