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

Фото
- - - - -

вырезать кусок изображения


  • Вы не можете создать новую тему
  • Please log in to reply
7 ответов в этой теме

#1 simonsays

simonsays
  • Пользователь
  • 835 сообщений

Отправлено 28 Август 2007 - 23:48

такая проблема, хочу написать функцию, которая будет вырезать кусок фиксированного размера из центра имеющегося изображения. однако получается, что моя функция вырезает только кусок с самого угла, и в новом изображении заполняет остаток черным. не понимаю, изображение достаточно крупное, чтобы такого не происходило...

заранее признателен за помощь.
вот функция:
	function CreateThumb($filename) {
		
		$source = imagecreatefromjpeg($filename);
		
		$width = imagesx($source);
		$height = imagesy($source);
		
		$output_width = 215;
		$output_height = 212;
		
		$center_hor = $width/2;
		$center_vert = $height/2;
		
		$src_x = $center_hor - $output_width/2;
		$src_y = $center_vert + $output_height/2;
		
		$output = imagecreatetruecolor($output_width, $output_height);
		imagecopyresampled($output, $source, 0, 0, $src_x, $src_y, $output_width, $output_height, $width, $height);
		$new = basename($filename);
		imagejpeg($output, dirname($filename).'/tn'.$new, 100);
		imagedestroy($source);
		imagedestroy($output);
		}
	}

  • 0

#2 Vladson

Vladson

    XTGamers.com

  • Постоялец
  • 1 921 сообщений
  • Откуда:Эстония, Таллинн

Отправлено 29 Август 2007 - 00:02

Внимательнее изучи параметры функции imagecopyresampled
http://www.php.net/m...pyresampled.php

А вообще не вижу смысла вырезать кусок "Thumb"-ы можно просто ресайзом всей картинки сделать как на всех нормальных сайтах...
  • 0
Один Владсон может за...ать всех, кроме себя самого. Два Владсона могли бы за...ать абсолютно кого угодно, но Владсон единственный и неповторимый. ©Vladson

Вы либо способны перелопатить тонны информации и отсеять лишнее, либо программистом не будете. ©Psih

Не вазелин, а бизнес-гель ©Avagraen

#3 Акей

Акей

    Смотрит свысока

  • Постоялец
  • 2 134 сообщений

Отправлено 29 Август 2007 - 07:47

Vladson, кстати не факт. На многих сайтах все эскизы одого размера (чаще всего квадратные) а картинки то портретные, то лэндскейпные. Поэтому вырезают какуюту часть и масштабируют до нужного размера. И когда смотришь становится интересно, что еще сктыто на этой фотке
  • 0

#4 ParadoxL

ParadoxL
  • Постоялец
  • 4 756 сообщений
  • Откуда:Edinburg

Отправлено 29 Август 2007 - 10:50

А как определяют какая часть самая интереная для подзадоривания клиента? Конечно же программно? :)
  • 0
Victoria nulla est, Quam quae confessos animo quoque subjugat hostes ...
Верю в смерть после жизни, любовь после секса и в крем после бритья ...

#5 simonsays

simonsays
  • Пользователь
  • 835 сообщений

Отправлено 29 Август 2007 - 11:56

Внимательнее изучи параметры функции imagecopyresampled

я пытался, пытался, все никак въехать не смог, в итоге окончательно запутался. ошибка в моих аргументах, так?

Vladson, кстати не факт. На многих сайтах все эскизы одого размера (чаще всего квадратные) а картинки то портретные, то лэндскейпные. Поэтому вырезают какуюту часть и масштабируют до нужного размера. И когда смотришь становится интересно, что еще сктыто на этой фотке

это как раз один из тех вариантов. поэтому обычный ресайз не подходит

А как определяют какая часть самая интереная для подзадоривания клиента? Конечно же программно?

нет просто вырезается кусок из самого центра картинки
  • 0

#6 Setor

Setor
  • Постоялец
  • 1 890 сообщений
  • Откуда:Эстония, Таллин

Отправлено 29 Август 2007 - 12:47

simonsays, почитай конец статьи, я думаю, там то, что тебе нужно http://www.codenet.r...mage-Resize-GD/
  • 0

#7 ParadoxL

ParadoxL
  • Постоялец
  • 4 756 сообщений
  • Откуда:Edinburg

Отправлено 29 Август 2007 - 12:49

нет просто вырезается кусок из самого центра картинки


Я думаю к порнухе это не применимо ... там все самое интересное в центре всегда ... :)
  • 0
Victoria nulla est, Quam quae confessos animo quoque subjugat hostes ...
Верю в смерть после жизни, любовь после секса и в крем после бритья ...

#8 simonsays

simonsays
  • Пользователь
  • 835 сообщений

Отправлено 29 Август 2007 - 13:38

simonsays, почитай конец статьи, я думаю, там то, что тебе нужно http://www.codenet.r...Image-Resize-GD

спасибо, статья действительно помогла! :)
  • 0