Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Funkcja Do Miniaturek Zdjęć
Forum PHP.pl > Forum > PHP
yono
Cześć pisze swój moduł-galerie do nuka. Potrzebuję skrypt a najlepiej funkcję, która wyświetla mi miniaturkę zdjęcia, której podaje jako argument scieżkę. aarambo.gif
tes
przepraszam ze sie wtrace, jestem poczatkujacy totalnie, wiec pytanie moze byc glupie:

czy jest jakas funkjca, ktora sama tworzy miniaturki zdjec ? tzn nie skaluje, bo skalowac to ja sobie moge w HTML tongue.gif tylko chodzi o to aby samo robilo plik graficzny w ktorym zamieszczone by bylo pozmiejszone zdjecie do podanych przeze mnie wymiarow....

np: mam zdjecie: pupka.jpg, ktore ma wymiar 800x600 i chce zeby skrypt stworzyl mi zdjecie : pupka_1.jpg o wymiarach 80x60 i zapisal je w katalogu /miniatury


jest cos takiego ?
hwao
Nie ma czegos takiego ( ale nie jetsem w 100% pewien smile.gif ).

Napewno da sie zrobic klas ktora by Ci skalowala zapisywala z odpowiednia nazwa plik tam gdzie chcesz i jak chcesz tylko napisac ja trzeba
komar07
gotowej funkcji nie ma poszukajcie na forum bo juz byl gdzies ten watek jak nie to sciagnij skrypt galerii i zobacz jak sie generuje miniatury.
silent
Jak nie ma jak jest? smile.gif
  1. <?php
  2. function resizeImage($src,$dest,$maxWidth,$maxHeight,$quality=100) {
  3.  if (file_exists($src) && isset($dest)) {
  4.  // path info
  5.  $destInfo = pathInfo($dest);
  6.  
  7.  // image src size
  8.  $srcSize = getImageSize($src);
  9.  
  10.  // image dest size $destSize[0] = width, $destSize[1] = height
  11.  $srcRatio = $srcSize[0]/$srcSize[1]; // width/height ratio
  12.  $destRatio = $maxWidth/$maxHeight;
  13.  if ($destRatio > $srcRatio) {
  14.  $destSize[1] = $maxHeight;
  15.  $destSize[0] = $maxHeight*$srcRatio;
  16.  }
  17.  else {
  18.  $destSize[0] = $maxWidth;
  19.  $destSize[1] = $maxWidth/$srcRatio;
  20.  }
  21.  
  22.  // path rectification
  23.  if ($destInfo['extension'] == &#092;"gif\") {
  24.  $dest = substr_replace($dest, 'jpg', -3);
  25.  }
  26.  
  27.  // true color image, with anti-aliasing
  28.  $destImage = imagecreatetruecolor($destSize[0],$destSize[1]);
  29.  
  30.  // src image
  31.  switch ($srcSize[2]) {
  32.  case 1: //GIF
  33.  $srcImage = imageCreateFromGif($src);
  34.  break;
  35.  
  36.  case 2: //JPEG
  37.  $srcImage = imageCreateFromJpeg($src);
  38.  break;
  39.  
  40.  case 3: //PNG
  41.  $srcImage = imageCreateFromPng($src);
  42.  break;
  43.  
  44.  default:
  45.  return false;
  46.  break;
  47.  }
  48.  
  49.  imageCopyResampled($destImage, $srcImage, 0, 0, 0, 0,$destSize[0],$destSize[1],$srcSize[0],$srcSize[1]);
  50.  
  51.  switch ($srcSize[2]) {
  52.  case 1:
  53.  case 2:
  54.  imageJpeg($destImage,$dest,$quality);
  55.  break;
  56.  
  57.  case 3:
  58.  imagePng($destImage,$dest);
  59.  break;
  60.  }
  61.  return true;
  62.  }
  63.  else {
  64.  return false;
  65.  }
  66. }
  67. ?>
komar07
Chodzilo mi o gotowa funkcje php.
silent
A co za różnica?
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.