![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 135 Pomógł: 0 Dołączył: 18.05.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
zmontowalem sobie skrypcik ktory pomniejsza zdjecie a nastepnie wycina z niej kwadrat o okreslonych wymiarach.Teraz moje pytanko jak sprawic alby wycinany kwadrat wysrodkowac tzn znalezc jego srodek i od srodka wyciac np.kwadrat 90x90.Prosze o rade.
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Ja osobiście to wyszedłbym od takiej strony (i tę metodę też już poruszałem tu na forum): Najpierw skalujemy całość obrazka tak, by zachowując proporcje osiągnąć stan, gdy jeden z boków pokrywa się z oczekiwanym rozmiarem, a drugi jest większy lub równy oczekiwanemu. Dopiero wtedy obliczamy różnicę, którą potem używamy do skadrowania. Przykładu nie rzucam bo było by tego trochę w opisie krok po kroku. Na forum jednak jest na bank ten temat z moimi objaśnieniami szerszymi.
Najprościej jednak omówiwszy przykład to będzie tak: Przy obliczaniu proporcji widzę, że przy przeskalowaniu dopasuje mi się szerokość a przeskalowanemu obrazkowi wysokość wyskoczy 20px większa niż to co chcę. Więc skaluje obraz wycinając z niego obrazek przesunięty w dół od lewego górnego rogu o połówkę różnicy między tym jaki chcemy a przeskalowaną wysokością. -------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 57 Pomógł: 6 Dołączył: 10.08.2009 Skąd: Nowe Miasto Lubawskie Ostrzeżenie: (0%) ![]() ![]() |
Przyjmując że height i width to wysokość i szerokość wygenerowanego obrazka i chcesz mieć wyśrodkowany obrazek o wysokości i szerokości 90 pikseli (i hipotetycznie zaczynając od lewego górnego rogu jako od początku rozmiarów zdjęcia) to wzory brzmia tak:
Kod height/2 - 90/2; width/2 - 90/2; Należy pewnie zmodyfikować wzory jeśli początek obrazka jest w lewym dolnym rogu ![]() ![]() Ten post edytował bolverk 7.08.2010, 00:07:57 -------------------- Użytkownicy jak życie, wszystkim mogą cię zaskoczyć.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 08:59 |