Неверный размер шрифтов: различия между версиями

Материал из ALT Linux Wiki
мНет описания правки
мНет описания правки
Строка 17: Строка 17:
   dimensions:    1920x1080 pixels (513x292 millimeters)
   dimensions:    1920x1080 pixels (513x292 millimeters)
   resolution:    95x94 dots per inch
   resolution:    95x94 dots per inch
либо попытаться найти нужную информацию в логах X-сервера
$ cat /var/log/Xorg.0.log | grep DPI
(--) NVIDIA(0): DPI set to (95, 94); computed from "UseEdidDpi" X config
=== Как бывает ===
Если проявляются выше перечисленные симптомы, то, возможно, система имеет неверное значение dpi. От величины в пару десятков до нескольких тысяч, в то время как нормальные значения лежат в пределах 80-90 (дешевые мониторы с большой диагональю), 90-100 (нормальные мониторы), 100-150 (очень качественные мониторы на дорогих компактных ноутбуках).
Если есть возможность запустить консоль в графическом режиме, воспользуйтесь {{cmd|xdpyinfo}} чтоб точно узнать в чем проблема. Если графический сервер запущен, но открыть консоль в нем не удается, то можно перейти в текстовую консоль (Ctrl-Alt-F1) а запустить {{cmd|xdpyinfo}} там, указав, с каким дисплеем ей работать
$ DISPLAY=:0 xdpyinfo | grep -B1 dots
=== Что делать ===
Конечно, самый верный способ это поменять монитор на другой, более качественный и соответствующий всем стандартам. Если такой возможности нет, то придется вручную указать системе физический размеры экрана. Для этого в файле {{path|/etc/X11/xorg.conf}} в секцию "Monitor" необходимо внести параметр {{term|DisplaySize}}:

Версия от 21:12, 29 января 2011


Что делать, если слишком большие/маленькие шрифты

Бывает, что после установки системы или загрузки с livecd/flash работать в графической системе невозможно, так как шрифты слишком маленькие (вплоть до "одна буква один пиксель"), или наоборот, слишком большие ("на экран влезло три буквы").

Одна из возможных причин: монитор и/или видеокарта не соответствуют стандартам и неверно сообщают системе о своих параметрах.

Как должно быть

Физический размер букв на экране (если измерять его линейкой, приложенной к экрану) не должен зависеть от типа и размера монитора, от разрешения и т.п. Он зависит только от "размера" шрифта, выставленного в настройках приложения (тот самый "десятый шрифт"). Для того, чтоб было именно так, система должна знать истинное разрешение монитора в точках на дюйм. Качественный монитор сообщает системе о своих физических размерах через интерфейс DDC. Это легко увидеть, запустив программу ddcprobe:

# ddcprobe | grep screen
screensize: 51 29

(размер в сантиметрах) На основании этих данных и текущем разрешении система (Х-сервер) вычисляет значение dpi, и обеспечивает корректное отображение шрифтов, документов, изображений и т.п. (в текстовом процессоре при отображении 100% лист начинает физически совпадать с размером листа А4, например).

Проверить текущее значение dpi и размеров экрана можно либо командой xdpyinfo

$ xdpyinfo | grep -B1 dots
  dimensions:    1920x1080 pixels (513x292 millimeters)
  resolution:    95x94 dots per inch

либо попытаться найти нужную информацию в логах X-сервера

$ cat /var/log/Xorg.0.log | grep DPI
(--) NVIDIA(0): DPI set to (95, 94); computed from "UseEdidDpi" X config

Как бывает

Если проявляются выше перечисленные симптомы, то, возможно, система имеет неверное значение dpi. От величины в пару десятков до нескольких тысяч, в то время как нормальные значения лежат в пределах 80-90 (дешевые мониторы с большой диагональю), 90-100 (нормальные мониторы), 100-150 (очень качественные мониторы на дорогих компактных ноутбуках).

Если есть возможность запустить консоль в графическом режиме, воспользуйтесь xdpyinfo чтоб точно узнать в чем проблема. Если графический сервер запущен, но открыть консоль в нем не удается, то можно перейти в текстовую консоль (Ctrl-Alt-F1) а запустить xdpyinfo там, указав, с каким дисплеем ей работать

$ DISPLAY=:0 xdpyinfo | grep -B1 dots

Что делать

Конечно, самый верный способ это поменять монитор на другой, более качественный и соответствующий всем стандартам. Если такой возможности нет, то придется вручную указать системе физический размеры экрана. Для этого в файле /etc/X11/xorg.conf в секцию "Monitor" необходимо внести параметр DisplaySize: