Автор Тема: Игнорирование настроек infinality при различных способах запуска  (Прочитано 1988 раз)

Оффлайн А. М. Кац

  • Участник
  • *
  • Сообщений: 45
Здравствуйте, уважаемые коллеги! Дорогие товарищи, сограждане!

Довелось мне давеча совершенно случайно обнаружить определённые странности в рендеринге шрифтов.

Запустил я консоль из кикоффа, она отобразилась как надо - инфиналити в полном соответствии с настройками сгладило шрифты в строке меню без грязи, радуги и мыла (см. рис. 1).

рис. 1. Строка меню консоли с работающим сглаживанием инфиналити

Затем я, предавшись пагубной лени, запустил ещё одно окно консоли, написав в первой консоли слово konsole. Второе окно открылось, но - что в высшей степени странно! - оно полностью игнорировало факт присутствия в системе инфиналити (см. рис. 2).

рис. 2. Строка меню консоли с неработающим сглаживанием инфиналити

Более того, при внимательном рассмотрении можно увидеть, что шрифт на кнопках меню выставлен другой.

И так всякий раз - при запуске из пункта меню кикоффа всё работает как надо, а при запуске командой вручную шрифт выглядит так, как будто бы его напечатали на изношенной пишущей машинке через три слоя копирки.

В чём может быть причина?

Оффлайн Vovka-Korovka

  • alt linux team
  • ***
  • Сообщений: 1 186
  • True Metal Cow
Можно увидеть вывод команды

set | grep -i  infinality

в первой и второй консоли. Мне просто самому воспроизвести не получается, поскольку консоль из консоли почему-то не запускается.

Оффлайн А. М. Кац

  • Участник
  • *
  • Сообщений: 45
Первая консоль:

INFINALITY_FT_AUTOHINT_HORIZONTAL_STEM_DARKEN_STRENGTH=10
INFINALITY_FT_AUTOHINT_INCREASE_GLYPH_HEIGHTS=false
INFINALITY_FT_AUTOHINT_SNAP_STEM_HEIGHT=100
INFINALITY_FT_AUTOHINT_VERTICAL_STEM_DARKEN_STRENGTH=25
INFINALITY_FT_BOLD_EMBOLDEN_X_VALUE=0
INFINALITY_FT_BOLD_EMBOLDEN_Y_VALUE=0
INFINALITY_FT_BRIGHTNESS=50
INFINALITY_FT_CHROMEOS_STYLE_SHARPENING_STRENGTH=0
INFINALITY_FT_CONTRAST=20
INFINALITY_FT_FILTER_PARAMS='11 22 38 22 11'
INFINALITY_FT_FRINGE_FILTER_STRENGTH=100
INFINALITY_FT_GAMMA_CORRECTION='1000 120'
INFINALITY_FT_GLOBAL_EMBOLDEN_X_VALUE=0
INFINALITY_FT_GLOBAL_EMBOLDEN_Y_VALUE=8
INFINALITY_FT_GRAYSCALE_FILTER_STRENGTH=0
INFINALITY_FT_STEM_ALIGNMENT_STRENGTH=15
INFINALITY_FT_STEM_FITTING_STRENGTH=15
INFINALITY_FT_STEM_SNAPPING_SLIDING_SCALE=30
INFINALITY_FT_USE_KNOWN_SETTINGS_ON_SELECTED_FONTS=true
INFINALITY_FT_USE_VARIOUS_TWEAKS=true
INFINALITY_FT_WINDOWS_STYLE_SHARPENING_STRENGTH=65
LD_PRELOAD='/usr/$LIB/libfreetype-infinality/libfreetype.so.6:/usr/$LIB/libfreetype-infinality/libfreetype.so.6:'

Вторая консоль:

INFINALITY_FT_AUTOHINT_HORIZONTAL_STEM_DARKEN_STRENGTH=10
INFINALITY_FT_AUTOHINT_INCREASE_GLYPH_HEIGHTS=false
INFINALITY_FT_AUTOHINT_SNAP_STEM_HEIGHT=100
INFINALITY_FT_AUTOHINT_VERTICAL_STEM_DARKEN_STRENGTH=25
INFINALITY_FT_BOLD_EMBOLDEN_X_VALUE=0
INFINALITY_FT_BOLD_EMBOLDEN_Y_VALUE=0
INFINALITY_FT_BRIGHTNESS=50
INFINALITY_FT_CHROMEOS_STYLE_SHARPENING_STRENGTH=0
INFINALITY_FT_CONTRAST=20
INFINALITY_FT_FILTER_PARAMS='11 22 38 22 11'
INFINALITY_FT_FRINGE_FILTER_STRENGTH=100
INFINALITY_FT_GAMMA_CORRECTION='1000 120'
INFINALITY_FT_GLOBAL_EMBOLDEN_X_VALUE=0
INFINALITY_FT_GLOBAL_EMBOLDEN_Y_VALUE=8
INFINALITY_FT_GRAYSCALE_FILTER_STRENGTH=0
INFINALITY_FT_STEM_ALIGNMENT_STRENGTH=15
INFINALITY_FT_STEM_FITTING_STRENGTH=15
INFINALITY_FT_STEM_SNAPPING_SLIDING_SCALE=30
INFINALITY_FT_USE_KNOWN_SETTINGS_ON_SELECTED_FONTS=true
INFINALITY_FT_USE_VARIOUS_TWEAKS=true
INFINALITY_FT_WINDOWS_STYLE_SHARPENING_STRENGTH=65

Почему-то нет, кстате, лд_прелоад, а без него, разумеется, не взлетит.

Оффлайн Vovka-Korovka

  • alt linux team
  • ***
  • Сообщений: 1 186
  • True Metal Cow
Это, наверное, лучше всего узнать у мейнтейнера KDE, почему при запуске второй консоли трется LD_PRELOAD.

Оффлайн А. М. Кац

  • Участник
  • *
  • Сообщений: 45
Это, наверное, лучше всего узнать у мейнтейнера KDE, почему при запуске второй консоли трется LD_PRELOAD.

Сейчас в экспериментальных целях попробовал в дебиане.

Обе консоли запустились с нормальными шрифтами, инфиналити работает, причём в обеих в выводе лд_прелоад нет.

Оффлайн Vovka-Korovka

  • alt linux team
  • ***
  • Сообщений: 1 186
  • True Metal Cow
Обе консоли запустились с нормальными шрифтами, инфиналити работает, причём в обеих в выводе лд_прелоад нет.

В debian infinality подхватывается через ld.so.conf. Я, к сожалению, так сделать не могу - ломается сборка пакетов в сизифе, которые вместо дефолтного libfreetype начинают вытягивать infinality.

Оффлайн Vovka-Korovka

  • alt linux team
  • ***
  • Сообщений: 1 186
  • True Metal Cow
Я, к сожалению, так сделать не могу

А может и смогу, есть одна идейка. Будет время опробую.

Оффлайн А. М. Кац

  • Участник
  • *
  • Сообщений: 45
А может и смогу, есть одна идейка. Будет время опробую.

В общем, заменил оригинальный libfreetype.so на инфиналитевский и убрал лд_прелоад вообще. Конечно, за такое меня надо бить по рукам, но, тем не менее, работает.