![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 131 Pomógł: 0 Dołączył: 28.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witajcie.
Mam takie zadanie: na wejściu otrzymuję zdjęcie o dowolnych wymiarach(większych niż 50x50 px). Na wyjściu chciałbym otrzymać obrazek właśnie o wymiarach 50x50. Niestety, nie polega to na zwykłym przeskalowaniu - obrazek nie koniecznie na wejsciu musi mieć kwadratowe proporcje (a proporcje zachować muszę, nie można rozciągać obrazka) Planuję zatem zmniejszyć obrazek ,a następnie ze środka wyciąć obrazek o rozmiarach 50x50 - zastanawiam się jednak czy taki algorytm jest optymalny (ew. czy nie istnieje jakaś gotowa biblioteka do tego), natomiast chciałbym to zrobić tak: Kod Pobierz obrazek -> przeskaluj do mniejszą wartość(długość || szerokość) do 50 px(z zachowaniem proporcji) -> ze środka wytnij obrazek 50x50-> wyświetl to co wyciąłem Zakładając, że nie ma gotowych bibliotek do tego, wiem jak przeskalować obrazek ,ale jak wyciąć od środka nie mam już pojęcia. czy mógłby ktoś w takim wypadku podrzucić przydatnymi funkcjami? z góry dzięki |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Zapoznaj się z gotowym rozwiązaniem w postaci np. phpThumb (polecam) zwłaszcza z tzw. Adaptive Resizing chyba o to Ci chodzi. Ostatni link prowadzi do sekcji basic usage i tam znajdziesz wspomniane Adaptive Resizing.
-------------------- Nie pomagam na pw, tylko forum.
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 678 Pomógł: 124 Dołączył: 26.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
A nie możesz dłuższego boku przeskalować do 50px a mniejszego proporcjonalnie? To chyba jest lepsze rozwiązanie. Poszukaj na google: "php proporcjonalnie miniaturki", czy coś w ten deseń.
-------------------- Napisane z palca! <- to tak dla lansu ;)
FancyStudio.pl - Tworzenie Stron WWW w Oparciu o XHTML, CSS, JS, PHP i MySQL. Mój blog :: Portfolio Fotograficzne Igora Biedrawy |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 03:34 |