Czcionka w zdalnym połączeniu X.

1

Mam bezgłowe pudełko Gentoo i chciałbym uruchomić na nim aplikację X, ale przesłać ekran do serwera Cygwin Xorg działającego na moim komputerze z systemem Windows.

Działa, ale nie jestem pewien, czy w tym przypadku określę czcionki do użycia w aplikacji X, która czcionka będzie faktycznie używana? ten na pudełku Gentoo (gdzie działa aplikacja X)? lub ten zainstalowany w moim Cygwin (gdzie wyświetla się aplikacja X)?

Na przykład chcę użyć czcionki DejaVu Sans Monow urxvt, moje ~ / .Xresources na pudełku Gentoo wygląda następująco:

URxvt*font: xft:DejaVu Sans Mono:size=12

W pudełku Gentoo mam zainstalowaną i włączoną czcionkę. Poniżej przedstawiono wynik działaniaeselect fontconfig list

  [1]   10-autohint.conf
  [2]   10-no-sub-pixel.conf
  [3]   10-scale-bitmap-fonts.conf *
  [4]   10-sub-pixel-bgr.conf
  [5]   10-sub-pixel-rgb.conf
  [6]   10-sub-pixel-vbgr.conf
  [7]   10-sub-pixel-vrgb.conf
  [8]   10-unhinted.conf
  [9]   11-lcdfilter-default.conf
  [10]  11-lcdfilter-legacy.conf
  [11]  11-lcdfilter-light.conf
  [12]  20-unhint-small-dejavu-sans.conf
  [13]  20-unhint-small-dejavu-sans-mono.conf
  [14]  20-unhint-small-dejavu-serif.conf
  [15]  20-unhint-small-vera.conf *
  [16]  25-unhint-nonlatin.conf
  [17]  30-metric-aliases.conf *
  [18]  30-urw-aliases.conf *
  [19]  40-nonlatin.conf *
  [20]  45-latin.conf *
  [21]  49-sansserif.conf *
  [22]  50-user.conf *
  [23]  51-local.conf *
  [24]  57-dejavu-sans.conf
  [25]  57-dejavu-sans-mono.conf *

Następnie uruchom xrdb na polu Gentoo, aby włączyć zasób (to sprawia, że ​​wierzę, że zostanie użyta czcionka na polu Gentoo):

xrdb ~/.Xresources

Kiedy uruchamiam urxvt, narzeka:

urxvt: nie można załadować podstawowego zestawu czcionek, proszę podać poprawny, używając -fn, przerywanie.

AKTUALIZACJA Jak zauważył grawitacja, okazuje się, że mój urxvt został zbudowany bez obsługi xft. Rozwiązuje się to po dołączeniu xftdo całego systemu USE. Dziękuję Ci bardzo!

murphytalk
źródło
Jak wyniki powinny eselectbyć interpretowane przez kogoś, kto nie korzystał z Portage lub Gentoo? Co oznaczają gwiazdki?
grawity

Odpowiedzi:

3

Działa, ale nie jestem pewien, czy w tym przypadku określę czcionki do użycia w aplikacji X, która czcionka będzie faktycznie używana? ten na pudełku Gentoo (gdzie działa aplikacja X)? lub ten zainstalowany w moim Cygwin (gdzie wyświetla się aplikacja X)?

Obie.

Chociaż nie jestem pewien co do dokładnych zasad, które czcionki są używane, podstawami są:

  • Jeśli program używa czcionek XLFD do wybierania czcionek, zwykle pozwala je narysować serwerowi X11 (tj. Xorg, Xwin.exe itp.). Muszą być zainstalowane na serwerze; możesz użyć xset qdo zapytania o bieżącą „ścieżkę czcionek” serwera.

  • Jednak nowoczesne programy wyświetlają czcionki po stronie klienta za pomocą FreeType + {Xft, Cairo, Qt} [+ {Pango, HarfBuzz}]. W takim przypadku czcionki muszą być zainstalowane na kliencie, a Fontconfig jest używany do ich znalezienia.

W twoim przypadku użycie xft:w urxvt oznacza, że ​​zostaną użyte czcionki po stronie klienta (Gentoo). (Xwin Cygwina jest serwerem, urxvt w Gentoo jest klientem, zgodnie ze zwykłą terminologią X.)

Jednak normalnie urxvt nie wyświetla żadnych błędów, gdy podano nieznaną xft:czcionkę. Mam więc przypuszczenie, że urxvt jest faktycznie zbudowany bez wsparcia Xft w ogóle . Uruchom ldd /usr/bin/urxvti sprawdź, czy jest połączony z libfreetypei libXft.

grawitacja
źródło