Войти
Зарегистрироваться
Пытошная Forum A
Новые темы (0)   Все темы

Atomic
Картинки кодом  15.1.2016 13:57


Уважаемые софорумники, у нас есть некоторая проблема с работой форума, связанная с картинками, которые вставляются кодом, а не ссылкой.

Поясню: обычно картинки хранятся в виде файла и при вставке картинки на форум мы вставляем просто адрес этого файла, обернув его в соответствующий HTML-тег. Но есть один варварский способ вставлять картинки - кодом. Этот код начинается с ключевого слова "­data:"­, после чего идёт дикая смесь разных символов латынскага алфавита. Этот способ стал активно использоваться Гуглем в предпросмотре, может и другие поисковики начали его использовать.

По возможности, никогда не вставляйте картинки таким образом. Тут сразу несколько проблем:

1. увеличивается объём передаваемого текста, таким образом, если у человека медленный интернет, он никогда не дождётся текста, который расположен за картинкой.

2. Для решения проблем медленного интернета часто отключают показ картинок в браузере. Но если картинка встроена текстом, отключить её показ невозможно - она всё равно загрузится.

3. Конечный пользователь лишён возможности кешировать картинки. Кеширование - это процесс, в ходе которого один раз загруженный файл сохраняется в компьютере пользователя на какое-то время и при необходимости использовать его в будущем, он не грузится заново из сети, а берётся из кеша (то есть, с диска пользователя).

4. Увеличивается потребный объём памяти на сервере для хранения постов. Одно дело, когда один пост занимает пару килобайт и другое дело, если одна только картинка весит сотню-две килобайт, если картинка небольшого размера. Одна небольшая картинка может занимать места больше, чем длительная дискуссия.

5. Заглавный пост автоматически обрезается на некотором количестве символов (если не вставлен знак "­"­, тогда обрезка идёт по этому знаку). Если картинка вставлена кодом, а за ней должен быть виден текст, его не будет видно, картинка так же не покажется - код картинки заведомо превышает длину обрезки. Если знак трёх равно вставлен после картинки, то будет ещё хуже - Вы завставите всех софорумников при каждом входе на сайт грузить тучу ненужных байтов, а при входе в ветку они будут снова грузиться в полном объёме. В результате имеем бессмысленный рост нагрузки на сеть, на сервер, на компьютер пользователя, имеем более медленную работу форума, но мы не получаем ровным счётом ничего за все эти жертвы.

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

__________

Чтобы избежать таких проблем, проверяйте, что Вы вставляете. Не используйте превьюшки с Гугля - откройте картинку как есть и возьмите её адрес, а потом, при вставке картинки, просто задайте нужный размер изображения. Это тоже довольно варварский способ, но он менее варварский (идеально было бы задать в Гугле поиск по картинке и из найденного выбрать наиболее близкий к требуемому размеру вариант, но это уже для продвинутого уровня пользователей). Так же проверяйте адрес, когда вставляете картинку: адрес не должен начинаться на "­data:"­, он должен начинаться на "­http://"­ и должен заканчиваться расширением файла вида: "­.jpg"­, "­.png"­, "­.gif"­, "­.bmp"­ или "­.svg"­ (возможны заглавные буквы). Иногда картинкохранилища дают ссылку, в которой нет расширения (к примеру, http://xxx.ru/asdjkD­SHnd) - это допустимо. Наиболее верный способ определить правильную ссылку - это иметь "­http://"­ в начале ссылки, но при вставке ссылки в текстовое поле текст смещается и начало Вы скорее всего видеть не будете (без перемотки, разумеется), вот тут знание расширений файлов и поможет - если Вы не видите приведённого выше расширения файла, то проверяйте начало ссылки.


   
«   Алешков Иван   27.1.2016 13:35   #   Скрыть

Удалено.

Алешкову бан на неделю.

Atomic

 




Диспуты

Пытошная

Правила форума



О клубе
В клубе сейчас находится 0 человек:





debug
outputNode