Составители:
Рубрика:
38
миниатюр гораздо выше, чем если бы они создавались средствами
PHP.
<?
// Каталог с полномасштабными фотографиями
$photoDir = 'Photo';
//Каталог с миниатюрами. Отметим, что лежащие
//в отдельном каталоге миниатюры имеют те же
//имена, что и соответствующие полномасштабные
//фотографии
$thumbDir = 'Photo/Thumbs0';
// Открываем каталог с фотографиями:
$d = opendir($photoDir);
while( ($f = readdir($d)) != false )
// Пока в каталоге есть файлы:
{
// путь к файлу
фотографии:
$photoPath = "$photoDir/$f";
// путь к файлу миниатюры:
$thumbPath = "$thumbDir/$f";
if (is_file($thumbPath))
{
// Массив параметров фотографии
$photoParameters =
@GetImageSize($photoPath);
// Массив параметров миниатюры
$thumbParameters =
@GetImageSize($thumbPath);
// Если файл представляет собой
//изображение в формате GIF, JPEG или PNG
if ( ($thumbParameters[2]>=1) &&
($thumbParameters[2]<=3) )
39
{
echo '<img class="thumb"
src="'.$thumbDir.
'/'.$f.'" '.$thumbParameters[3].
' onclick=” showPhoto (\''.
photoPath."',".
$photoParameters[0].
','.$photoParameters[1].
') ">'."\n";
};
};
};
closedir($d); //закрываем каталог
?>
Этот короткий сценарий обеспечивает фантастическую, по сравнению
с клиентским подходом, эффективность сопровождения ресурса. Надо
только разместить фотографии и миниатюры в соответствующих
каталогах, а верстка происходит автоматически.
2. Миниатюры генерируются сценарием
Сканируется указанный каталог с фотографиями, масштабированием
найденных изображений создаются миниатюры. Миниатюры
генерируются средствами PHP и сразу отправляются в браузер.
Реализация этого варианта потребует размещения кода генерации
миниатюры в отдельном файле. Пусть, для определенности, он имеет
имя create_thumb.php. В этом файле расположен только
следующий код (и ничего больше).
<?
// Максимальный размер миниатюры в
пикселах:
$maxDim = 106;
// Адрес исходного изображения:
$srcImg = $_GET['img'];
Страницы
- « первая
- ‹ предыдущая
- …
- 18
- 19
- 20
- 21
- 22
- …
- следующая ›
- последняя »