Seemingly, you can't omit the width the same way you do with the height. If you write -1 for the width and specify a number for the height it will return false(PHP 5 >= 5.5.0, PHP 7, PHP 8)
imagescale — Muda a escala de uma imagem usando largura e altura informadas
$image,$width,$height = -1,$mode = IMG_BILINEAR_FIXEDimagescale() escala de uma imagem usando o algoritmo de interpolação informado.
Nota:
Diferentemente de muitas outras funções de imagem, imagescale() não modifica o argumento
imageinformado; ao invés disso, uma nova imagem é retornada.
imageUm objeto GdImage, retornado por uma das funções de criação de imagem, como imagecreatetruecolor().
widthA largura que a imagem terá na nova escala.
heightA altura que a imagem terá na nova escala. Se for omitida ou se for negativa, a razão de aspecto será preservada.
mode
Uma das constantes IMG_NEAREST_NEIGHBOUR,
IMG_BILINEAR_FIXED (o padrão),
IMG_BICUBIC,
IMG_BICUBIC_FIXED ou qualquer outro valor (neste caso será
feita dupla passagem).
Nota:
IMG_WEIGHTED4ainda não é suportada.
Retorna o objeto imagem com a escala modificada em caso de sucesso ou false em caso de falha.
Lança uma ValueError se width
ou height puderem causar um estouro de limites.
Lança uma ValueError se mode for inválido.
| Versão | Descrição |
|---|---|
| 8.4.0 |
Agora lança uma ValueError se width
ou height puderem causar um estouro de limites.
|
| 8.4.0 |
Agora lança uma ValueError se mode for inválido.
|
| 8.0.0 | Em caso de sucesso, esta função agora retorna uma instância de GDImage; anteriormente, um resource era retornado. |
| 8.0.0 |
O parâmetro image agora espera uma instância de GdImage;
anteriormente, um resource gd válido era esperado.
|
Seemingly, you can't omit the width the same way you do with the height. If you write -1 for the width and specify a number for the height it will return falseTo resize height without specifying a width you can rotate the image by 90 degrees, resize, then rotate by 270 degrees.
$outputImage = imagerotate($image, 90, 0);
$outputImage = imagescale($outputImage, $minSize);
$outputImage = imagerotate($outputImage, 270, 0);