Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

[gelöst] tty Konsole. Schriftart & Schriftgröße auslesen.

Alles rund um die verschiedenen Konsolen und shells sowie die Programmierung unter Linux

Moderator: Moderatoren

Antworten
Benutzeravatar
Heinz-Peter
Guru
Guru
Beiträge: 1952
Registriert: 24. Okt 2005, 14:04

[gelöst] tty Konsole. Schriftart & Schriftgröße auslesen.

Beitrag von Heinz-Peter » 6. Jan 2018, 19:04

Hallo,

ich möchte die Schrift in der virtuellen Konsole (die man mit STRG+ALT+F1 (F2 usw...) öffnet) ermitteln.
Mich interessiert die Schriftart und die Schriftgrösse meiner tty Konsole.
Es handelt sich um die alte openSUSE 13.2

Danke im Voraus für Eure Hilfe

Heinz-Peter
Zuletzt geändert von Heinz-Peter am 21. Jan 2018, 19:46, insgesamt 1-mal geändert.
Mein Betriebssystem: Suse 13.2/42.2/42.3, Prozessor: Pentium 4 550 (3,40 GHz, FSB800, Hyper-Threading), Grafikkarte: Nvidia Geforce 6610XL (PCIe)/128MByte.
Wir müssen lernen, entweder als Brüder miteinander zu leben oder als Narren unterzugehen.

Werbung:
abgdf
Guru
Guru
Beiträge: 3035
Registriert: 13. Apr 2004, 21:15

Re: tty Konsole. Schriftart & Schriftgröße auslesen.

Beitrag von abgdf » 6. Jan 2018, 23:18

