PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Без описания
Поиск в теме | Версия для печати
nichtraucher
Отправлено: 21 Декабря, 2010 - 18:55:25
Новичок
Покинул форум
Сообщений всего: 7
Дата рег-ции: Нояб. 2010
Помог: 0 раз(а)
Кто может обьяснить или подскажет где можно почитать более детально об этой функии?
<?
function imageresize($outfile,$infile,$neww,$newh,$quality) {
$im=imagecreatefromjpeg($infile);
$k1=$neww/imagesx($im);
$k2=$newh/imagesy($im);
$k=$k1>$k2?$k2:$k1;
$w=intval(imagesx($im)*$k);
$h=intval(imagesy($im)*$k);
$im1=imagecreatetruecolor($w,$h);
imagecopyresampled($im1,$im,0,0,0,0,$w,$h,imagesx($im),imagesy($im));
imagejpeg($im1,$outfile,$quality);
imagedestroy($im);
imagedestroy($im1);
}
imageresize("","webcam.jpg",640,240,75);
?>
grefon
Отправлено: 26 Декабря, 2010 - 01:45:23
Частый посетитель
Покинул форум
Сообщений всего: 823
Дата рег-ции: Нояб. 2010
Помог: 32 раз(а)
PHP:
скопировать код в буфер обмена
// Создаем саму функцию:
// $infile - входящий графический файл
// $outfile - измененый файл
// $neww - новая ширина
// $newh - новая высота
// $quality - качество измененного рисунка
function imageresize( $outfile , $infile , $neww , $newh , $quality ) {
// Далее вычесляем ширину и высоту входящего файла и создаваемого фала:
$k = $k1 > $k2 ?$k2 : $k1 ;
$im1 = imagecreatetruecolor ( $w , $h ) ; // Создаем новый графический объект в который запишем измененный рисунок; $w,$h - ширина и высота
imagejpeg ( $im1 , $outfile , $quality ) ; // сохраняем файл в jpg формате с заданным качеством }
// Запускаем функцию
imageresize( "" , "webcam.jpg" , 640, 240, 75) ;
-----____________________________________________________________________
Ну как то так, наверное.
http://grefon[dot]com
lelectrohardl
Отправлено: 25 Января, 2011 - 20:02:25
Новичок
Покинул форум
Сообщений всего: 38
Дата рег-ции: Сент. 2010
Помог: 0 раз(а)
grefon пишет: PHP:
скопировать код в буфер обмена
// Создаем саму функцию:
// $infile - входящий графический файл
// $outfile - измененый файл
// $neww - новая ширина
// $newh - новая высота
// $quality - качество измененного рисунка
function imageresize( $outfile , $infile , $neww , $newh , $quality ) {
// Далее вычесляем ширину и высоту входящего файла и создаваемого фала:
$k = $k1 > $k2 ?$k2 : $k1 ;
$im1 = imagecreatetruecolor ( $w , $h ) ; // Создаем новый графический объект в который запишем измененный рисунок; $w,$h - ширина и высота
imagejpeg ( $im1 , $outfile , $quality ) ; // сохраняем файл в jpg формате с заданным качеством }
// Запускаем функцию
imageresize( "" , "webcam.jpg" , 640, 240, 75) ;
Только хотел выложить этот исходник...
Сам им пользуюсь.
AirDArk
Отправлено: 10 Мая, 2013 - 21:23:11
Новичок
Покинул форум
Сообщений всего: 1
Дата рег-ции: Май 2013
Помог: 0 раз(а)
CODE (
htmlphp ):
скопировать код в буфер обмена
< form name= "upload" action= "index.php" enctype= "multipart/form-data" method= "post" >
< label> Выберите картинку</ label>
< input type= "hidden" name= "MAX_FILE_SIZE" value= "102400" />
< input type= "file" name= "uploadimg" class= "input_file" />
< label> Введите Имя Картинки</ label>
< input type= "text" name= "name" />
< input type= "submit" name= "Submit" value= "Добавить картинку" class= "submit" >
</ form>
<? php
//удаляем пробелы из введенного имени
while ( strpos ( $name , " " ) !== false ) {
}
// меняем англ буквы на Русские
$name = strtr ( $name , "абвгдеёзийклмнопрстуфхъыэ_" , "abvgdeeziyklmnoprstufh'iei" ) ; // <----- строчные
$name = strtr ( $name , "АБВГДЕЁЗИЙКЛМНОПРСТУФХЪЫЭ_" , "ABVGDEEZIYKLMNOPRSTUFH'IEI" ) ; // <----- ПРОПИСНЫЕ
"ж" => "zh" , "ц" => "ts" , "ч" => "ch" , "ш" => "sh" ,
"щ" => "shch" , "ь" => "" , "ю" => "yu" , "я" => "ya" ,
"Ж" => "ZH" , "Ц" => "TS" , "Ч" => "CH" , "Ш" => "SH" ,
"Щ" => "SHCH" , "Ь" => "" , "Ю" => "YU" , "Я" => "YA" ,
"ї" => "i" , "Ї" => "Yi" , "є" => "ie" , "Є" => "Ye"
)
) ;
//Проверка, действительно ли загруженный файл является изображением
$imageinfo = getimagesize ( $_FILES [ 'uploadimg' ] [ 'tmp_name' ] ) ; if ( $imageinfo [ 'mime' ] != 'image/gif' && $imageinfo [ 'mime' ] != 'image/jpeg' && $imageinfo [ 'mime' ] != 'image/png' )
{
print '<div class="msg">Загруженный файл не является изображением, mime = ' . $imageinfo [ 'mime' ] . '</div>' ;
}
//Сохранение загруженного изображения с расширением, которое возвращает функция getimagesize()
//Расширение изображения
$mime = explode ( "/" , $imageinfo [ "mime" ] ) ;
//Задаем имя картинки
//$namefile=explode(".",$_FILES["uploadimg"]["name"]); - исходное имя файла
//Задаем путь к директории
$uploaddir = "W:/home/site.ru/www/img/" ; //Полный путь
$relativedir = "../img/" ; //Относительный путь
//Функция, перемещает файл из временной, в указанную вами папку
if ( move_uploaded_file ( $_FILES [ "uploadimg" ] [ "tmp_name" ] , $uploaddir . $namefile . "." . $mime [ 1] ) ) {
$namefileBig = ( $namefile . "." . $mime [ 1] ) ;
print "Изображение успешно загружено. Его имя - " . $namefileBig ;
//подключение функции уменьшения размеров
$src_name = ( $uploaddir . $namefileBig ) ;
$dst_name = ( $uploaddir . $namefile . "_small." . $mime [ 1] ) ;
$dst_name2 = ( $uploaddir . $namefile . "_mid." . $mime [ 1] ) ;
$size = 137 ; //размер маленькой картинки - ширина
$size2 = 210 ; //размер средней картинки - ширина
//Большая картинка остается с исходника
$small_pic = ( $relativedir . $namefile . "_small." . $mime [ 1] ) ; //формируем относительный путь маленькой картинки, добавляя в имя на конец _small
$mid_pic = ( $relativedir . $namefile . "_mid." . $mime [ 1] ) ; //формируем относительный путь средней картинки добавляя в имя на конец _mid
$big_pic = ( $relativedir . $namefileBig ) ; //формируем относительный путь большой картинки - имя остается не изменным
if ( $imageinfo [ 'mime' ] != 'image/gif' && $imageinfo [ 'mime' ] != 'image/jpeg' && $imageinfo [ 'mime' ] != 'image/png' )
{
print "Загруженный файл не является изображением" ;
}
else { echo '<p>file - ' . $imageinfo [ 'mime' ] . '</p>' ; }
if ( $src_h > $src_w )
{
$dst_h = $size ;
$dst_w = ceil ( ( $dst_h / $src_h ) * $src_w ) ;
$dst_h2 = $size2 ;
$dst_w2 = ceil ( ( $dst_h2 / $src_h ) * $src_w ) ; }
else
{
$dst_w = $size ;
$dst_h = ceil ( ( $dst_w / $src_w ) * $src_h ) ;
$dst_w2 = $size2 ;
$dst_h2 = ceil ( ( $dst_w2 / $src_w ) * $src_h ) ; }
if ( $imageinfo [ 'mime' ] == 'image/jpeg' or $imageinfo [ 'mime' ] == 'image/jpg' )
{
}
else
{
if ( $imageinfo [ 'mime' ] = 'image/png' )
{
echo '<p>Type - PNG</p>' ;
$src_im = imagecreatefrompng ( $src_name ) ; //создаем ресурс из исходного изображения - в формате пнг $dst_im = imagecreatetruecolor ( $dst_w , $dst_h ) ; //создаем новый ресурс с нужной шириной и высотой (полноцветное)
}
else { echo 'Произошла ошибка при уменьшении' ; }
}
}
else {
echo 'Произошла ошибка' ;
}
?>
Этот скрипт пропорционально уменьшает. Может кому пригодится...(Отредактировано автором: 10 Мая, 2013 - 21:24:55)
Поиск в теме | Версия для печати
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Обсуждение статей »
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
Powered by ExBB FM 1.0 RC1. InvisionExBB