PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (2): « 1 [2]
Найдено сообщений: 22
kat69
Отправлено: 30 Мая, 2012 - 16:41:57 • Тема: Уменьшенная копия загружаемого изображения • Форум: Вопросы новичков
Ответов: 17 Просмотров: 727
Если ширина картинки меньше ширины превью, сохранена будет картика в исходном размере.
PHP:
скопировать код в буфер обмена
$uploaddir = 'Z:/home/test1.ru/www/upload/fotos/' ;
$widthThumb = 200 ; // Ширина превью
preg_match ( '/(.+)?\.(.+)?$/' , $_FILES [ 'upload_foto' ] [ 'name' ] , $output ) ; $file = $output [ 1] ;
$mime = $output [ 2] ;
$new_filename = time ( ) . $file . "." . $mime ;
$destination = $uploaddir . $new_filename ;
$filename = $uploaddir . $new_filename ;
$filetype = $_FILES [ 'upload_foto' ] [ 'type' ] ;
$error = $_FILES [ 'upload_foto' ] [ 'error' ] ;
$dir = 'Z:/home/test1.ru/www/upload/fotos/thumbs/' ; //папка, куда грузится файл
$finalname = time ( ) . $file . "small_." . "jpg" ; //имя файла
switch ( $filetype ) {
case "image/gif" :
break ;
case "image/jpeg" :
break ;
case "image/png" :
break ;
case "image/pjpeg" :
break ;
}
if ( $filetype == "image/gif" || $filetype == "image/jpeg" || $filetype == "image/pjpeg" || $filetype == "image/png" ) {
if ( $w <= $widthThumb ) {
$widthThumb = $w ;
$heightThumb = $h ;
} else {
$ratio = $widthThumb / $w ;
$heightThumb = $h * $ratio ;
}
imageconvolution ( $im1 , array ( array ( - 1
, - 1
, - 1
) , array ( - 1
, 16
, - 1
) , array ( - 1
, - 1
, - 1
) ) , 8
, 0
) ; }
}
Но если вы хотите все же уменьшать, то нужно знать, насколько меньше картинка должна быть.
kat69
Отправлено: 30 Мая, 2012 - 15:24:19 • Тема: фото в бд • Форум: Графика в PHP
Ответов: 40 Просмотров: 11652
если база MySQL, то есть несколько вариантов:
TINYBLOB - может хранить до 255 байт
BLOB - может хранить до 64 килобайт информации
MEDIUMBLOB - до 16 мегабайт
LONGBLOB - до 4 гигабайт
Поле для загрузки файла
kat69
Отправлено: 30 Мая, 2012 - 15:12:23 • Тема: Уменьшенная копия загружаемого изображения • Форум: Вопросы новичков
Ответов: 17 Просмотров: 727
Попробуйте этот код
PHP:
скопировать код в буфер обмена
$uploaddir = 'Z:/home/test1.ru/www/upload/fotos/' ;
$widthThumb = 200 ; // Ширина превью
preg_match ( '/(.+)?\.(.+)?$/' , $_FILES [ 'upload_foto' ] [ 'name' ] , $output ) ; $file = $output [ 1] ;
$mime = $output [ 2] ;
$new_filename = time ( ) . $file . "." . $mime ;
$destination = $uploaddir . $new_filename ;
{
$filename = $uploaddir . $new_filename ;
$filetype = $_FILES [ 'upload_foto' ] [ 'type' ] ;
$error = $_FILES [ 'upload_foto' ] [ 'error' ] ;
$dir = 'Z:/home/test1.ru/www/upload/fotos/thumbs/' ; //папка, куда грузится файл
$finalname = time ( ) . $file . "small_." . "jpg" ; //имя файла
switch ( $filetype ) {
case "image/gif" :
break ;
case "image/jpeg" :
break ;
case "image/png" :
break ;
case "image/pjpeg" :
break ;
}
if ( $filetype == "image/gif" || $filetype == "image/jpeg" || $filetype == "image/pjpeg" || $filetype == "image/png" ) {
$ratio = $widthThumb / $w ;
$heightThumb = $h * $ratio ;
imageconvolution ( $im1 , array ( array ( - 1
, - 1
, - 1
) , array ( - 1
, 16
, - 1
) , array ( - 1
, - 1
, - 1
) ) , 8
, 0
) ; }
}
kat69
Отправлено: 30 Мая, 2012 - 14:52:05 • Тема: фото в бд • Форум: Графика в PHP
Ответов: 40 Просмотров: 11652
Если я правильно понял вопрос, то так
kat69
Отправлено: 29 Мая, 2012 - 11:55:35 • Тема: Вопрос по работе с генерированными в PHP изображениями. • Форум: Графика в PHP
Ответов: 8 Просмотров: 3313
Попробуйте так, у меня все отработало
при условии, что есть два png файла
PHP:
скопировать код в буфер обмена
<?PHP
if ( ! $_GET [ 'parametr' ] ) { exit ( 'attemp!' ) ; } $parametr = $_GET [ 'parametr' ] ;
$img = "images/land/" . $parametr . ".png" ;
//var_dump($img); //для вывода картинки, однозначно лишнее
// Картинка фон, на которую кладём.
// Печать картинки в браузере.
header ( "Content-type: image/png" ) ; //переставил вниз, ибо если стоит вначале - ошибок не увидим
kat69
Отправлено: 28 Мая, 2012 - 20:45:28 • Тема: динамическое формирование изображения • Форум: Графика в PHP
Ответов: 6 Просмотров: 4378
Как вариант, уменьшит нагрузку на сервер
CODE (
php ):
скопировать код в буфер обмена
$uploadDir = "img" ; //папка хранения сформированных изображений
$uploadDir = $_SERVER [ 'DOCUMENT_ROOT' ] . "/" . $uploadDir . "/" ;
//проверяем или был такой запрос раньше
if ( is_file ( $uploadDir . md5 ( $_REQUEST [ 'text' ] ) . ".png" ) ) { header ( 'Content-Type: image/png' ) ; } else {
//если нет, делаем новое.
or
die ( 'Невозможно инициализировать GD поток' ) ; imagestring ( $im , 1
, 5
, 5
, $_REQUEST [ 'text' ] , $text_color ) ; // Выводим в браузер
header ( 'Content-Type: image/png' ) ; //Cохраням в папку
imagepng ( $im , $uploadDir . md5 ( $_REQUEST [ 'text' ] ) . ".png" ) ; }
Страниц (2): « 1 [2]
Powered by ExBB FM 1.0 RC1. InvisionExBB