Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Zmiana rozmiaru oraz zapis miniaturek do pliku
vtuner
post 11.09.2008, 15:49:56
Post #1





Grupa: Zarejestrowani
Postów: 220
Pomógł: 10
Dołączył: 23.08.2005
Skąd: Łódź

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


Witam,

Napotkałem ostatnio mały problem. Otóż przekazuje za pomocą INPUT o typie FILE jakiś plik JPG (o rozmiarze min. 800x600). Następnie chciałbym z tego obrazka stworzyć dwie miniaturki:

1. rozdzielczość 520 x proporcjonalna_wysokosc
2. rozdzielczość 100 x proporcjonalna_wysokosc

i zapisać obie miniaturki w odpowiednim katalogu pod odpowiednią nazwą. Pliku pierwotnego (o rozmiarze min. 800x600) nie chciałbym zapisywać.

Niestety nie mogę co tych celów zastosować klasy ImageMagick

Z góry dziękuje za pomoc smile.gif
Go to the top of the page
+Quote Post
pyro
post 11.09.2008, 15:51:11
Post #2





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


to zastosuj gd2


--------------------
ET LINGUA EIUS LOQUETUR IUDICIUM
Go to the top of the page
+Quote Post
vtuner
post 11.09.2008, 15:54:47
Post #3





Grupa: Zarejestrowani
Postów: 220
Pomógł: 10
Dołączył: 23.08.2005
Skąd: Łódź

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


Tak, Tak domyślam się, że to będzie ta biblioteka, ale nie znam na tyle funkcji GD2, dlatego prosiłbym o rozszerzenie tego tematu.
Go to the top of the page
+Quote Post
mike
post 11.09.2008, 15:57:32
Post #4





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Proszę bardzo: Image Processing (GD)
A to jedna z funkcji, która napewno Cię zaciekawi: imagecopyresized (w opisie i komentarzach masz gotowca).
Dodatkowo na tym forum masz sporo gotowców.
Go to the top of the page
+Quote Post
guilty82
post 11.09.2008, 15:58:47
Post #5





Grupa: Zarejestrowani
Postów: 176
Pomógł: 31
Dołączył: 26.03.2007

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


funkcja do zmiany
  1. <?php
  2. function resizethumb($imgName, $size)
  3. {
  4.    if (!($img = imagecreatefromjpeg($imgName))) {
  5.        echo 'Nie mogę otworzyć plik:'.$imgName;
  6.        exit();
  7.    }
  8.    
  9.    $img_w = imagesx($img);
  10.    $img_h = imagesy($img);
  11.    
  12.    $ratio = $img_w / $img_h;
  13.    
  14.    if ($ratio >1) {
  15.        $new_img_w = $size;
  16.        $new_img_h = ($size / $ratio);
  17.    
  18.    } else {
  19.        $new_img_w = ($size * $ratio);
  20.        $new_img_h = $size;
  21.    
  22.    }
  23.    
  24.    $tempImg = imagecreatetruecolor($new_img_w, $new_img_h);
  25.    imagecopyresampled($tempImg, $img, 0, 0, 0, 0, $new_img_w, $new_img_h, $img_w, $img_h);
  26.    
  27.    $name = substr($imgName, 0, strlen($imgName) - 4);
  28.    $name = $name."-resized.jpg";
  29.    
  30.    imagejpeg($tempImg, $name);
  31.  
  32. }
  33. ?>


Wywolanie

  1. <?php
  2. resizethumb(obrazek.jpg, 520);
  3. ?>


Moze pomoze smile.gif
Go to the top of the page
+Quote Post
fernet
post 11.09.2008, 16:04:47
Post #6





Grupa: Zarejestrowani
Postów: 91
Pomógł: 1
Dołączył: 22.03.2007

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


Funkcje znajdzesz w manualu i do napisana zostanie ci rownanie matematyczne podobne do Image Size z photoshopa pamietaj o zaokragleniu


--------------------
Czy sprzedal sie juz czy dopiero ma? Oto pytanie, ktore stawiam wam. A czemu gdy byl, to nic tylko spal? Ze mna co lubie go gadac nic nie chcial. A czemu to gra, a tamtego nie. Chyba nas wszystkich nic nie szanuje. Jaki byl kiedy pil? Jaki byl kiedy gral? Czy to ten czlowiek sam czy moze rozni dwaj?
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 Wersja Lo-Fi Aktualny czas: 8.07.2025 - 07:05