Форум колористов и полиграфистов
https://cielab.xyz/forum/

phpbb3: настройка превью вложений по длинной стороне или по ширине
https://cielab.xyz/forum/viewtopic.php?f=15&t=635
Страница 1 из 1

Автор:  mihas [ 21:24, Пн, 12 окт 2020 ]
Заголовок сообщения:  phpbb3: настройка превью вложений по длинной стороне или по ширине

Обычный форум phpbb3 предлагает создавать превью с максимальным указанным размером по длинной стороне картинки.
Мне по дизайну захотелось сделать так, чтобы ширина превьюшки задавалась именно по ширине картинки, а не по ее длинной стороне, чтобы все картинки были одинаковой ширины, независимо от их высоты.
Делается просто. Открываем файл functions_posting.php из каталога includes, ищем:
function get_img_size_format($width, $height)
{
	global $config;

	// Maximum Width the Image can take
	$max_width = ($config['img_max_thumb_width']) ? $config['img_max_thumb_width'] : 400;

	if ($width > $height)
	{
		return array(
			round($width * ($max_width / $width)),
			round($height * ($max_width / $width))
		);
	}
	else
	{
		return array(
			round($width * ($max_width / $height)),
			round($height * ($max_width / $height))
		);
	}
}
И в обеих частях условия вписываем первое решение условия чтобы можно было если что откатиться назад. Я вписал так чтобы потом не запутаться если вдруг что:
	else
	{
		return array(
			//round($width * ($max_width / $height)),
			//round($height * ($max_width / $height))
			//cielab change 2 strings
			round($width * ($max_width / $width)),
			round($height * ($max_width / $width))
		);
	}
Вот примеры работы такой функции в форуме для превью с установленной шириной 320px.
Комментарий к файлу: настройка превью вложений
[ attachment ]
attachments_phpbb3.png [ 69.53 КБ | 398 просмотров ]
Комментарий к файлу: Иллюстрация работы новой functions_posting.php
[ attachment ]
MackenzieDavis.jpg [ 215.35 КБ | 398 просмотров ]
Как нагенерить новых превью даже для очень старых форумов я писал в этой теме.
В 2016 году я прикинул по гугл-аналитике для сайта, что оптимальная ширина превью для большинства смартфонов (с учетом умножения на 2) равна 256 px. Я так тогда все превью и нагенерил. В конце 2020 года я снова поинтересовался у гугл-аналитики, с каких по ширине экрана мобильных девайсов заходит большинство, и исходя из этого посчитал, что теперь актуальнее превью шириной 320 px. Учитывая что мобильный стиль форума хорошо растягивает на смартфонах ретина превью ровно вдвое и делает поля вокруг него. На первом месте или для 42 процентов всех смартфонов - это ширина экрана 720 px для этого сайта. На втором месте или 16 процентов - ширина 750 px (7 айфон), шестое место или 7 процентов - 828 px (11 айфон). Почему бы не сделать максимально красиво превьюшки для большинства, подумал я и перегенерил в FastStone весь архив графических вложений форума в превью 320 px по ширине. Оно и на экране компьютера смотрится неплохо, не хуже чем ширина 256 px.

Страница 1 из 1 Часовой пояс: UTC+03:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/