Forums / National / Russian / Генерация миниатюр

<<<12

Alex300
#16 2010-10-02 19:47
Либо так:
Четыре способа создания миниатюр:

Третий параметр в приорететах: "Не более указанных размеров", чтобы миниатюра вписывалсь в указанные ограничения по ширине и высоте. Без обрезания картинки(код 2-мя постами выше). Тут можно генерировать имниатюру с фоном, чтобы не добавлять лишние DIV'ы в страницу, но можно и без него.

Четвертый: образование миниатюры "Кропом", как в первом посте у Kort, урезая их до заданного соотношения сторон.

Первые 2 лучше оставить для поддержки старых сайтов.

И раз уж будет правится эта функция:

то в начало тела этой функции предлагаю добавить конструкцию типа:

if(function_exists('sed_custom_createthumb'))
{
    sed_custom_createthumb($img_big, $img_small, $small_x, $small_y, $keepratio, $extension, $filen, $fsize, $textcolor, $textsize, $bgcolor, $bordersize, $jpegquality, $dim_priority);
    return;
}

Это даст возможность кому необходимо создать свои функции создания миниатюр не хакая ядро. По аналогии с парсингом.

И, если добавлять в транк эти новшества, думаю имеет смысл их добавить в Genoa 0.6.11 - в очередную версию джижка, не откладывая до Siena.

Добавлено 25 дней спустя:

Вот так решил вопрос с генерацией миниатюр так, чтобы они не выходили за указанные размеры. Также предлагаемые ниже код уменьшает загружаемое изображение до заданных размеров и ставит "водяной знак".

Для этого в файл system/functions.custom.php добавить следующий код


и создать такой плагин:

<?PHP
/* ====================
[BEGIN_SED_EXTPLUGIN]
Code=portal30
Part=pfs.upload.moved
File=portal30.pfs.upload.moved
Hooks=pfs.upload.moved
Tags=
Minlevel=0
Order=10
[END_SED_EXTPLUGIN]
==================== */
// *********************************************
// *    Cotonti:  "Portal30"                   *
// *     Уменьшим картинку                     *
// *             и поставим ватермарк          *
// *        http://portal30.ru                 *
// *                                           *
// *            © Alex & Naty Studio  2010     *
// *********************************************

if (!defined('SED_CODE')) { die('Wrong URL.'); }

// Обработка загруженного изображения
if (in_array($f_extension, $gd_supported) && file_exists($cfg['pfs_dir_user'].$u_newname)){
	@unlink($cfg['th_dir_user'].$u_newname);
	
	process_uploaded_imgage($cfg['pfs_dir_user'].$u_newname, $p30_img_width, $p30_img_heght, $f_extension, $p30_jpegquality, $p30_watermark, true, $cfg['th_dir_user'].$u_newname); 
	$u_size = filesize($cfg['pfs_dir_user'].$u_newname);
	// Превью создали, переделывать не нужно.
	$gd_supported = array();
	
}
?>
Есть миры, не здесь, там, где небеса горят, и моря засыпают, и реки дремлют; люди сделаны из дыма, а города – из песен. Где-то опасность, где-то несправедливость, даже где-то остыл чай. Идем Эйс, у нас много работы!...
...Sorry for my english...
Бесплатные расширения для Cotonti: https://lily-software.com/free-scripts/
This post was edited by Alex300 (2010-10-28 06:06, 14 years ago)

<<<12