Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Zmiana rozmiaru oraz zapis miniaturek do pliku
vtuner
post
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 (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
pyro
post
Post #2





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

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


to zastosuj gd2
Go to the top of the page
+Quote Post
vtuner
post
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
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
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 (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
fernet
post
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
Go to the top of the page
+Quote Post

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: 22.08.2025 - 15:40