Öhm, ich vermute, das sind Fonts aus dem BIOS (oder was man da heute hat, ich hab' noch ein BIOS):

https://int10h.org/oldschool-pc-fonts/fontlist/
https://superuser.com/questions/329027/ ... o-get-them

Die Schriftgröße dürfte von der Boot-Zeile in Grub2 abhängen, da irgendwas mit "video=640x480" (so bei mir, ja, ich boote in Standard-VGA :p) (siehe u.a. auch "/etc/sysconfig/bootloader").

-----
Für normale Terminals unter X (also nicht 'Strg+Alt+F1') wie xterm kann man das beim jeweiligen Start einstellen:

Code: Alles auswählen

xterm +sb -font '-*-terminus-*-*-*-*-28-*-*-*-*-*-*-*' -fg white -bg black
Der Terminus-Font ist ziemlich cool. Ist auch bei 13.2 dabei (muß man wahrscheinlich noch das rpm installieren). "xfontsel" hilft einem, die korrekte Zeile zu finden.
Natürlich gibt man die Zeile oben so nicht ein, sondern legt sich das auf einen Shortcut (oder macht zumindest ein alias).


Benutzeravatar
susejunky
Hacker
Hacker
Beiträge: 387
Registriert: 19. Sep 2014, 18:22

Re: tty Konsole. Schriftart & Schriftgröße auslesen.

Beitrag von susejunky » 7. Jan 2018, 01:07

Hallo Heinz-Peter,
Heinz-Peter hat geschrieben:
6. Jan 2018, 19:04
... ich möchte die Schrift in der virtuellen Konsole (die man mit STRG+ALT+F1 (F2 usw...) öffnet) ermitteln.
Vorab: Ich nutze openSUSE 42.3 und kenne kein Programm, mit dem man sich anzeigen lassen kann, welcher Font aktuell in einer virtuellen Konsole eingestellt ist.

Trotzdem hier ein paar Informationen, die Dir ggf. weiterhelfen:
  • Unter "/usr/share/kbd/consolefonts" sind die Fonts abgelegt, die in der/n virtuellen Konsole(n) eingesetzt werden können.
  • "systemd-vconsole-setup.service" initialisiert beim Systemstart die virtuelle(n) Konsole(n). Es setzt mit Hilfe von "setfont" den in der Datei "/etc/vconsole.conf" mit "FONT=Fontname" festgelegten Font (für alle virtuellen Konsolen gleich).
  • Wenn beim Systemstart in der Kernel-Befehlszeile der Parameter "vconsole.font=Fontname" übergeben wird, so überschreibt das die Einstellung in "/etc/vconsole.conf".
  • Ist die Datei "/etc/vconsole.conf" nicht vorhanden oder enthält keine Einstellung "FONT=Fontname", dann kommt die Einstellung "CONSOLE_FONT=fontname" aus "/etc/sysconfig/console" zur Anwendung.
  • Wird "setfont" in einer virtuellen Konsole aufgerufen, so verändert es nur den Font dieser Konsole.
  • Wird "setfont" ohne Fontname aufgerufen, dann wird der Font "default" geladen.
Ob das Alles für openSUSE 13.2 auch zutrifft, kann ich allerdings nicht sagen. Eventuell helfen Dir
  • man systemd-vconsole-setup.service
  • man vconsole.conf
  • man setfont
weiter.

Viele Grüße

susejunky

Benutzeravatar
robi
Moderator
Moderator
Beiträge: 3148
Registriert: 25. Aug 2004, 02:13

Re: tty Konsole. Schriftart & Schriftgröße auslesen.

Beitrag von robi » 7. Jan 2018, 14:22

Es gibt wohl keine einfache Möglichkeit herauszufinden aus welcher Datei die Fonts geladen wurden.
Das liegt daran das das Format dieser Dateien auf einfaches PBM-Format beruht und beim laden einfach in eine entsprechende Struktur eingelesen wird. Diese Fonts haben intern keinen Namen der Inhalt der Datei besteht im wesentlichen nur aus einer Anzahl von Bildern (128 oder 256) welche eine bestimmte Pixelgröße haben X * Y haben. Aus welcher Datei dieses mal geladen wurde ist vollkommen uninteressant, Dateinamen sind wie Schall und Rauch.

Welche Größe der aktuelle Font hat, ist dagegen einfach zu ermitteln

Code: Alles auswählen

lux001:~ # showconsolefont -i -v -C /dev/tty2
Character count: 256
Font width     : 8
Font height    : 16
Normalerweise wird default....... geladen , eventuell auch was irgendwo konfiguriert ist zB in /etc/sysconfig/console
CONSOLE_FONT=
Wenn das aber später vom User geändert wird, ist es fast unmöglich festzustellen von welcher Datei das geladen wurde.
Fast unmöglich desshalb, weil nichts wirklich ganz unmöglich ist.

du kannst versuchen zB mit

Code: Alles auswählen

setfont -o dateiname 
den aktuellen Font als Datei zu speichern und dann diese Datei mit den auf dem Rechner vorhandenen Consolefonts zu vergleichen. Leider muss die so erzeugte Datei nicht in der gesamten Größe 100% gleich sein, mit den Dateien die unter /usr/share/kbd/consolefonts rumliegen, der Kopf und das Ende der Datei kann durchaus entsprechend kürzer oder länger sein. Die Daten der PBM-Font-Bilder und derene Reihenfolge sind aber gleich wenn du sie mit die richtige Datei vergleichst.

Um sowas zu vergleichen müsste man sich entweder die unterschiedlich möglichen Dateiformate genauer anschauen und entsprechend ein Script dann so schreiben, dass es nur die reinen Bilddaten vergleicht. oder man versucht es mit heuristischen Methoden die Datei mit den Dateien aus dem Fontsverzeichnis zu vergleichen.

Ich würde zB mal versuchen die Anzahl der Übereinstimmungen der Ausgaben von "strings DATEI | head -40" mit den Ausgaben von "zcat DATEI.gz | strings | head -40" aus dem Fontsverzeichnis zu ermitteln. Ich denke wenn man dort ein bisschen experimentiert und anpasst, müsste sowas durchaus gehen.

robi

Benutzeravatar
Heinz-Peter
Guru
Guru
Beiträge: 1952
Registriert: 24. Okt 2005, 14:04

Re: tty Konsole. Schriftart & Schriftgröße auslesen.

Beitrag von Heinz-Peter » 21. Jan 2018, 19:46

Hallo,

möchte mich bei Euch bedanken. Dank Euren Tipps konnte ich mein Luxus Problem lösen.

Grüße Heinz-Peter
Mein Betriebssystem: Suse 13.2/42.2/42.3, Prozessor: Pentium 4 550 (3,40 GHz, FSB800, Hyper-Threading), Grafikkarte: Nvidia Geforce 6610XL (PCIe)/128MByte.
Wir müssen lernen, entweder als Brüder miteinander zu leben oder als Narren unterzugehen.

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste