(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.
imagefileO caminho ou um recurso de fluxo 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 fluxo 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.
Lança um ValueError se quality for inválido.
| Versão | Descrição |
|---|---|
| 8.4.0 |
Agora lança um ValueError se quality for inválido.
|
| 8.0.0 |
O parâmetro image agora espera uma instância de GdImage;
anteriormente, um resource gd 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);
?>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');
?>
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);
?>Nota:
Se for desejado mostrar JPEGs progressivos, deve-se habilitar entrelace com a função imageinterlace().