Перейти к содержимому

Сервис обмена электронных валют


Автоматическое уменьшение изображения

#1 FordogeN

FordogeN
  • Пользователь
  • 1 414 сообщений
  • Репутация: 0
0

Отправлено 03 Декабрь 2008 - 04:47

Полазив по форуму, заметил такую фишку - если картинка больше определенного размера - она уменьшается до максимального и над изображением появляется табличка, типо "посмотреть в полном размере".
Вот один из примеров - http://www.masterweb...nost-vs-dizain/

В общем мысль такова - нужно по пробовать написать скрипт, который находит все изображения внутри дива или изображения относящиеся к классу/у которых есть ID - чтоб скрипт их так же само подгонял под максимально допустимую ширину - думаю этот скрипт будет очень полезен!

зы. Написать ума не хватит - по пытаюсь вырвать из ИПБ. Может у кого то получится выковырять лучше чем у меня или получится написать... ;)

 

 

  • 0

Как настроить выдержку и диафрагму зеркального фотоаппарата



#2 KURT [197BD]

KURT [197BD]
  • Пользователь
  • 31 сообщений
  • Репутация: 0

Отправлено 03 Декабрь 2008 - 14:26

вот так я изменял размеры загружаемых схем GIF ...
если маненько переделать и добавить кое-чего то можно использовать =)

try {
	/* вычисление новых размеров схемы */
	/* $sizeshem - желаемая ширина		 */
	list($width, $height) = getimagesize( $_FILES['shem']['tmp_name'] );
	$K = $sizeshem / $width; // коэф-т
	$newwidth   = $width * $K;
	$newheight  = $height * $K;
	$newimage  = imagecreate( $newwidth, $newheight );
	$source	= imagecreatefromgif( $_FILES['shem']['tmp_name'] );
	if ( $source ){
		if ( imagecopyresampled ( $newimage, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height) ) {// изменение размера
			if ( file_exists( "../catalog/img".chr(47).$id."-shem.gif" ) ) // если такой файл уже существует , то удаляем его
				unlink ( "../catalog/img".chr(47).$id."-shem.gif" );
			if ( !imagegif( $newimage, "../catalog/img".chr(47).$id."-shem.gif") )
				echo "<br /> Схема не  загружена!";
		} else 
			echo "<br /><font color=red>размеры не удалось изменить! повторите попытку!</font>";
	}
} catch (Exception $e) {
  ...
}

  • 0

#3 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 03 Декабрь 2008 - 21:20

У них фишка в том, что они используют стандартные средства Microsoft-фильтры
function ie_fix_png_do()
{
	if(document.readyState=='complete')
	{
		var pos=navigator.userAgent.indexOf("MSIE ");
		var version=navigator.userAgent.substring(pos+5);
		var blanky=ipb_skin_url+"/blank.gif";
		var _sw=screen.width*(parseInt("50")/100);
		if(pos==-1)
		{
			return false
		}

		if(!((version.indexOf("5.5")==0)||(version.indexOf("6")==0))&&(navigator.platform==("Win32")))
		{
			return
		}

		var images=document.getElementsByTagName('IMG');
		var _len=images.length;
		if(_len)
		{
			for(var i=0;i<_len;i++)
			{
				if(images[i].src.match(/\.png$/)) {
					var element=images[i];
					var _width=0;
					var _height=0;
					var _src=0;
					element._width=element._width?parseInt(element._width):0;
					element._resized=parseInt(element._resized);

					if(!element.style.width) {
						_width=element.width
					}

					if(!element.style.height) {
						_height=element.height
					}

					_src=element.src;
					if(_width<_sw&&!element._resized&&element._width<_sw)
					{
						element.src=blanky;
						if(_width) {
							element.style.width=_width+"px"
						}

						if(_height) {
							element.style.height=_height+"px"
						}
							 element.runtimeStyle.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+_src+"',sizingMethod='scale')"
					}else{}
				}
			}
		}
	}
}

То что я выдрал по моему мнению ресайзит картинки, но это точно не всё, они вызывают данный код после загрузки документа с помощью xmlhttprequest.
Так до конца я и не разобрался ;) Может ты разберёшься... У меня просто времени нету.
  • 0

#4 FordogeN

FordogeN
    Topic Starter
  • Пользователь
  • 1 414 сообщений
  • Репутация: 0

Отправлено 03 Декабрь 2008 - 21:33

у меня еще как минимум 2-3 недели тоже времени не особо.
Есть крупный заказ - я хочу к НГ подзаработать по больше!
  • 0

Как настроить выдержку и диафрагму зеркального фотоаппарата



#5 KURT [197BD]

KURT [197BD]
  • Пользователь
  • 31 сообщений
  • Репутация: 0

Отправлено 04 Декабрь 2008 - 17:21

На сколько я знаю , этот скрипт для правильного отображения прозрачности PNG файлов в Осле №6 ;)
  • 0

#6 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 04 Декабрь 2008 - 17:23

Честно сказать я тоже так думаю, но ничего более с ресайзингом JS не нашёл... Хотя и не все файлы смотрел, наверна где-то проскочило, может потом ещё гляну ;)
  • 0


Оформление форума – IPBSkins.ru