Как изменить внешний вид страницы в браузере с помощью Greasemonkey

✦ ИИ  Этот пост, предположительно, был создан при помощи искусственного интеллекта
Пост опубликован в блогах iXBT.com, его автор не имеет отношения к редакции iXBT.com
| Обзор | Оффтопик
Началось все с ворчания, типа раньше вода была мокрее шрифты были красивее. Ворчание было по поводу того, как отображаются текстовые элементы оформления на нашем новоиспеченном долгострое проекте iБлоги. Моя особенность заключается в том, что я люблю четкие и аккуратно прорисованные буковки, поэтому всегда в системе первым делом отключаю совершенно с моей точки зрения идиотскую функцию ClearType. Вот к примеру, фрагмент до отключения ClearType (для наглядности увеличено):
Не, ну может кому нравятся размытые очертания букв с цветными каемками. Мне нет. Отключаю ClearType, получаю следующее:
Уже лучше, но линии букв местами слишком толстые, некрасиво. Проблема в том, что наш дизайнер решил использовать новомодный шрифт «Roboto Condensed», в котором нет оптимизации попиксельной прорисовки, он рассчитан на масштабирование и сглаживание средствами системы. Во время слегка бурного обсуждения проблемы (он же Михаил Панюшкин) посоветовал использовать Greasemonkey. Это дополнение для Firefox, которое после загрузки страницы запускает заданные пользователем скрипты, которые могут менять внешний вид страницы. После установки Greasemonkey в панели инструментов появляется рожица и все, больше ничего не происходит. Ладно, нажимаем на стрелочку рядом с рожицей и в выпадающем меню выбираем пункт «New User Script...»:
В окне заполняем хотя бы первые две позиции:
Жмем OK и в открывшееся окно редактора вставляем следующий текст: // ==UserScript== // @name Force Verdana font // @namespace ivan@ivanov.com // @version 1 // @grant none // ==/UserScript== console.log(«Change fonts to Verdana!»); fontFamily = «Verdana»; blocks = ['sans', 'inputtext', 'span', 'p', 'a', 'div']; document.body.style.fontFamily = fontFamily; for (index = 0; index < blocks.length; index++) { elements = document.getElementsByTagName(blocks[index]); for(i = 0; i < elements.length; i++) { elements[i].style.fontFamily = fontFamily; } } За основу этого скрипта был взят скрипт с этой страницы. К сожалению, в исходном тексте была ошибка и какое-то время ушло на выяснение этого момента (на чем редко пишешь, быстро забывается). В итоге родился приведенный выше текст.
Смысл этого скрипта в том, что он в избранных тегах принудительно устанавливает «правильный» шрифт Verdana (ну и выводит в консоль предупреждение). Эти теги задаются в массиве blocks, и далее они перебираются с заменой свойства стиля fontFamily. В итоге после загрузки страницы даже с отключенным сглаживанием она приобретает более-менее пристойный вид:
Да, не совсем такой, как задумывал дизайнер, но такой, которых хочет иметь пользователь. Заметим, что избранный скрипт или Greasemonkey можно оперативно отключать/включать, задавать фильтры для для выбора страниц, на которых будут запускаться те или иные скрипты Greasemonkey, и, разумеется, никто не мешает выбрать свой любимый шрифт или задавать другие правила замены шрифтов (например, заменять только конкретный шрифт), для этого достаточно написать свой скрипт или подправить приведенный в данной заметке. В общем, приятного всем браузинга!
Автор не входит в состав редакции iXBT.com (подробнее »)

2 комментария

Добавить комментарий

mpanius
Да многое можно сделать. Удивительно, что так мало людей об этом знают.
s
На некоторых сайтах колдовство над стилями может быть полезно.

Добавить комментарий

Сейчас на главной

Новости

Публикации

✦ ИИ  Физики выяснили, при какой температуре вечная мерзлота начнет массово высвобождать парниковые газы: критический порог в -5°C

Вечная мерзлота занимает около 25 процентов территории Северного полушария Земли. Под поверхностью грунта на глубине сотен метров скрыто очень большое количество углерода — по оценкам...

✦ ИИ  Физики впервые поймали ультрабыстрые импульсы света, рожденного из абсолютной пустоты

Все время оптическая физика развивалась по двум независимым направлениям, которые практически не пересекались друг с другом. Первое направление — сверхбыстрая наука. Она изучает...

✦ ИИ  Kiwi Ears Cadenza II — нейтральный баланс — обзор динамических внутриканальных наушников

Я узнал о компании Kiwi Ears примерно три года назад, когда у них вышла первая Cadenza и сразу словила хайп. Я, к сожалению, с первой версией не познакомился, поэтому сравнить обе версии не смогу....

✦ ИИ  Мон-Сен-Мишель: как древний замок стоит посреди моря и почему его стоит посетить

Вот вам загадка: кто, приехав во Францию, постоянно мониторит время приливов, идет на экскурсию пешком, а вернуться с нее может уже вплавь? Это турист, пожелавший осмотреть аббатство...

✦ ИИ  Универсальное постоянное питание регистратора: обзор TrendVision HardWare Kit 2.0 (Pro Edition) и тест с DDPAI

Многие автомобильные видеорегистраторы можно использовать не только для записи дорожной обстановки непосредственно в поездке, но и для охранной записи на парковке. Для этого в меню устройства...

✦ ИИ  Когда жалко 100 Вт GaN зарядник: сетевой адаптер питания GP WM2A

GP WM2A — сетевой адаптер питания мощностью 20 Вт, который может служить основой для многих USB устройств, которым нужно немного, а занимать какой-нибудь 90-ваттный адаптер не хочется....