Misc ddResizeImage

    Віджет для плагіна ManagerManager, дозволяє змінювати розміри зображень (TV), наприклад: робити маленькі прев'юшки (thumbs).

    Віджет спрацьовує тільки в момент збереження документів (подія «OnBeforeDocFormSave») і не створює зображень повторно, що забезпечує мінімальні витрати ресурсів сервера.

    mm_ddResizeImage($tvs, $roles, $templates, $width, $height, $cropping, $suffix, $background, $multipleField, $colNum, $splY, $splX, $num);

    Опис параметрів

    Назва Опис Допустимі значення Значення за замовчуванням Обов'язковий?
    tvs Імена TV з зображеннями, для яких необхідно застосувати віджет. {comma separated string} true
    roles Ролі, для яких необхідно застосувати віджет, порожнє значення — всі ролі. {comma separated string} false
    templates Id шаблонів, для яких необхідно застосувати віджет, порожнє значення — всі шаблони. {comma separated string} false
    width Ширина створюваного зображення в px. Порожнє значення - автоматичний розрахунок виходячи з висоти. Обов'язковий хоча б один розмір. {integer} true
    height Ширина створюваного зображення в px. Порожнє значення - автоматичний розрахунок виходячи з ширини. Обов'язковий хоча б один розмір. {integer} true
    cropping Чи обрізати зображення, намагаючись домогтися жорсткої відповідності розмірам. 0 — не обрізати; 1 — просто обрізати (не змінюючи масштаб); 'crop_resized' — спочатку зменшити, потім обрізати; 'fill_resized' — пропорційно зменшити, заповнивши поля кольором («background»). 0; 1; 'crop_resized'; 'fill_resized' 'crop_resized' false
    suffix Суфікс для імен створюваних зображень. При порожньому значенні замінюються вихідні зображення! {string} '_ddthumb' false
    replaceFieldVal Чи потрібно переписувати значення в TV на імена створених зображень (те, що з урахуванням «suffix»). Не працює при multipleField = 1! 0; 1 0 false
    background Колір фону (використовується при cropping = 'fill_resized'). {string} '#FFFFFF' false
    multipleField Чи є поле множинним (для mm_ddMultipleFields). 0; 1 0 false
    colNum Номер колонки, в якій знаходиться зображення (для mm_ddMultipleFields). {integer} 0 false
    splY Роздільник рядків (для mm_ddMultipleFields). {string} '||' false
    splX Роздільник колонок (для mm_ddMultipleFields). {string} '::' false
    num Номер рядка, який треба обробляти (для mm_ddMultipleFields). {integer};'all' 'all' false

    Приклади

    Створити для зображень, виставлених в TV «imageTV», зменшені копії шириною 200 px (висота нехай розраховується автоматично)

    mm_ddResizeImage('imageTV', '', '', 200);

    Створити для зображень, виставлених в TV «imageTV», зменшені копії розміром 200 × 100 px, а що не влізе - нехай буде обрізане

    mm_ddResizeImage('imageTV', '', '', 200, 100);

    Створити для зображень, виставлених в TV «imageTV», зменшені копії, перезаписуючи значення в TV

    mm_ddResizeImage('imageTV', '', '', 200, 100, 'crop_resized', '_ddthumb', 1);

    Користувач завантажив і вставив в TV 'assets/images/some.jpg', а після збереження документа зробилася прев'юшка і значення TV стало 'assets/images/some_ddthumb.jpg'. Забезпечити, щоб користувачі завантажували зображення в TV «logo» строго розміром 125 × 68 px Все, що завантажується, має бути пропорційно зменшено до заданого розміру, а якщо пропорції не вірні, то вільний простір повинен бути залитий кольором '#686868'.

    mm_ddResizeImage('imageTV', '', '', 125, 68, 'fill_resized', '', 0, '#686868');