Мне нужна помощь с чем-то очень простым.Я работаю над функцией PHP, которая получает эти возможные входные строки (это примеры, это может быть любое разрешение):
1600x900
1440x900
1366x768
1360x768
1280x1024
1280x800
1024x1024
1024x768
640x960
320x480
320x480
etc
Я хотел бы обработать любую из этих строк и вернуть соответствующуюстрока соотношения сторон в следующем формате:
5:4
4:3
16:9
etc
Есть какие-нибудь мысли о простом способе решения этой проблемы?
Редактировать: Вот справочная таблица, с которой я работал:
http://en.wikipedia.org/wiki/File:Vector_Video_Standards2.svg
Редактировать: вот ответ в JavaScript:
aspectRatio: function(a, b) {
var total = a + b;
for(var i = 1; i <= 40; i++) {
var arx = i * 1.0 * a / total;
var brx = i * 1.0 * b / total;
if(i == 40 || (
Math.abs(arx - Math.round(arx)) <= 0.02 &&
Math.abs(brx - Math.round(brx)) <= 0.02)) {
// Accept aspect ratios within a given tolerance
return Math.round(arx)+':'+Math.round(brx);
}
}
},