Здра!
Подскажите пож-ста.
Есть каталог с фотками разного размера. Как лучше преобразовать их выборочно, в зависимости от разрешения?
То есть:
если размер ≥ xxx ; --resize yyy
Чем проверять, не выводить же mediainfo по каждому и сравнивать? Есть такие, которые содержат в себе это "ЕСЛИ", и сразу по условию отработают или пропустят?
Пакетная обработка изображений по условиям
Модератор: Модераторы разделов
-
yoricI
- Сообщения: 2991
- ОС: gentoo fluxbox
-
Bizdelnick
- Модератор
- Сообщения: 21439
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Пакетная обработка изображений по условиям
Пишите правильно:
| в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
yoricI
- Сообщения: 2991
- ОС: gentoo fluxbox
Re: Пакетная обработка изображений по условиям
Логично, пусть будет равно. Тогда:
если размер > xxx ; --resize xxx
если размер > xxx ; --resize xxx
-
ormorph
- Сообщения: 3179
- ОС: Gentoo
Re: Пакетная обработка изображений по условиям
Я не знаю таких готовых. Посмотрел этот, кода то этот скрипт использовался в качестве плагина spacefm, в параметрах передаётся список файлов для правки.Этот скрипт правит размер без проверки. А так всего за 5-10 минут можно написать такое на python+pillow.
Начало простое:
А дальше у созданного объекта img, есть параметры получения ширины и высоты, так же метод resize, который создаёт новый объект, такой же как и img, но с другим разрешением. А далее выполняется метод save в новом объекте, в котором в качестве параметра указывается новый файл...
Начало простое:
Shell
from PIL import Image
img = Image.open('изображение.jpg')-
yoricI
- Сообщения: 2991
- ОС: gentoo fluxbox
Re: Пакетная обработка изображений по условиям
Я уж лучше на шелле. Чтоб не преодолевать порог вхождения python
-
Bizdelnick
- Модератор
- Сообщения: 21439
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Пакетная обработка изображений по условиям
Это проще, например magick infile -resize xxx> outfile (то есть надо указать > после размера).
Пишите правильно:
| в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
yoricI
- Сообщения: 2991
- ОС: gentoo fluxbox
Re: Пакетная обработка изображений по условиям
Спасибо, попробую. Хотя это не особо помогает, так как не решает проблему альбом/портрет.
Или можно в два прохода?
600x800>
800x600>
Не зацепит один другой?
Или можно в два прохода?
600x800>
800x600>
Не зацепит один другой?
-
ormorph
- Сообщения: 3179
- ОС: Gentoo
Re: Пакетная обработка изображений по условиям
Получение размеров:
Shell
#!/bin/bash
size=( $(identify -format "%w %h" file.jpg) )
size_width=${size[0]}
size_height=${size[1]}
echo -e "size_width=$size_width\nsize_height=$size_height"Shell
$ magick file.jpg -resize 200x100! file_200x100.jpg