Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Неправильная ориентация у загруженных фот

Проблемы с установкой или работой phpBB 3.1.x? Получите помощь здесь!
С 1 июля 2018 года phpBB Group прекращает поддержку phpBB версии 3.1.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.1 до 1 января 2019 года.
Подробнее: Окончание поддержки phpBB 3.1.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 2 месяца
Откуда: Калининград не Кенигсберг
Благодарил (а): 41 раз
Поблагодарили: 1716 раз

Re: Неправильная ориентация у загруженных фот

Сообщение Sheer »

Siava писал(а): со времён phpbb 3.0 присутствует глюк с правильной ориентацией
Siava, это не глюк. Движек формирует изображение так, как оно записано в файле. Он показывает оригинал. Точно так же, как мы увидим изображение, если открыть файл в Photoshop. И не важно с с какой оси было загружен файл и чем он получен, на планшете, мобильнике и цифровой фотокамере. Другое дело, что движек никак не учитывает информацию об ориентации устройства, если она записана в метаданных. Поэтому было сделано расширение.

Отправлено спустя 3 минуты 19 секунд:
Было навеяно этим Повернуть фото / photo rotation
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
roman777
phpBB 1.2.1
Сообщения: 21
Стаж: 7 лет 5 месяцев
Благодарил (а): 11 раз

Re: Неправильная ориентация у загруженных фот

Сообщение roman777 »

Добрый вечер! у меня возникла необходимость уменьшения размера фотографий при загрузке, для экономии места на хостинге. Поиск меня привел к вот такому решению:
Скрытый текст
А всего-то надо внести небольшие изменения в файл …/includes/functions_upload.php вашего форума.
1. Найдите в нем следующие строки:
phpbb_chmod($this->destination_file, $chmod);
}

Добавьте после них: $this->resize();
2. Найдите далее:
return true;
}

Добавьте после:

Код: Выделить всё

function resize(){
		global $config;
		if (!empty($config['img_max_width']) && !empty($config['img_max_height'])){
			$max_width = $config['img_max_width'];
			$max_height = $config['img_max_height'];
		}else{
			$max_width = 800;
			$max_height = 600;
		}
		if (!empty($max_width) && !empty($max_height)){
			$filename = $this->destination_file;
			if ($image_info = @getimagesize($filename)){
				$image_width = $image_info[0];
				$image_height = $image_info[1];
				$image_type = $image_info[2];
 
				if (($image_width > $max_width) || ($image_height > $max_height)){
					$ratio = $image_width / $image_height;
					$w_scale = $max_width / $image_width;
					$h_scale = $max_height / $image_height;
					if ($w_scale <= $h_scale){
						$width = $max_width;
						$height = round($width / $ratio);
						if ($height > $max_height) $height = $max_height;
					}else{
						$height = $max_height;
						$width = round($height * $ratio);
						if ($width > $max_width) $width = $max_width;
					}
 
					if ($image_type == IMAGETYPE_JPEG){
						$image = imagecreatefromjpeg($filename);
					}elseif ($image_type == IMAGETYPE_GIF){
						$image = imagecreatefromgif($filename);
					}elseif ($image_type == IMAGETYPE_PNG){
						$image = imagecreatefrompng($filename);
					}else{
                                        return;
                                        }
 
					$new_image = imagecreatetruecolor($width, $height);
					imagecopyresampled($new_image, $image, 0, 0, 0, 0, $width, $height, $image_width, $image_height);
					$image = $new_image;
 
					if ($image_type == IMAGETYPE_JPEG){
						imagejpeg($image, $filename, 80);
					}elseif ($image_type == IMAGETYPE_GIF){
						imagegif($image, $filename);
					}elseif ($image_type == IMAGETYPE_PNG){
						imagepng($image, $filename);
					}
				}
			}
		}
	}

это все решило в достаточной степени мой вопрос, но! изображения перестали "правильно" разворачиваться. Я так понимаю, что данная функция выполняется раньше чем выполняется расширение [beta] Attached image rotator, что можно предпринять в данной ситуации? версия форума 3.1.10.
Аватара пользователя
Джим
phpBB 2.0.0
Сообщения: 203
Стаж: 14 лет 6 месяцев
Благодарил (а): 137 раз
Поблагодарили: 62 раза

Re: Неправильная ориентация у загруженных фот

Сообщение Джим »

roman777 писал(а): что можно предпринять в данной ситуации?
Попробуйте поменять приоритет: Re: Неправильная ориентация у загруженных фот
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12425
Стаж: 12 лет 8 месяцев
Благодарил (а): 166 раз
Поблагодарили: 2477 раз

Re: Неправильная ориентация у загруженных фот

Сообщение Татьяна5 »

roman777 писал(а): уменьшения размера фотографий при загрузке
Это встроенная возможность
roman777 писал(а): к вот такому решению
По-моему оно для 3.0
roman777
phpBB 1.2.1
Сообщения: 21
Стаж: 7 лет 5 месяцев
Благодарил (а): 11 раз

Re: Неправильная ориентация у загруженных фот

Сообщение roman777 »

Джим, Спасибо за ответ, пробовал, ничего не поменялось.
Татьяна5, Спасибо за ответ. В статье где это было написано не было информации к какой версии форума оно относится, я попробовал все работает, фото 5мб преобразует в файл размером 1024*768 и весом около 70кб
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 2 месяца
Откуда: Калининград не Кенигсберг
Благодарил (а): 41 раз
Поблагодарили: 1716 раз

Re: Неправильная ориентация у загруженных фот

Сообщение Sheer »

roman777 писал(а): к вот такому решению:
Это неправильное решение. Править код в 3.1.x настоятельно не рекомендуется.
roman777 писал(а): необходимость уменьшения размера фотографий при загрузке
Еще раз!
Татьяна5 писал(а): Это встроенная возможность
Отправлено спустя 3 минуты 38 секунд:
[beta] Editor of attachments (quoting, watermark)
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.

Вернуться в «Поддержка phpBB 3.1.x»