Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Изменение формата JPG функцией
 
 автор: сотка   (29.12.2011 в 15:50)   письмо автору
 
 

<?php
  
////////////////////////////////////////////////////////////
  // 2005-2008 (C) Кузнецов М.В., Симдянов И.В.
  // PHP. Практика создания Web-сайтов
  // IT-студия SoftTime 
  // http://www.softtime.ru   - портал по Web-программированию
  // http://www.softtime.biz  - коммерческие услуги
  // http://www.softtime.mobi - мобильные проекты
  // http://www.softtime.org  - некоммерческие проекты
  ////////////////////////////////////////////////////////////
  // Выставляем уровень обработки ошибок 
  // (http://www.softtime.ru/info/articlephp.php?id_article=23)
  
error_reporting(E_ALL & ~E_NOTICE);

  
////////////////////////////////////////////////////////////
  // Функция создающая уменьшенную копию фотографии $big,
  // которая помещается в файл $small
  // Уменьшенная копия имеет ширину и высоту равную
  // $width и $height пикселам, соответственно. Это максимально 
  // возможные значения. Они будут пересчитаны чтобы сохранить 
  // пропорции масштабируемого изображения.
  
function resizeimg($big$small$width$height
  { 
    
// Имя файла с масштабируемым изображением 
    
$big "../../$big"
    
// Имя файла с уменьшенной копией. 
    
$small "../../$small";     
    
// определим коэффициент сжатия изображения, которое будем генерить 
    
$ratio $width $height
    
// получим размеры исходного изображения 
    
$size_img getimagesize($big); 
    list(
$width_src$height_src) = getimagesize($big); 
    
// Если размеры меньше, то масштабирования не нужно 
    
if (($width_src<$width) && ($height_src<$height))
    {
      
copy($big$small);
      return 
true
    }
    
// получим коэффициент сжатия исходного изображения 
    
$src_ratio=$width_src/$height_src

    
// Здесь вычисляем размеры уменьшенной копии, чтобы при 
    // масштабировании сохранились пропорции исходного изображения 
    
if ($ratio<$src_ratio
    { 
      
$height $width/$src_ratio
    } 
    else 
    { 
      
$width $height*$src_ratio
    } 
    
// создадим пустое изображение по заданным размерам 
    
$dest_img imagecreatetruecolor($width$height);   
    
$white imagecolorallocate($dest_img255255255);        
    if (
$size_img[2]==2)  $src_img imagecreatefromjpeg($big);                       
    else if (
$size_img[2]==1$src_img imagecreatefromgif($big);                       
    else if (
$size_img[2]==3$src_img imagecreatefrompng($big); 
    

    
// масштабируем изображение     функцией imagecopyresampled() 
    // $dest_img - уменьшенная копия 
    // $src_img - исходной изображение 
    // $width - ширина уменьшенной копии 
    // $height - высота уменьшенной копии         
    // $size_img[0] - ширина исходного изображения 
    // $size_img[1] - высота исходного изображения 
    
imagecopyresampled($dest_img
                       
$src_img
                       
0
                       
0
                       
0
                       
0
                       
$width
                       
$height
                       
$width_src
                       
$height_src);
    
// сохраняем уменьшенную копию в файл 
    
if ($size_img[2]==2)  imagejpeg($dest_img$small);                       
    else if (
$size_img[2]==1imagegif($dest_img$small);                       
    else if (
$size_img[2]==3imagepng($dest_img$small);
    
    
// чистим память от созданных изображений 
    
imagedestroy($dest_img); 
    
imagedestroy($src_img); 
    return 
true;          
  }   
?>

Здравствуйте! каким образом изменить ф-цию чтобы она могла уменьшать изображения формата JPG?

  Ответить  
 
 автор: cheops   (29.12.2011 в 16:17)   письмо автору
 
   для: сотка   (29.12.2011 в 15:50)
 

Она это должна и так делать... Как выглядит проблема, что происходит на выходе?

  Ответить  
 
 автор: сотка   (29.12.2011 в 16:20)   письмо автору
 
   для: cheops   (29.12.2011 в 16:17)
 

Думал сначало проблема в ней сейчас актуальна вот эта тема ! Мои извинения!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования