Al utilizar la función imagepng()
en PHP, ¿cómo puedo hacer que las imágenes que guarda se almacenan con un fondo transparente?imagepng() y la transparencia en la librería GD con PHP
Respuesta
Aquí es un ejemplo de la función imagecolortransparent
(si ayuda):
<?php
// Create a 55x30 image
$im = imagecreatetruecolor(55, 30);
$red = imagecolorallocate($im, 255, 0, 0);
$black = imagecolorallocate($im, 0, 0, 0);
// Make the background transparent
imagecolortransparent($im, $black);
// Draw a red rectangle
imagefilledrectangle($im, 4, 4, 50, 25, $red);
// Save the image
imagepng($im, './imagecolortransparent.png');
imagedestroy($im);
?>
Basta con hacer esto:
imagealphablending($img, false);
imagesavealpha($img, true);
Antes de la salida. Asegúrese de que todos los archivos fuente (si utilizó alguno) están configurados en PNG de 32 bits con transparencia; de lo contrario, la salida puede diferir con fondo negro o la transparencia no cumple.
La transparencia es a menudo llamado "alfa". –
Más corto y más dulce. –
La solución aceptada no funcionó como se esperaba, ¡pero esta es perfecta! – testing
Hay una función llamada imagecolortransparent que le permite establecer qué color se hace transparente. No sé si esto responde tu pregunta.
Aquí está el ejemplo
$newimage = imagecreatetruecolor($dst_w, $dst_h);
imagealphablending($newimage, false);
imagesavealpha($newimage, true);
$transparentindex = imagecolorallocatealpha($newimage, 255, 255, 255, 127);
imagefill($newimage, 0, 0, $transparentindex);
mejor respuesta! ¡trabajado como un encanto! – andys
- 1. PHP GD imagecreatefromstring descarta transparencia
- 2. PHP/GD: Mejor desenfoque gaussiano
- 3. PNG Transparencia con PHP
- 4. texto con dibujos de la biblioteca usando PHP GD
- 5. PHP GD colores de la paleta
- 6. Fusionar dos imágenes PNG con transparencia y mantener la transparencia
- 7. Fusiona dos imágenes PNG con la biblioteca PHP GD
- 8. PHP GD Usar una imagen para enmascarar otra imagen, incluida la transparencia
- 9. PHP + GD: imagecopymerge no conserva transparencias PNG
- 10. php y colección de tipo verdadero en gd
- 11. librería PHP entendimiento instalación
- 12. ¿Cómo comprobar si una imagen tiene transparencia usando GD?
- 13. Habilitar/instalar la extensión GD? --without-gd
- 14. php GD agregar relleno a la imagen
- 15. PHP: ¿crea imágenes con ImagePng y las convierte con base64_encode en un solo archivo?
- 16. Cómo preservar la transparencia al cambiar el tamaño PNG usando Perl y GD
- 17. Convertir la salida de GD a base64
- 18. ¿Se puede preservar la transparencia de la imagen PNG cuando se utiliza la imagencopia GDlib de PHP que se muestra?
- 19. ¿Cómo cambio el tamaño de pngs con transparencia en PHP?
- 20. PHP/GD gaussiano Efecto
- 21. Comparación de imágenes con php + gd
- 22. PHP-GD: tratar con caracteres Unicode
- 23. Centro alineando varias líneas de texto con GD y PHP
- 24. PHP/GD - Imágenes
- 25. Retire la transparencia en imágenes con C#
- 26. PHP alineación central GD ttftext
- 27. PHP GD, imagecreatefromstring(); cómo obtener las dimensiones de la imagen?
- 28. PHP GD2: cómo mantener la transparencia del canal alfa y corregir gamma
- 29. Activación de GD en PHP en Linux para la función imagecreatefromstring y envío de correo electrónico
- 30. Utilizando el método PUT con PHP librería curl
Eric golpéame aquí. Más tarde en la misma página, alguien comenta, "Cuando se utiliza imágenes de paleta (creados con imagecreate()), el primer color asignado es el color de fondo. Este color no puede ser utilizado para la transparencia. Así que si usted quiere hacer el fondo transparente, primero asigne un color de fondo falso, luego asigne el color de fondo real y declare que es transparente. " –