×
Внимание, Tele2 отказывает в доставке SMS от Google (18 июнь 2017)

Крайне неприятная новость для пользователей российского сегмента сетей связи мобильного оператора Tele2.

Вопрос Скрипт для нарезки картинок на сервере

Больше
4 года 4 мес. назад - 4 года 4 мес. назад #1 от Aleksej
Aleksej создал эту тему: Скрипт для нарезки картинок на сервере
Удобный скрипт - авторство принадлежит hubbitus-у - когда надо порезать прямо на серваке под линуксом (нужен ImageMagick) уже находящиеся там изображения... для меня лично оказался просто незаменимым, когда потребовалось отресайзить слишком длинные по горизонтали иллюстрации каталога товаров VirtueMart, из которых вследствие их размера формировались излишне мелкие - на разглядишь - превью при импорте посредством CSV Improved.

Алгоритм здесь крайне несложен - если ширина больше (или ровно) чем в 2 раза превосходит высоту - скрипт режет ширину таким образом, чтобы получился квадрат.

Создаем файл, содержащий приведенные ниже строчки кода, делаем его исполняемым (думаю, нет нужды в объяснениях - как это сделать, "исполняемый файл"?) и обзываем, скажем - do. :

#!/bin/bash

: ${1?"Not enough arguments: `basename $0` directory-to-process [glob-pattern of files: *.jpg by default]"}

PATTERN=${2:-*.jpg}

for file in "${1}/"$PATTERN; do
w=$( identify -format %w $file )
h=$( identify -format %h $file )

	if [ $[ $w / $h ] -ge 2 ]; then
	echo processing $file;
	# Sponge does not available on TimeWeb unfortunately. So, 2 lines instead of 1 needed.
	convert -crop "${h}x${h}+0+0!" "$file" tmp.jpg
	mv tmp.jpg "$file"
	fi
done

Заходим по ssh в public_html, переходим в каталог, содержащий ваши картинки, и запускаем скрипт следующим образом (внимательно, приведены именно 7 знаков, а не 6 или там 11):

./do. .

Удачи!
Последнее редактирование: 4 года 4 мес. назад от Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.