GNU/Linux >> Znalost Linux >  >> Linux

Je možné přistupovat k framebufferu, aby bylo možné umístit pixel na obrazovku z příkazového řádku?

ano, mimo X-server, v tty, zkuste příkaz:

cat /dev/urandom >/dev/fb0

pokud obrazovku vyplňují barevné pixely, pak je vaše nastavení v pořádku a můžete si zkusit pohrát s tímto malým skriptem:

#!/usr/bin/env bash

fbdev=/dev/fb0 ;   width=1280 ; bpp=4
color="\x00\x00\xFF\x00" #red colored

function pixel()
{  xx=$1 ; yy=$2
   printf "$color" | dd bs=$bpp seek=$(($yy * $width + $xx)) \
                        of=$fbdev &>/dev/null
}
x=0 ; y=0 ; clear
for i in {1..500}; do
   pixel $((x++)) $((y++))
done

kde funkce 'pixel' by měla být odpovědí... zapsat pixel na obrazovku změnou hodnot bajtů (modrá-zelená-červená-alfa) na x-y offsetu zařízení /dev/fbX, což je vyrovnávací paměť snímků pro grafickou kartu.

nebo zkuste vykreslit jeden pixel lineru (žlutý na x:y=200:100, pokud je šířka 1024):

printf "\x00\xFF\xFF\x00" | dd bs=4 seek=$((100 * 1024 + 200)) >/dev/fb0

AKTUALIZACE: tento kód funguje i uvnitř X-serveru, pokud nakonfigurujeme X tak, aby používal frame buffer. zadáním fb0 uvnitř /usr/share/X11/xorg.conf.d/99-fbdev.conf


Linux
  1. Jak zploštit obrázek .pdf z příkazového řádku?

  2. Spouštějte skripty Perl/PHP z příkazového řádku

  3. Migrace linuxového serveru z příkazového řádku

  1. Nakonfigurujte pracovní prostor Linuxu vzdáleně z příkazového řádku

  2. Linux Základy příkazového řádku – Spouštění příkazů z příkazového řádku

  3. Jak získám svou IP adresu z příkazového řádku?

  1. Jak nainstalovat software z příkazového řádku Linuxu

  2. Jak restartovat Icewm z příkazového řádku?

  3. Linux – Je možné získat přístup k Framebufferu, aby bylo možné umístit pixel na obrazovku z příkazového řádku?