|
|
|
| Переделал вашу фунуцию(под разные формат) и она стала слегка кривовато работать!
Кушает не все *.jpg не могу понять почему.
<?
// ФОТО РЕСАЙЗ
// Функция создающая уменьшенную копию фотографии $filename,
// которая помещается в файл $smallpicture
// Уменьшенный вариант имеет ширину и высту равную
// $w и $h пикселам, соответственн.
function resizeimg($filename, $smallpicture, $w, $h)
{
// Определим формат фала изображения
$type = strtolower(strrchr($filename, "."));
// Имя файла с масштабируемым изображением
$filename = "../".$filename;
// Имя файла с уменьшенной копией.
$smallpicture = "../".$smallpicture;
// определим коэффициент сжатия изображения, которое будем генерить
$ratio = $w/$h;
// получим размеры исходного изображения
$size_img = getimagesize($filename);
// получим коэффициент сжатия исходного изображения
$src_ratio=$size_img[0]/$size_img[1];
// Здесь вычисляем размеры уменьшенной копии, чтобы при масштабировании сохранились
// пропорции исходного изображения
if ($ratio<$src_ratio)
{
$h = $w/$src_ratio;
}
else
{
$w = $h*$src_ratio;
}
// создадим пустое изображение по заданным размерам
$dest_img = imagecreatetruecolor($w, $h);
// создаем изображение из файла
switch($type)
{
case '.gif': // GIF
$src_img = imagecreatefromgif($filename);
break;
case '.jpg': // JPG
$src_img = imagecreatefromjpeg($filename);
break;
case '.png': // PNG
$src_img = imagecreatefrompng($filename);
break;
}
// масштабируем изображение функцией imagecopyresampled()
// $dest_img - уменьшенная копия
// $src_img - исходной изображение
// $w - ширина уменьшенной копии
// $h - высота уменьшенной копии
// $size_img[0] - ширина исходного изображения
// $size_img[1] - высота исходного изображения
imagecopyresampled($dest_img, $src_img, 0, 0, 0, 0, $w, $h, $size_img[0], $size_img[1]);
// сохраняем уменьшенную копию в файл
switch($type)
{
case '.gif': // GIF
imagegif($dest_img, $smallpicture);
break;
case '.jpg': // JPG
imagejpeg($dest_img, $smallpicture);
break;
case '.png': // PNG
imagepng($dest_img, $smallpicture);
break;
}
// чистим память от созданных изображений
imagedestroy($dest_img);
imagedestroy($src_img);
return true;
}
?>
|
| |
|
|
|
|
|
|
|
для: prostonau
(28.09.2005 в 18:20)
| | >Кушает не все *.jpg не могу понять почему.
Всмысле кушает не все jpg?
Может просто у вас не jpg файлы,
бывает такое что сохраняют не правильно файлы, т.е. файл *.bmp а при сохранении указан *.jpg
Конечно в таком случае он не будет его обрабатывать или же в чём то другом проблема? | |
|
|
|
|
|
|
|
для: cernos
(29.09.2005 в 11:30)
| | сначала не кушал, т.к.
"JPG" и "jpg" - разные при сравнении строк =)
После дороботки до "jpg"
В локале стало все работать, но на хосте не работает, т.е. не подцепляются картинки, которые подцепляются в локале.
хотя gif, png работают. | |
|
|
|
|
|
|
|
для: prostonau
(29.09.2005 в 15:07)
| | Дело в том что на хосте у вас стоит PHP ниже 5 версии, а у вас используется
функция strtolower() - которая появляется начиная с PHP 5!
Вместо функции strtolower сделайте замену больших букв на маленькие используйте функцию str_replace();
$text="JPG,PNG,GIF";
$text=str_replace("J",'j',$text);
$text=str_repace("P",'p',$text);
$text=str_replace("G",g',$text);
$text=str_repace("N",'n',$text);
$text=str_replace("I",'i,$text);
$text=str_repace("F",'f',$text);
|
| |
|
|
|
|
|
|
|
для: cernos
(29.09.2005 в 16:20)
| | Бред. strtolower есть и в 3 и в 4 php.
FM:
strtolower
(PHP 3, PHP 4 )
strtolower -- Make a string lowercase
Description
string strtolower ( string str)
Returns string with all alphabetic characters converted to lowercase.
Note that 'alphabetic' is determined by the current locale. This means that in i.e. the default "C" locale, characters such as umlaut-A (Д) will not be converted.
Пример 1. strtolower() example
<?php
$str = "Mary Had A Little Lamb and She LOVED It So";
$str = strtolower($str);
echo $str; // Prints mary had a little lamb and she loved it so
?>
|
| |
|
|
|
|
|
|
|
для: OZ_
(30.09.2005 в 01:16)
| | Бред не бред!
А вот на хосте с PHP4 не работает, тупо отказывается работать!
Вот и думай... | |
|
|
|
|
|
|
|
для: prostonau
(29.09.2005 в 15:07)
| | А какие именно файлы не подцепляются? С прописными буквами в расширении?
Приведите имена таких файлов. | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(30.09.2005 в 04:56)
| | 6_R_T_20.jpg - good
100.jpg - bad | |
|
|
|