ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

как сделать превью изображения средствами чистого пхп без расширений ?
  #1  
Старый 17.10.2006, 22:33
Аватар для Дикс
Дикс
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме:
2209675

Репутация: 537


Отправить сообщение для Дикс с помощью ICQ
По умолчанию как сделать превью изображения средствами чистого пхп без расширений ?

Я знаю про exif_thumbnail
но её нет в стандартной инсталляции пхп.
Как вы считаете, стоит ли её использовать - может это расширение достаточно распространено, либо есть какие-то другие средства создания превью?
 
Ответить с цитированием

  #2  
Старый 17.10.2006, 22:52
Аватар для nc.STRIEM
nc.STRIEM
Members of Antichat - Level 5
Регистрация: 05.04.2006
Сообщений: 1,066
Провел на форуме:
3493315

Репутация: 1228


Отправить сообщение для nc.STRIEM с помощью ICQ
По умолчанию

Есле я тя правильно понял то вот:
функция меняющая разрешение картинки
PHP код:
Функция imgresize("имя исходного файла"" имя генерируемого файла"" ширина ",  "высота" ," качество генерируемого JPEG, по умолчанию - максимальное ","цвет фона, по умолчанию - белый")
***********************************************************************************/

function 
imgresize($src$dest$width$height$quality=100$rgb=0xFFFFFF)
{
  if (!
file_exists($src)) return false;

  
$size getimagesize($src);

  if (
$size === false) return false;

  
$format strtolower(substr($size['mime'], strpos($size['mime'], '/')+1));
  
$icfunc "imagecreatefrom" $format;
  if (!
function_exists($icfunc)) return false;

  
$x_ratio $width $size[0];
  
$y_ratio $height $size[1];

  
$ratio       min($x_ratio$y_ratio);
  
$use_x_ratio = ($x_ratio == $ratio);

  
$new_width   $use_x_ratio  $width  floor($size[0] * $ratio);
  
$new_height  = !$use_x_ratio $height floor($size[1] * $ratio);
  

  
$isrc $icfunc($src);
  
$idest imagecreatetruecolor($new_width$new_height);

  
imagefill($idest00$rgb);
  
imagecopyresampled($idest$isrc0000$new_width$new_height$size[0], $size[1]);
  
  for(
$i=strlen($dest)-1;$i>=0;$i--)
      if(
$dest[$i]=='.')
         break;
      
$i++;
   
$ftypeg="";
  while(
$i<strlen($dest))
       { 
        
$ftypeg.=$dest[$i];
        
$i++;
        }
            if(
strtolower($ftypeg)=="jpg")
       
$ftypeg="jpeg";
      
$ftypeg="image".$ftypeg;
  if (!
function_exists($ftypeg)) return false;
  
$ftypeg($idest$dest$quality);

  
imagedestroy($isrc);
  
imagedestroy($idest);

  return 
true;



Последний раз редактировалось nc.STRIEM; 17.10.2006 в 23:00..
 
Ответить с цитированием

  #3  
Старый 17.10.2006, 22:55
Аватар для ZaCo
ZaCo
Banned
Регистрация: 20.06.2005
Сообщений: 880
Провел на форуме:
4610226

Репутация: 1332


По умолчанию

куда легче делать наподобии мозайки только наоборот - делаем целочисленно деление высоты исходной на высоту нужной == dx(аналогично для ширины). далее делаем цикл по матрице картинки (пох джпег или что другое в пхп сила) с пробегом dx и вставляем в новую кратинку размерами нужной с пробегом в 1 пиксель. ну идея думаю понятна.
 
Ответить с цитированием

  #4  
Старый 18.10.2006, 00:29
Аватар для nerezus
nerezus
Pagan Heart
Регистрация: 12.08.2004
Сообщений: 3,791
Провел на форуме:
6490435

Репутация: 2290


Отправить сообщение для nerezus с помощью ICQ
По умолчанию

Цитата:
куда легче делать наподобии мозайки только наоборот - делаем целочисленно деление высоты исходной на высоту нужной == dx(аналогично для ширины). далее делаем цикл по матрице картинки (пох джпег или что другое в пхп сила) с пробегом dx и вставляем в новую кратинку размерами нужной с пробегом в 1 пиксель. ну идея думаю понятна.
ага, и на выходе получаем говно.
 
Ответить с цитированием

  #5  
Старый 18.10.2006, 10:42
Аватар для EXSlim
EXSlim
Познающий
Регистрация: 09.10.2006
Сообщений: 92
Провел на форуме:
347686

Репутация: 87
Отправить сообщение для EXSlim с помощью ICQ
По умолчанию

>>>Я знаю про exif_thumbnail
но её нет в стандартной инсталляции пхп.

Эта функция не входит в модуль GDlib. Она доступна если PHP(от 4й версии) скомпилирован с опцией --enable-exif.
 
Ответить с цитированием

  #6  
Старый 18.10.2006, 22:48
Аватар для SMiX
SMiX
Участник форума
Регистрация: 25.07.2005
Сообщений: 246
Провел на форуме:
457850

Репутация: 174
По умолчанию

imagecopyresampled если я правильно понимаю задачу...
 
Ответить с цитированием

  #7  
Старый 18.10.2006, 22:58
Аватар для nc.STRIEM
nc.STRIEM
Members of Antichat - Level 5
Регистрация: 05.04.2006
Сообщений: 1,066
Провел на форуме:
3493315

Репутация: 1228


Отправить сообщение для nc.STRIEM с помощью ICQ
По умолчанию

Цитата:
Сообщение от SMiX  
imagecopyresampled если я правильно понимаю задачу...
Эта функция береться за основу, но чеб картинка нормальной получилась, над еще пару нюансов учесть.. (см. выше)
 
Ответить с цитированием

  #8  
Старый 19.10.2006, 04:44
Аватар для Trinux
Trinux
Познавший АНТИЧАТ
Регистрация: 26.11.2004
Сообщений: 1,149
Провел на форуме:
941818

Репутация: 569


По умолчанию

если вообще без модулей, уважаемый дикс, то тебе будет проще убиться ап стенку =)
Gd - это расширение.
 
Ответить с цитированием

  #9  
Старый 19.10.2006, 21:07
Аватар для Дикс
Дикс
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме:
2209675

Репутация: 537


Отправить сообщение для Дикс с помощью ICQ
По умолчанию

Цитата:
>>>Я знаю про exif_thumbnail
но её нет в стандартной инсталляции пхп.
вот и я про тоже. но, ёпт, ответьте мне, если знаете:
часто на серверах хостеров попадается пхп скомпилированный с этим эксифом?

за функцию спасиба, попробую попользовать
 
Ответить с цитированием

  #10  
Старый 19.10.2006, 23:47
Аватар для Zitt
Zitt
Познавший АНТИЧАТ
Регистрация: 07.05.2006
Сообщений: 1,031
Провел на форуме:
5885100

Репутация: 773


Отправить сообщение для Zitt с помощью ICQ
По умолчанию

Дикс, вот посмотри вот етот "движок" для фоток без наворотов зато сам автоматически создаёт превью vj; чё найдёш полезного для себя!
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Мой ржачный разговор в аське с кем-то вроде как с античата, как я подумал Дрэгги Болталка 21 22.07.2007 12:33
Как своими руками сделать принтер HP LaserJet 1300 совместимым с расходниками LJ 1200 dinar_007 Аппаратное обеспечение 2 08.09.2006 00:41



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