Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zachowanie skali obrazka w miniaturze
pr0woKator
post
Post #1





Grupa: Zarejestrowani
Postów: 63
Pomógł: 1
Dołączył: 9.02.2012

Ostrzeżenie: (10%)
X----


Witajcie!

Mam mały problem, mianowicie staram się ogarnąć jedną rzeczy przy ulodawowaniu obrazków.
Chodzi mi o to żeby z uploadowanego obrazka zrobić miniaturę o wymiarach MAKSYMALNYCH 155 x 155 px.
Z tym że te obrazki uploadowane nie są kwadratami, mogą mieć różne wymiary np 1004 x 531px.
Nie bardzo wiem jak się do tego zabrać żeby mi się ładnie skala zachowywała.
Może wy mi coś Podpowiecie. Pozdro.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
jeremiash
post
Post #2





Grupa: Zarejestrowani
Postów: 94
Pomógł: 5
Dołączył: 6.11.2012

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


  1. <?php
  2.  
  3. function skaluj($adres, $szerokosc)
  4. {
  5.  
  6. // funkcja obsługuje również adresy internetowe jak http i ftp
  7. $pobierz = @file_get_contents($adres);
  8. $src = @imagecreatefromstring($pobierz);
  9. if (!$pobierz or !$src ) return false;
  10. unset($pobierz);
  11.  
  12. $pic_width = imagesx($src);
  13. $pic_height = imagesy($src);
  14. if (($szerokosc == $pic_width) or ($szerokosc == null)) return $src;
  15. $mini_width = $szerokosc;
  16. $mini_height = round($szerokosc * ($pic_height/$pic_width));
  17. $mini = imagecreatetruecolor($mini_width, $mini_height);
  18. imagecopyresampled($mini, $src, 0, 0, 0, 0, $mini_width, $mini_height, $pic_width, $pic_height);
  19. return $mini;
  20. imagedestroy($mini);
  21. }


ten używam sam, działa i bez błędów (IMG:style_emoticons/default/smile.gif)

Ten post edytował jeremiash 14.12.2012, 15:38:48
Go to the top of the page
+Quote Post
Kofel
post
Post #3





Grupa: Zarejestrowani
Postów: 99
Pomógł: 22
Dołączył: 14.12.2007
Skąd: Wyszków

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


Cytat(jeremiash @ 14.12.2012, 16:38:06 ) *
ten używam sam, działa i bez błędów (IMG:style_emoticons/default/smile.gif)

Twoja metoda uwzględnia tylko szerokość.

Ten post edytował Kofel 14.12.2012, 15:41:55
Go to the top of the page
+Quote Post
jeremiash
post
Post #4





Grupa: Zarejestrowani
Postów: 94
Pomógł: 5
Dołączył: 6.11.2012

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


Cytat(Kofel @ 14.12.2012, 15:41:33 ) *
Twoja metoda uwzględnia tylko szerokość.

tak... więc jak wcześniej napisałem , trzeba sprwdzić która krawędź dłuższa i przerobić w biegu (IMG:style_emoticons/default/smile.gif)

Ten post edytował jeremiash 14.12.2012, 15:51:53
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 13.10.2025 - 18:06