#php #image
#php #изображение
Вопрос:
Я использую библиотеку PHP GD для изменения размера моих изображений. Я хочу изменять размер только файлов JPG или JPEG, потому что я получаю ошибку для файлов PNG. Я пытался использовать функцию image_type_to_extension, но все еще без шансов.
function CroppedThumbnail($imagename, $imgwidth, $imgheight)
{
if (image_type_to_extension(IMAGETYPE_JPEG)) {
// Set a maximum height and width
$width = $imgwidth;
$height = $imgheight;
// Content type
//header('Content-Type: image/jpeg');
// Get new dimensions
list($width_orig, $height_orig) = getimagesize($imagename);
$ratio_orig = $width_orig / $height_orig;
if ($width / $height > $ratio_orig) {
$width = $height * $ratio_orig;
} else {
$height = $width / $ratio_orig;
}
// Resample
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($imagename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
// Output
$newFileName = 'small/' . $imagename . '';
imagejpeg($image_p, $newFileName, 100);
return '/' . $newFileName;
}
}
Комментарии:
1.
image_type_to_extension
jsut возвращает строку типа.jpg
или.png
.
Ответ №1:
Я предполагаю, что вы хотите определить тип фотографии в соответствии с названием.
if(exif_imagetype($imagename)===2){ // 2 means jpg and jpeg
...
...
...
}
замените это на ваше if(image_type_to_extension(IMAGETYPE_JPEG)) { }
в вашем коде