Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zmiana rozmiaru obrazka przed wrzuceniem do bloga
Forum PHP.pl > Forum > PHP
pixsoul
witam,

jak w temacie - czy ktos moze mnie pokierowac jak moge zmienic rozmiar (w pixelach) do okreslonego i drugo trzyma 'aspect ratio' i potem taki juz zresizowany wrzucam jako blog do bazy danych.

szukalem troszke w google-ach, ale tam zawsze znajdowalem jak zmienic rozmiar pliku na dysku poprzez php.

prosze o pomoc - o jakies linki, skrypty, wskazówki - cokolwiek....

z gory wielkie dzieki

maciek
Rozpalacz
Masz tutaj skrypt tworzacy miniaturki:

  1. <?php
  2. $img = imagecreatefromjpeg($sciezka_do_pliku);
  3.  
  4.  // Wymiarowanie rysunku
  5.  $a = imagesx($img);
  6.  $b = imagesy($img);
  7.  
  8.  if($a > $b){
  9. $na = 200;
  10. $nb = 200 * ($b / $a);
  11.  }elseif($x < $y){
  12. $na = 200 * ($a / $b);
  13. $nb = 200;
  14.  }else{
  15. $na = 200;
  16. $nb = 200;
  17.  }
  18.  
  19. $new_img = imagecreatetruecolor($na, $nb);
  20. imagecopyresampled($new_img, $img, 0, 0, 0, 0, $na, $nb, $a, $b);
  21.  
  22. @imagejpeg($new_img, "./galeria/zdj_small/$plik", 9); // cyfra 9 oznacza jakosc miniaturki, osobiscie polecam wartosc 100
  23.  
  24. ?>


Pozdrawiam
pixsoul
wiec jak powinienem to zrobic - wrzucic plik na serwer z tymczasowa nazwa , zmienic rozdzelczosc i dopiero potem wrzucic go do bazy ?

czy moge to zrobic w locie bez zapisywania na dysku ?
Rozpalacz
w locie raczej sie nie da, musisz zapisac plik na serwerze i dopiero wykonac skrypt miniaturkujacy zdjecie. Potem mozesz go przerzucic gdzie chcesz.
Tak czytam Twojego posta i nie jestem pewnien: chcesz trzymac zdjecie w katalogu czy w bazie danych??
pixsoul
w bazie danych jako blog
Kuziu
php domyślnie zapisuje plik tymczasowy na dysu po czym sam go kasuje więc tym się nie przejmuj.
pixsoul
wielkie dzieki za podpowiedz, ale wtedy czy ten skrypt bedzie mi przydatny - a jak nie to czy mozesz mnie do czegos pokierowac ? moze zrobiles kiedys cos podobnego ?

maciek
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.