(PHP 4, PHP 5, PHP 7, PHP 8)
imagejpeg — Envia a imagem para o navegador ou para um arquivo
imagejpeg() cria um arquivo JPEG a partir da imagem informada em image
.
image
Um objeto GdImage, retornado por uma das funções de criação de imagem, como imagecreatetruecolor().
file
O caminho ou um recurso de stream aberto (que será fechado automaticamente após o retorno desta função) para salvar o arquivo. Se não for definido ou for null
, o stream da imagem bruta será enviado diretamente.
quality
quality
é opcional e varia de 0 (pior qualidade, arquivo menor) a 100 (melhor qualidade, arquivo maior). O padrão (-1
) usa o valor de qualidade IJG padrão (por volta de 75).
Retorna true
em caso de sucesso ou false
em caso de falha.
Entretanto, se a biblioteca libgd falhar ao gerar a imagem, esta função retornará true
.
Versão | Descrição |
---|---|
8.0.0 | O parâmetro image agora espera uma instância de GdImage; anteriormente, um resourcegd válido era esperado. |
Exemplo #1 Mostrando uma imagem JPEG no navegador
<?php
// Cria uma imagem vazia e adiciona um texto
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
// Define o cabeçalho de tipo de conteúdo - neste caso image/jpeg
header('Content-Type: image/jpeg');
// Mostra a imagem
imagejpeg($im);
// Libera a memória
imagedestroy($im);
?>
O exemplo acima produzirá algo semelhante a:
Exemplo #2 Gravando uma imagem JPEG em um arquivo
<?php
// Cria uma imagem vazia e adiciona um texto
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
// Grava a imagem como 'simpletext.jpg'
imagejpeg($im, 'simpletext.jpg');
// Libera a memória
imagedestroy($im);
?>
Exemplo #3 Mostrando a imagem com 75% de qualidade no navegador
<?php
// Cria uma imagem vazia e adiciona um texto
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
// Define o cabeçalho de tipo de conteúdo - neste caso image/jpeg
header('Content-Type: image/jpeg');
// Ignora o parâmetro arquivo usando NULL, e então define a qualidade para 75%
imagejpeg($im, NULL, 75);
// Libera a memória
imagedestroy($im);
?>
Nota:
Se for desejado mostrar JPEGs progressivos, deve-se habilitar entrelace com a função imageinterlace().