@Extramezz

Как составить пропорцию?

Что-то не допру по какой формуле рассчитать следующее:

Дано:
$width = 300;
$height = 500;
$scale = 16/9;


Мне нужно подобрать целые числа $newWidth и $newHeight такие, чтобы соответствовали условиям
$newWidth / $newHeight == $scale && 
$newWidth >= $width && 
$newHeight >= $height
. Объясните на словах или формульно как это насчитать?
  • Вопрос задан
  • 211 просмотров
Решения вопроса 1
alsopub
@alsopub
Одной формулой вы не обойдетесь - будет две для условия $width/$height > $scale и else.
$width = 300;
$height = 500;
$scale = 16/9;

$newWidth = 0;
$newHeight = 0;
	
if ($width / $height > $scale) {
  $newWidth = $width;
  $newHeight = round($width / $scale);
} else {
  $newHeight = $height;
  $newWidth = round($height * $scale);
}

echo($newWidth.'x'.$newHeight);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы