Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Obliczanie skali dla zdjęcia
skw
post
Post #1





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 14.11.2008

Ostrzeżenie: (0%)
-----


Cześć, mam taki problem:

Mam prostokąt o wymiarach
  1. $width = 697;
  2. $height = 492


Oraz mam zdjęcie o wymiarach

  1. $width2 = 3508;
  2. $height2 = 2480


Chcę obliczyć taką skalę, żeby po pomnożeniu przez nią wysokości i szerokości zdjęcie nie było mniejsze niż 697x492 przy zachowaniu proporcji. Ktoś pomoże? businesssmiley.png

Przy obliczaniu

  1. $scale = $width/$width2


wychodzi skala, ale wtedy

  1. $height2 * $scale


wychodzi więcej niż $height (492)

Ten post edytował skw 6.07.2013, 15:18:41
Go to the top of the page
+Quote Post
SmokAnalog
post
Post #2





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Najpierw piszesz, że zdjęcie ma nie być mniejsze niż 697x492, a potem mówisz, że wysokość wychodzi Ci więcej niż 492. To jak w końcu - chcesz mieć większy czy mniejszy?

Jeśli chcesz mniejszy (czyli żeby się zamknął w 697x492):
  1. $scale = min($width / $width2, $height / $height2);


A jeśli większy (czyli żeby jedna współrzędna była taka sama, a druga większa):
  1. $scale = max($width / $width2, $height / $height2);


I w końcu, niezależnie od wybranej metody:
  1. $newWidth = round($width2 * $scale);
  2. $newHeight = round($height2 * $scale);


Ten post edytował SmokAnalog 6.07.2013, 16:40:10
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 03:30