Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 544 Pomógł: 5 Dołączył: 18.08.2009 Ostrzeżenie: (0%)
|
Mam skrypt galerii w którym jest tworzenie miniatur. Ale problem jest taki że przy zdjęciach które mają większe height niż width to miniatura tworzy się na szerokość dobrze ale proporcje robią swoje i miniaturka zamiast mieć np. 150x112 ma 150x330. A chciałbym żeby było 150x112 bez względu na to czy zdjęcie jest długie czy wysokie.
Mam kod, pisałem go już dawno i w sumie nie wiele z niego pamiętam (IMG:style_emoticons/default/winksmiley.jpg) Zresztą w temacie miniaturek jestem w ogóle słaby:
Aha, nie chciałbym używać gotowych skryptów czy bibliotek bo najpierw chciałbym wszystko zrozumieć a potem dopiero bawić sie w coś bardziej skomplikowanego. |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%)
|
Jakby mało było na necie tego
http://www.google.pl/search?client=firefox...Szukaj+w+Google |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 544 Pomógł: 5 Dołączył: 18.08.2009 Ostrzeżenie: (0%)
|
...wiedziałem, że trafi się taka odpowiedź.
Samo tworzenie miniatur jak widać jest zrobione i działa. Wszystkie skrypty przeznaczone do tego nie mówią o tym co ja chce zrobić. Jakbym to umiał zrobić czy bym to znalazł to bym tu nie pisał. A trochę się naszukałem. |
|
|
|
Post
#4
|
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D |
A czemu nie olewasz ratio? (IMG:style_emoticons/default/winksmiley.jpg) Skoro i tak wielkości width oraz height mają być stałe to po co właściwie liczyć proporcję? (IMG:style_emoticons/default/winksmiley.jpg) Ma być 200x100 to na sztywno tak przy miniaturce ustawiaj. imagecopyresampled samo z siebie "skurczy" obrazek do danych wymiarów i zniekształci na odowiedniej osi by pasowało. W ten sposób z obrazka koła stworzysz elipsę bez problemu. Sam czasem tę właściwość wykorzystuję gdy nie mam ochoty na miniaturkach rzędu 60x48 zamiaru zachowywać proporcji. A user kliknie i tak wyświetlenie oryginału bo nie będzie z lupą przy monitorze siedział (IMG:style_emoticons/default/smile.gif) I nie obchodzi mnie wtedy czy oryginał miał 640x480 czy 480x640 (IMG:style_emoticons/default/biggrin.gif) Kto by owo 60x48 oglądał? (IMG:style_emoticons/default/winksmiley.jpg)
|
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 544 Pomógł: 5 Dołączył: 18.08.2009 Ostrzeżenie: (0%)
|
|
|
|
|
Post
#6
|
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D |
Sam mówiłeś, że ma się kurczyć z 330 do 112, bo miniaturka ma mieć z góry określone wymiary, niezależne od współczynnika proporcjonalności. Albo więc chcesz go zachować i w przypadku obrazka tę większą wartość będziesz przyjmował jako 150 i mniejszą skalował by zachować proporcje, albo ustawisz obie na określoną wartość, ale wtedy obrazek straci proporcje. Nie da się obu rzeczy jednocześnie mieć.
|
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 544 Pomógł: 5 Dołączył: 18.08.2009 Ostrzeżenie: (0%)
|
Nie wiem czy dobrze mnie zrozumiałeś. Chodzi o to, że wrzucając obrazek o obojętnie jakich wymiarach, ma się tworzyć miniaturka 150x150 (kwadratowa chyba będzie lepsza) ale przy tym zachowując proporcje. A jak coś się nie zmieści na niej to żeby obcinało resztę.
Coś takiego: http://img171.imageshack.us/img171/7703/miniyz.jpg I tak samo żeby się robiło z miniaturami gdzie H>W. |
|
|
|
Post
#8
|
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D |
Czyli Twój to przypadek nr1 opisany przeze mnie + przesunięcie w odpowiednie miejsce na obrazku wynikowym. Naprawdę sprawdź co oznaczają wszystkie parametry w funkcji imagecopyresampled ze szczególnym uwzględnieniem 3, 4, 7 i 8 a resztę robisz tylko tak, że ustawiasz większą z wartości width lub height na 150, a mniejszą według niej skalujesz.
|
|
|
|
![]() ![]() |
|
Aktualny czas: 24.12.2025 - 10:32 |