Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Добрый день.

Есть масса картинок на сайте. При необходимости можно скачать на компьютер всю папку с каталогами, а после переработки закинуть обратно на сайт.

Картинки представляют собой предметы на белом фоне. Формат jpg.

Проблема: на некоторых картинках изображение почти до краев канвы, на некоторых процентов 60-70 занимает. На многих смещено к одному из краев.

Задача: сделать так, чтобы полезное изображение на каждой картинке занимало 90% по большему размеру, и отцентрировать по обеим осям.

Алгоритм такой:

1. Берем картинку и смотрим размер. Например, 1600х1400 пикселей.

2. Вычисляем размер полезного изображения, сканируя от краев по горизонтали и вертикали до нахождения первого небелого пикселя с каждой из 4 сторон. Допустим, обнаружили, что полезное изображение на ней имеет размер 1200х600 пикселей.

3. Вычисляем коэффициент масштабирования, сравнивая размеры по горизонтали и вертикали: mw=1600*0.9/1200 = 1.2; mh=1400*0.9/600=2.1. m=min(mw, mh) = 1.2.

4. Увеличиваем полезное изображение до размеров 1200*1,2 х 600*1,2 = 1440х720 пикселей.

5. Размещаем его точно по центру канвы (ее размер не менять).

6. Перезаписываем файл с тем же именем (либо создаем полную копию исходной структуры в другой папке).

7. Берем следующий файл. Рекурсивно проходим все подпапки.

Поскольку картинок около 10 000, нужно решение, позволяющее все это прогнать в полностью автоматическом режиме. Скриптом в фотошопе, скриптом на php, отдельно написанным приложением под винду - неважно, как. Нужно именно работоспособное эффективное решение. Обработаю с его помощью сам потом, и буду продолжать использовать дальше при добавлении новых товаров на сайт.

Если решение будет самописное, нужно добавить опцию для задания процента заполнения канвы (может быть не 90%, а 80% или 85% окажется более красивым, например).

2 года назад
Raffail
49 летБеларусь
15 лет в сервисе
Был
2 года назад
8 отзывов
Выбранный исполнитель
novasoft31337
Артём 
40 летРоссия
3 года в сервисе
Был
месяц назад
2 года назад
$30
1 день
RUB
Отличный исполнитель! Требуемый функционал реализован всего за сутки и недорого. Большое спасибо за качественную работу! P.S. Несколько дней спустя впечатлен еще больше. Артем использует вещи, о существовании которых в прикладных библиотеках я даже не догадывался, хотя в свое время сам был неплохим программистом. В итоге программа работает на порядки быстрее, чем это было бы при моем традиционном подходе. Очень рекомендую как грамотного специалиста, который идет в ногу со временем.
Сотрудничеством с Рафаэлем очень доволен! Четкое ТЗ, на все возникающие вопросы быстрые ответы, моментальное принятие работы. Однозначно, рекомендую Рафаэля как превосходного заказчика! Буду рад сотрудничеству в дальнейшем.
  • Похожие заказы
  • $5

    Необходимо сделать программу, которое может считывать excel файл на выбор с возможность редактирование. И возможность отправки email из этого же приложения. Пример с какого excel файла нужно считывать

    Закрыт
    2 года назад
  • Важная документация хранится в Google-таблицах, которая заполняется на ежедневной основе. Нужен Telegram-бот, который будет отправлять данные из таблицы в личные сообщения руководителя. Возможность редактировать "просматриваемый" документ, потому что возможно документы будут подменяться от месяца к ...

    Закрыт
    2 года назад
  • Необходим разработчик для создания платформы автоматического создания смарт контрактов по шаблону с подключением кошельков, поддержкой нескольких сетей и прочее. Прошу подавать заявки только тем, кто понимает о чем идет речь и имеет опыт в этой ...

    Закрыт
    2 года назад
  • Нужно программное обеспечение аналогичное для изучения естественных наук и должно быть предназначено для изучения следующих разделов: биология, химия, физика, наука о земле. ПО должно иметь возможность работы в режиме анимации, исследования и слайды в которых ...

    Закрыт
    2 года назад
  • Добрый день. В COMSOL необходимо смоделировать рассеяние радиоволн СВЧ-диапазона на поверхностях. (модели поверхностей имеются, их 4) Требуется рассчитать коэффициент отражения для каждой поверхности на разных частотах: 3 ГГЦ, 10 ГГЦ, 20 ГГЦ, 30 ГГЦ. При этом угол падения ...

    Прикладное ПОнет заявок
    Закрыт
    2 года назад
  • Реализовать программу с использованием дифференциальной эволюции. Все формулы для решения задачи приложены. 1) A выбирается рандомно в диапазоне от -140(C) до -1 B выбирается рандомно от -70(C0) до -1 2) Подставляем Xa Xj в ...

    Прикладное ПОнет заявок
    Закрыт
    2 года назад
  • Нужен скрипт, который благодаря clamd будет сканить файл либо директорию на вирусы,при возможности результат выводить в файл https://pypi.org/project/clamd/ (пересоздал обьявление тк как проебал акк)

    Прикладное ПО1 исполнитель
    Закрыт
    2 года назад
  • на высвечивающиеся цифры экрана ноута или телевизора через hdmi например- появляются цифры черного цвета и в какой то момент появляется цифра желтого цвета она появляется редко нужно чтобы был на телеграмм или куда на телефон- ...

    Закрыт
    2 года назад
  • Нужно создать программу на Делфи, экраны готовые уже есть и информация, нужно соединить все эти экраны. Например: нажал на кнопку перешел на другой экран. Еще нужно сделать функционал чтобы добавлялась запись в программе, связано ...

    Закрыт
    2 года назад