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

Форум PHP

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

 

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

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

тема: Уменьшение картинки
 
 автор: sl1p   (10.08.2008 в 20:11)   письмо автору
 
 

помогите както настроить или х3..
спёр из книжки переделал под себя маленько.
указывая размер 550х400 более менее нормально ресайзит.. а вот нужно превью ещё.. в размере 166х126.. тут то оно и тупит=\ сплющивает как тока можно)с математикой не лады.. хелП)

<?
function img_resize($w,$h,$dir,$iname,$iway,$newimgname){
if (
$iname!=""){
$extt=strchr($iname,".");
move_uploaded_file($iway,$dir.$newimgname.$extt);
///RESIZE
$mis=getimagesize($dir.$newimgname.$extt);
$ratio=$w/$h;
$misratio=$mis[0]/$mis[1];
if (
$ratio<$misratio){
$h=$w*$misratio;
}
else{
$w=$h*$misratio;
}
$mi=imagecreatefromjpeg($dir.$newimgname.$extt);
$ti=imagecreatetruecolor($w,$h);
imagecopyresampled($ti,$mi,0,0,0,0,$w,$h,$mis[0],$mis[1]);
imagejpeg($ti,$dir.$newimgname.$extt);
imagedestroy($mi);
imagedestroy($ti);
return 
$newimgname.$extt."*";
}
//if filename!=''
}
?>

  Ответить  
 
 автор: sim5   (10.08.2008 в 20:22)   письмо автору
 
   для: sl1p   (10.08.2008 в 20:11)
 

А зачем вам математика? Тут и арифметики хватит - уменьшать надо пропорционально, а разве трудно это посчитать? Воспольуйтесь поиском по разделу - примеров этому тут уйма!

  Ответить  
 
 автор: sl1p   (10.08.2008 в 20:43)   письмо автору
 
   для: sim5   (10.08.2008 в 20:22)
 

ну функция то вроде правильная, но размеры картинок могут быть абсолютно неизвестного размера..=\
тоесть более приближённые к "нормальным" типа 800х600 или 600х800 всё окок.. но какието идиотские размеры не катят=(

  Ответить  
 
 автор: sim5   (10.08.2008 в 20:47)   письмо автору
 
   для: sl1p   (10.08.2008 в 20:43)
 

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

  Ответить  
 
 автор: sl1p   (10.08.2008 в 20:55)   письмо автору
 
   для: sim5   (10.08.2008 в 20:47)
 

окей,сенк)
паискаю.

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

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