|
|
|
|
<html>
<body>
<?php
echo "<img src='img_prev.php?id=2.jpg&m=1'>";
?>
</body>
</html>
|
как сжать скриптом 'img_prev.php?id=2.jpg&m=1' картинку, и вывести её на странице ? | |
|
|
|
|
|
|
|
для: Alexx
(31.03.2006 в 16:26)
| | Что значит сжать? Preview типа сделать? | |
|
|
|
|
|
|
|
для: Alexx
(31.03.2006 в 16:26)
| | Как сжать по объему или по размерам?
По размерам
<?php
$filename = "iamge.gif"; //Имя файла
$w = 300; //Нужные размер по ширине
$h = 300; //Нужные размер по высоте
//определим коэффициент сжатия изображения, которое будем генерить
$ratio=$w/$h;
//получим размеры исходного изображения
$size_img=getimagesize($filename);
//Если размеры меньше, то масштабирования не нужно
if(($size_img[0]<$w) && ($size_img[1]<$h)){
return true;
}
//получим коэффициент сжатия исходного изображения
$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);
$white=imagecolorallocate($dest_img,255,255,255);
if($size_img[2]==2){
header ("Content-type: image/jpeg");
$src_img=imagecreatefromjpeg($filename);
}elseif($size_img[2]==1){
header ("Content-type: image/gif");
$src_img=imagecreatefromgif($filename);
}elseif($size_img[2]==3){
header ("Content-type: image/png");
$src_img=imagecreatefrompng($filename);
}
imagecopyresampled($dest_img,$src_img,0,0,0,0,$w,$h,$size_img[0],$size_img[1]);
// сохраняем уменьшенную копию в файл
if($size_img[2]==2){
imagejpeg($dest_img);
}elseif($size_img[2]==1){
imagegif($dest_img);
}elseif($size_img[2]==3){
imagepng($dest_img);
}
?>
|
| |
|
|
|
|
|
|
|
для: Artemy
(31.03.2006 в 16:55)
| | Artemy, вставляю твой код в файл img_prev.php файл указываю правильно, в итоге ничего не получается в чём может быть ошибка ? | |
|
|
|
|
|
|
|
для: Alexx
(31.03.2006 в 18:53)
| | Странно у меня работает! :-|
Виной тому, что у Вас он не работает, может быть несколько причин:
1) У Вас на машине или на хостинге не установлена библиотека GDLib, при помощи которой работает данный скрипт.
2) Данный скрипт работает только с этими графифическими форматами: GIF, JPEG, PNG
3) Глупо конечно говорить, но может Вы путь к картинке не правильно указали? | |
|
|
|