Может ли кто-нибудь предложить лучший сценарий изменения размера изображения в php?

ЗДРАВСТВУЙ

Мне нужно, чтобы все типы изображений изменяли размер шрифта в php

WideImage – это объектно-ориентированная библиотека для обработки изображений, написанная в / для PHP 5. Это библиотека с чистым PHP и не требует каких-либо внешних библиотек помимо расширения GD2.

я использовал его в частном проекте один раз, работал достаточно хорошо для меня.

образцы

// Chaining operations: wiImage::load('image.png')->resize(50, 30)->saveToFile('new-image.jpg', 30); // Load, crop, flip and output to browser in one line (no http headers included): echo wiImage::load('image.png')->crop(30, 30, '50%', '50%')->flip()->asString('png'); // watermarking $img = wiImage::load('pic.jpeg'); $watermark = wiImage::load('watermark.jpg'); $new_img = $img->merge($watermark, 40, 80); 

Если вы находитесь в системе unix, я настоятельно рекомендую проверить ImageMagick и его различные интерфейсы. Самые быстрые и широко используемые инструменты обработки изображений в мире.

В частности, проверьте MagickWand , один из интерфейсов PHP.

Я бы определенно использовал любую оболочку для ImageMagick вместо PHP GD lib, так как последние требуют, чтобы вы набрали память довольно высоко, и вам не всегда разрешают, если вы арендуете место в webhotels. ImageMagick имеет множество функций, а также просто изменяет размер.

Там есть простая в использовании библиотека с открытым исходным кодом под названием PHP Image Magician, в которой есть интересные функции и документация.

Пример использования базы:

 $magicianObj = new imageLib('racecar.jpg'); $magicianObj -> resizeImage(100, 200, 'crop'); $magicianObj -> saveImage('racecar_small.png'); 

Очевидным решением на основе PHP будет чтение файла с помощью GD, получение размеров, вычисление новых измерений, масштабирование изображения и вывод его.

Если у вас есть расширение GD, то есть: http://de3.php.net/manual/en/book.image.php

Существует также расширение Imagic, которое позволяет довольно просто изменить размер: http://de3.php.net/manual/en/function.imagick-scaleimage.php

Это довольно просто: https://github.com/elboletaire/Watimage

 $wm = new Watimage('test.png'); // Resize image to 400x400px $wm->resize(array('type' => 'resizecrop', 'size' => 400)); // Flip it horitzontally $wm->flip('horizontal'); // Rotate 90 degrees $wm->rotate(90); // Generate and save image $wm->generate('test2.png');