imagejpeg

(PHP 4, PHP 5, PHP 7, PHP 8)

imagejpegOutput image to browser or file

Descripción

imagejpeg(GdImage $image, resource|string|null $file = null, int $quality = -1): bool

imagejpeg() crea un fichero JPEG a partir de la imagen proporcionada.

Parámetros

image

Un objeto GdImage, retornado por una de las funciones de creación de imágenes, como imagecreatetruecolor().

file

The path or an open stream resource (which is automatically closed after this function returns) to save the file to. If not set or null, the raw image stream will be output directly.

quality

quality es opcional, y toma valores en el intervalo 0 (peor calidad, fichero pequeño) a 100 (mejor calidad, fichero grande). Por omisión (-1), se utiliza el valor de calidad IJG por defecto (aproximadamente 75).

Valores devueltos

Esta función retorna true en caso de éxito o false si ocurre un error.

Precaución

However, if libgd fails to output the image, this function returns true.

Errores/Excepciones

Se genera una ValueError si quality es inválido.

Historial de cambios

Versión Descripción
8.4.0 Ahora se genera una ValueError si quality es inválido.
8.0.0 image expects a GdImage instance now; previously, a valid gd resource was expected.

Ejemplos

Ejemplo #1 Mostrar una imagen JPEG hacia el navegador

<?php
// Creación de una imagen vacía y adición de texto
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);

// Define el contenido del encabezado - en este caso, image/jpeg
header('Content-Type: image/jpeg');

// Mostrar la imagen
imagejpeg($im);

?>

Resultado del ejemplo anterior es similar a :

Visualización del ejemplo: imagejpeg()

Ejemplo #2 Guardar una imagen JPEG en un fichero

<?php
// Creación de una imagen vacía y adición de texto
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'Un texto simple', $text_color);

// Guardar la imagen con el nombre 'simpletext.jpg'
imagejpeg($im, 'simpletext.jpg');

?>

Ejemplo #3 Mostrar la imagen con una calidad del 75% hacia el navegador

<?php
// Creación de una imagen vacía y adición de texto
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'Un texto simple', $text_color);

// Define el contenido del encabezado - en este caso, image/jpeg
header('Content-Type: image/jpeg');

// No se proporciona el nombre del fichero (se utiliza el valor NULL),
// luego, se define la calidad a 75%
imagejpeg($im, NULL, 75);

?>

Notas

Nota:

Si se desea generar imágenes JPEG progresivas, es necesario activar el entrelazado utilizando la función imageinterlace().

Ver también

  • imagepng() - Envía una imagen PNG a un navegador o a un fichero
  • imagegif() - Output image to browser or file
  • imagewbmp() - Output image to browser or file
  • imageinterlace() - Activa o desactiva el entrelazado
  • imagetypes() - Devuelve los tipos de imágenes soportados por la versión actual de PHP