Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Jakość obrazka
cornholio666
post
Post #1





Grupa: Zarejestrowani
Postów: 472
Pomógł: 8
Dołączył: 14.03.2004
Skąd: Rzeszów

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


Witam

Mam kilka fotek zrobionych w dobrej jakosc. Napisalem skrypcik ktory zmniejsze je do odpowiednich rozmiarow (chodzi o wys i szer). Tyle ze jakosc jest słaba i rozmiar (waga) jest duza.Czesc kodu:

  1. <?php
  2.  
  3.  $images[0] = 'DSC03990.jpg';
  4.  $newheight = 300;
  5.  
  6.  header("Content-type: image/jpeg");
  7.  
  8.  for($i=0;$i < count($images); $i++)
  9.  {
  10.  $image = "gal/".$images[$i]; //$image zawiera sciezke do pliku
  11.  
  12.  list($width,$height) = getimagesize($image); //pobiera szerokosc i wysokosc obrazka
  13.  $newwidth = ($newheight/$height)*$width; //nowa szerokosc 
  14.  
  15.  $thumb = imagecreatetruecolor($newwidth, $newheight);
  16.  $nmImage = ImageCreateFromJpeg($image);
  17.  imagecopyresized($thumb, $nmImage, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
  18.  imagejpeg($thumb,"gal/miniaturki/".$images[$i],100);
  19.  }
  20.  
  21. ?>


Chodz mi o to zeby fotka zostala zmniejszona ale jakosc zachowana + maly rozmiar pliku.

Przykladowo Pajączek robi miniaturki w dobrej jakosci i o malym rozmiarze.
Jak to zrobic przy pomocy php?


--------------------
I need TP for my bunghole!!!

Mój nowy przyjaciel - tytanowa płytka na stałe
------------------------------------------------------
AEGEE, kwiaciarnia rzeszów , notariusz rzeszów, zakład krawiecki rzeszów, paweł jakubowicz
Go to the top of the page
+Quote Post
snipe
post
Post #2





Grupa: Zarejestrowani
Postów: 135
Pomógł: 1
Dołączył: 5.10.2005
Skąd: Opole/Chorzów

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


Lepsza jakosc mozesz uzyskac jak uzyjesz imagecopyresampled()


--------------------
Go to the top of the page
+Quote Post
son
post
Post #3





Grupa: Zarejestrowani
Postów: 210
Pomógł: 0
Dołączył: 31.01.2004
Skąd: Kraków

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


Cytat(cornholio666 @ 2006-02-23 11:26:16)
  1. <?php
  2.  
  3.  $images[0] = 'DSC03990.jpg';
  4.  $newheight = 300;
  5.  
  6.  header("Content-type: image/jpeg");
  7.  
  8.  for($i=0;$i < count($images); $i++)
  9.  {
  10.      $image = "gal/".$images[$i];  //$image zawiera sciezke do pliku
  11.      
  12.      list($width,$height) = getimagesize($image);  //pobiera szerokosc i wysokosc obrazka
  13.      $newwidth = ($newheight/$height)*$width;      //nowa szerokosc 
  14.      
  15.      $thumb = imagecreatetruecolor($newwidth, $newheight);
  16.      $nmImage = ImageCreateFromJpeg($image);
  17.      imagecopyresized($thumb, $nmImage, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
  18.      imagejpeg($thumb,"gal/miniaturki/".$images[$i],100);
  19.  }
  20.  
  21. ?>

Zwróć uwagę na ostatnią linijkę kodu:
Kod
imagejpeg($thumb,"gal/miniaturki/".$images[$i],100);

To właśnie ostatni parametr odpowiedzialny jest za jakość. Ty masz ustawine na 100 czyli brak kompresji. Zmień to na np. 85 lub 75 a obrazek zostanie skopresowany bez widocznych strat na jakości.

Pozdrawiam


--------------------
Warsztat: Apache 1.3.36 | MySQL 4.1.19 | php 5.1.4 | OS Linux SUSE 10.3 x86_64 | Kernel 2.6.22.12-0.1 | Opera 9.5 | Kate
Na warsztacie: Ekartki
Go to the top of the page
+Quote Post
cornholio666
post
Post #4





Grupa: Zarejestrowani
Postów: 472
Pomógł: 8
Dołączył: 14.03.2004
Skąd: Rzeszów

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


Cytat
Lepsza jakosc mozesz uzyskac jak uzyjesz imagecopyresampled()


dzieki o to mi chodzilo


--------------------
I need TP for my bunghole!!!

Mój nowy przyjaciel - tytanowa płytka na stałe
------------------------------------------------------
AEGEE, kwiaciarnia rzeszów , notariusz rzeszów, zakład krawiecki rzeszów, paweł jakubowicz
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 Aktualny czas: 20.08.2025 - 08:58