короче на несколько строк
Шулерство. Твоя функция + строка на ее вызов 67 строк без коментариев. Полный аналог на имаджике три строки
$image = new Imagick('image.jpg');
$image->thumbnailImage(100, 100, true);
$image->writeImage('preview.jpg');
GD есть везде, а Imagic нет
Ну дык так и скажи: "Условия бывают такие, что без собственной функции на GD не обойтись, увы жизнь заставляет". Все поймут и согласятся. Только зачем утверждать, что это полное счастье и ни к чему другому стремится не надо.
надо несколько строк на инициализацию, + if …Я привел все строки которые нужны. If это уже выбор того или иного алгоритма изготовления превьюхи, так что он будет в обоих случаях или не будет в обоих.
т.е. кладем фотографию в жертву "дизайну"?Опять шулерство. Речь шла о превью, а не о полноразмерном фото. Да и вообще этот вопрос к выбору технологии не относится. Захочет юзер накосячить - накосячит. Но наша задача сделать так, чтобы косяки минимально напортили.
Шарп не добавляет качество, а пытается замаскировать "мыло".Шарп увеличивает резкость превьюшки, которые при ресайзе становятся размытыми и детали на них плохоразличимы. Но фраза-то была, не об этом, а о том что imagick позволит сделать это и еще кучу фигни, которой нет в GD.