Взгляните на PHP Thumb (лицензия MIT).
Он поддерживает Адаптивное изменение размера .
Для этого необходимо изменить размер изображения, чтобы максимально приблизиться к нужным размерам, а затем обрезать изображение до нужного размера.из центра.
require_once '/path/to/ThumbLib.inc.php';
$thumb = PhpThumbFactory::create('test.jpg');
$thumb->adaptiveResize(50, 50)->save('/path/to/new_thumb.jpg');
PHP Thumb - это легкая библиотека для работы с изображениями, предназначенная для создания миниатюр.Он имеет возможность изменять размеры по ширине, высоте и проценту, создавать собственные кадрирования или квадратные кадрирования из центра и вращать изображение.
PHP Thumb Github WIKI