Удаление или не сохранение оригинала изображений для фотосета

Знаю что подобная тема уже проходила здесь, но ключевой вопрос так и не решился.
По этому пересоздам тему заново.

Суть вопроса проста и ясна — по сравнению с его решением! Дабы место на сервере не разбрасывать на право и налево, нужно просто при загрузки изображений для фотосета удалять (или не сохранять) оригинал изображений, а оставлять только те разрешения которые прописаны в конфиге.

Знаю что для аватаров такая возможность есть, а что с фотосетами делать то?

7 комментариев

avatar
Неужели все так грустно?!
avatar
Это достаточно типичное положение дел по многим вопросам здесь.
avatar
Вопрос интересный…
avatar
Если я правильно понял логику, то оригинальная картинка показывается при полноэкранном просмотре? и мы хотим её таки ограничить в размерах?

как один из вариантов:
в функции UploadTopicPhoto (Topic.class.php)
заменить
return $this->Image_GetWebPath($sFile);
на
unlink($sFile);
copy($sNewFileName, $sFile);
return $this->Image_GetWebPath($sFile);
и дописать в конец массива $config['module']['topic']['photoset']['size']… конфигурацию для ограничения по максимуму.

p.s. copy теоретически лучше заменить на link
p.p.s. не проверял 8]

да… логически несколько кривовато, но с минимальными исправлениями.
  • SVK
  • 0
avatar
проверил, правильная строка для copy такая:
copy(Config::Get('path.root.server').$sPath.$sNewFileName.'.'.$oImage->get_image_params('format'), $sFile);


и в config.local.php внёс с небольшим изменением порядка
$config['module']['topic']['photoset']['size'] = array(             // список размеров превью, которые необходимо делать при загрузке фото
	array(
		'w' => 500,
		'h' => null,
		'crop' => false,
	),
	array(
		'w' => 100,
		'h' => 65,
		'crop' => true,
	),
	array(
		'w' => 50,
		'h' => 50,
		'crop' => true,
	),
	array(
		'w' => 1000,
		'h' => null,
		'crop' => false,
	)
);
avatar
Здравствуйте, все работает отлично. Но создается два одинаковых изображения с разрешением 1000px. Можно как нибудь этого избежать? Мне кажется оригинала с разрешением 1000px будет достаточно.
avatar
как я уже выше писал: «логически несколько кривовато, но с минимальными исправлениями»
чтоб не было двойного занятия дискового пространства, имеет смысл попробовать «copy теоретически лучше заменить на link» — тогда будет только ссылка на файл
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.