| |
|
|
| | Как из рисунка извлечь Thumbnails и отобразить его в бразуере? Т.е если есть изображение на сервере прочитать файл и вывести изображение в браузер или сохранить в другой файл. Как мне это сделать или возможно такое? Заранее Благодарю. | |
| |
|
|
| |
|
|
| |
для: jeans1986
(02.06.2007 в 18:52)
| | | Именно thumbnail, эскиз, можно извлечь только из JPEG, да и то не из всякого. А вот показать уменьшенную копию можно практически всегда; это называется превью (превьюшка, preview, уменьшеная копия) и есть в любой галерее. Отдельной функции для этого нет, но есть много готовых и "вылизанных" решений. Они в поиске=) | |
| |
|
|
| |
|
|
| |
для: jeans1986
(02.06.2007 в 18:52)
| | |
<?php
$filename='test.jpg';
$width=200;
$height=200;
list($width_orig,$height_orig)=getimagesize($filename);
$ratio_orig=$width_orig/$height_orig;
if($width/$height>$ratio_orig)$width=$height*$ratio_orig;else $height=$width/$ratio_orig;
$image_p=imagecreatetruecolor($width,$height);
$image=imagecreatefromstring(file_get_contents($filename));
imagecopyresampled($image_p,$image,0,0,0,0,$width,$height,$width_orig,$height_orig);
imagejpeg($image_p,'thumb_'.$filename,100);
?>
|
| |
| |
|
|
| |
|
|
| |
для: sms-send
(02.06.2007 в 19:23)
| | | Это только для jpg) Остальные типы надо хотя бы отсечь. | |
| |
|
|
| |
|
|
| |
для: sms-send
(02.06.2007 в 19:23)
| | |
<?php
function resizeimg($filename, $smallimage, $w, $h)
{
// определим коэффициент сжатия изображения, которое будем генерить
$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);
$white = imagecolorallocate($dest_img, 255, 255, 255);
if ($size_img[2]==2) $src_img = imagecreatefromjpeg($filename);
else if ($size_img[2]==1) $src_img = imagecreatefromgif($filename);
else if ($size_img[2]==3) $src_img = imagecreatefrompng($filename);
// масштабируем изображение функцией 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]);
// сохраняем уменьшенную копию в файл
if ($size_img[2]==2) imagejpeg($dest_img, $smallimage);
else if ($size_img[2]==1) imagegif($dest_img, $smallimage);
else if ($size_img[2]==3) imagepng($dest_img, $smallimage);
// чистим память от созданных изображений
imagedestroy($dest_img);
imagedestroy($src_img);
return true;
}
//Запуск функции
$bigimage = "big.jpg"; //Большое изображение
$smallimage = "mini.jpg"; //Куда сохранить маленькое
resizeimg($bigimage, $smallimage, 100, 100); //размеры 100x100px
?>
|
Это не моё :) Мне тоже когда то давали... :) | |
| |
|
|