Intereting Posts
Как безопасно хранить конфиденциальные данные в базе данных MySQL? Композитор: удалите пакет, очистите зависимости, не обновляйте другие пакеты PHP – получить данные из базы данных, сравнить их с переменной и отсортировать по меньшему значению Имена полей ввода формы, содержащие квадратные скобки, такие как поле загрузка внешнего pdf-документа в div Функция успеха Ajax, возвращающая Динамически добавлять поля ввода, но поля генерируются внешними php-функциями Проблемы с удалением index.php в CodeIgniter 3 Устранение неполадок "preg_replace (): Неизвестный модификатор" Как заставить PHP использовать интернационализированные даты? Правильное использование веб-служб Amazon S3 для сценариев на стороне сервера Защита доступа к веб-сайту по паролю PHP: foreach в многомерных массивах Как получить внешние ключи таблицы в mysql PHP. Неинтересно загружать данные <head> </ head> в качестве include

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

Есть ли функция 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; } 

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