Intereting Posts
Как сделать развертывание для приложения php Каков наилучший метод для запланированных задач в PHP? Пользовательский фильтр в сетке кендо, передающий нулевые значения, когда фильтрация сбоку usere serevr Изменение размера изображений с прозрачностью в php Рекурсивная функция для генерации многомерного массива из результата базы данных Предупреждение: mysqli_query (): Не удалось получить mysqli использование enctype = multipart / form-data с арабским языком Как вызвать php-файл в div? Объединение строк в виде массива из другой таблицы для каждой строки Служба уведомлений Apple Push: сторона с сертификатом установки сервера? как выбрать mysql-запрос с иностранным языком? Отправить переменную сеанса из Ajax в PHP Laravel – Многостраничный сайт / Проект Как удалить обратную косую черту в функции json_encode ()? Невозможно ли доступ к элементам в ассоциативных массивах PHP численно (то есть по индексу)?

Максимальная площадь посева для заданного изображения и пропорции

Есть ли функция PHP / GD, которая может вычислить это:

Вход: ширина изображения, высота изображения и соотношение сторон в чести. Выход: ширина / высота максимальной центрированной обрезки, которая соответствует данному соотношению сторон (несмотря на исходное соотношение сторон изображения).

Пример: изображение 1000×500, ar – 1,25: максимальная урожайность – 625×500. изображение равно 100×110, максимальный урожай: 80×110.

Нет функции, которая вычисляет это, потому что это элементарная математика:

$imageWidth = 1000; $imageHeight = 500; $ar = 1.25; if ($ar < 1) { // "tall" crop $cropWidth = min($imageHeight * $ar, $imageWidth); $cropHeight = $cropWidth / $ar; } else { // "wide" or square crop $cropHeight = min($imageWidth / $ar, $imageHeight); $cropWidth = $cropHeight * $ar; } 

Смотрите в действии .