Автор Тема: мат. задача  (Прочетена 2364 пъти)

0 Потребители и 1 Гост преглежда(т) тази тема.

antigoogle

  • Sr. Member
  • ****
  • Благодарности
  • -Казани: 6
  • -Получени: 5
  • Публикации: 273
мат. задача
« -: 19 Март 2013, 00:00:07 »
ако имам ширина 900 и височина 500, но търся ширина/височина = 3, как да го направя? Интересува ме мат. част.
Кажи му дизайнер и не го обиждай повече !

NoBBy

  • Sr. Member
  • ****
  • Благодарности
  • -Казани: 4
  • -Получени: 38
  • Публикации: 309
Re: мат. задача
« Отговор #1 -: 19 Март 2013, 09:12:29 »
Искаш ширината да ти е 3 пъти повече от височината.
Най-лесно изглежда да застопориш единия компонент и да сметнеш другия:

ширина 900, височина = ширина / височина = 300
или
височина 500, ширина = височина * 3 = 1500

Но това изглеждат малко екстремни варианти. Може по тях да сметнеш средното и ще получиш
ширина 1200, височина 400

Обаче предполагам искаш да оразмеряваш снимки, и при всички положения след като сменяш отношението ще има някакво разтегляне. За да го избегнеш може да преоразмеряваш малко повече от размера който целиш и режеш или по-малко и да добавяш някакъв фон.

Хубаво е да дадеш малко повече инфо, понеже имам чувството че нещо не разбирам като хората :)

antigoogle

  • Sr. Member
  • ****
  • Благодарности
  • -Казани: 6
  • -Получени: 5
  • Публикации: 273
Re: мат. задача
« Отговор #2 -: 19 Март 2013, 14:27:21 »
Значи, прав си за слайдер е, но слайдера е 100% 6ирина. При качване на снимката кода знае ширина и височина и съответно може да се направят всякакви изчисления с тези стойности, но аз искам съотношението да е точно на всички качени снимки за да не се сплескват при ширина 100%. Това, което ми трябва е формулата, по която да докарам снимката до точното съотношение. Ако например е повече от 3, значи 3*300 < 900 и трябва да се реже по ширина .
Кажи му дизайнер и не го обиждай повече !

HanKrum

  • Hero Member
  • *****
  • Благодарности
  • -Казани: 125
  • -Получени: 73
  • Публикации: 1005
  • Кибик
Re: мат. задача
« Отговор #3 -: 19 Март 2013, 17:22:52 »
Пример за изчисление на съотношение (4:3):
1024       4               1024       768
-----  =  ---  сиреч   -----  =   -----
768         3                 4           3

...и ако ти излиза от този шаблон, режеш :)
"Силата на правителството се крепи на невежеството на народа, и те знаят това и винаги ще се борят против просвещението." Лев Толстой

xzsa

  • Jr. Member
  • **
  • Благодарности
  • -Казани: 0
  • -Получени: 1
  • Публикации: 66
Re: мат. задача
« Отговор #4 -: 19 Март 2013, 20:48:29 »
Ш = 900, В = 500;  Ш/В = 900/500 = 1.8 искаме да е 3, т.е. 1.8 * X = 3 или X = 3/1.8 = 1.66666 т.е. Х = 3/(Ш/В) или Х = 3*В/Ш

Ако X > 0 делим В на X: B/X = 500/ 1.6666 ~ 300 (закръгляваме до цяло число) т.е. В трябва да стане 300 пиксела за да имаме съотношение 3. Колко пиксела трябва да изрежем от В за да останат 300 отговора е първоначалната височина 500 - 300 = 200. В крайна сметка ако X > 0 трябва да изрежем от първоначалната височина В - В/Х пиксела (във формулата В е началната височина).

Ако X < 0 по аналогичен начин намираме, че от широчината трябва да изрежем Ш - Ш*Х  (във формулата Ш е началната височина).

Ако Х = 1 съотношението е 3 и няма какво да правим.

Надявам се да не съм объркал нещо във формулите.
« Последна редакция: 19 Март 2013, 20:51:42 от xzsa »