Как я могу заставить lightdm масштабироваться на экране hidpi?

У меня есть ноутбук с 3200x1800 экран. Когда я запускаю свой ноутбук, lightdm не масштабируется к разрешению и выглядит крошечным. Когда я блокирую экран впоследствии, lightdm масштабирует и выглядит хорошо. Я нашел этот отчет об ошибках, но никакое решение.

6
задан 24 October 2014 в 09:48

3 ответа

Я нашел маленькую фиксацию, которая, кажется, работает над входом в систему, но не над экраном блокировки. Это решение также делает главную панель немного испорченной, как текст к большому для confinds - возможно, темой костюма было бы лучшее решение? Также это, вероятно, уверено на рабочий стол, уже устанавливавший значение Xft.dpi highger.

  1. Открывают терминал и работают xrdb -query | grep dpi
  2. , Открывают /usr/share/glib-2.0/schemas/com.canonical.unity-greeter.gschema.xml
  3. Find ключевым именем = тип "xft-точек-на-дюйм" = Замена "d"
  4. , которую значение по умолчанию с DPI от xrdb произвело

, Это должно пойти в действительности немедленно (выходящий из системы шоу больший текст на моей стороне).

3
ответ дан 17 November 2019 в 09:24

Решение, кажется, имитирует то, что приложение 'Отображений на экране' Ubuntu делает для масштабирования UI, когда Вы зарегистрированы. Я отследил эти две настройки, требуемые вниз. Я сделал сценарий для автоматической установки этого для моего пользователя для того, когда я зарегистрирован (т.е. не зазывала единицы), но можно использовать те же настройки для изменения зазывалы единицы.

у меня есть 2 дисплея 4K, и требуемый, чтобы иметь их обоих набор с масштабным коэффициентом 2, это - то, на что похож мой сценарий:

#!/usr/bin/env bash

set -e

# Find connected displays, we're assuming that all of the 
# connected displays will require scaling.
function createScaleFactor() {
    SCREENS=$(xrandr --query | grep " connected" | awk '{ print $1 }')
    FACTORS=$(for SCREEN in ${SCREENS}; do printf "'${SCREEN}': 16, "; done)

    echo "{${FACTORS::-2}}"
}

# Set both gnome and ubuntu interface scaling.
gsettings set org.gnome.desktop.interface scaling-factor 2
gsettings set com.ubuntu.user-interface scale-factor "$(createScaleFactor)"

прямо в конце там Вы видите эти две настройки, которые необходимо изменить. Так, для изменения их для зазывалы единицы (т.е. lightdm) Вы должны быть зарегистрированы как lightdm. Можно использовать dconf-редактора, чтобы сделать это:

$ sudo xhost +SI:localuser:lightdm
$ sudo su -s /bin/bash lightdm
$ dconf-editor

, После того как Вы видите dconf-редактора, перейдите к двум ключам в вышеупомянутом сценарии и установите их на значения, в которых Вы нуждаетесь. Если Вы запустили тот скрипт выше, можно обычно открывать dconf-редактора и просто захватывать значения, которые он генерировал и установил для Вас и копирует их в экземпляр dconf-редактора, который это выполняет как lightdm.

Только для помещения обледенения на пирог это решение также не заставляет ничего выглядеть странным. Вся вещь масштабируется правильно без текста, выглядящего неправильно большой для UI или чего-либо как этот. Некоторые изображения не совсем так резки, как они могли быть, но Вы могли настроить их, если бы Вы хотели, и возможно они будут обновлены к более высоким изображениям разрешения в будущем.

Идеально, в будущем обновлении или была бы опция установить это, или она автоматически обнаружит его (возможно, похожим способом к тому, как она устанавливает пользовательские обои).

3
ответ дан 17 November 2019 в 09:24

Другие ответы прекрасны. Однако они будут только масштабировать шрифты. Это вызовет неровность между шрифтами и другими элементами. Необходимо масштабировать целый дисплей. Для этого необходимо запустить скрипт, когда lightdm запускается и набор, масштабирующийся с xrandr. Можно найти детали здесь: http://evren-yurtesen.blogspot.fi/2017/10/lightdm-and-4k-displays.html

0
ответ дан 17 November 2019 в 09:24

Другие вопросы по тегам:

Похожие вопросы: