GNU/Linux >> Linux の 問題 >  >> Linux

Linux –コマンドラインから画面にピクセルを表示するためにフレームバッファにアクセスすることは可能ですか?

それが唯一の可能な方法かどうかはわかりませんが、
画面上の選択した場所に単一のピクセルを配置するには、フレームバッファと呼ばれる場所に何かを書き込む必要があることを読みました。
それで、画面のどこかに1つのピクセルを表示するために、この場所に入力して何かを書き込むことができるかどうか、私は興味を持ちました。

承認された回答:

はい、Xサーバーの外部、ttyで、次のコマンドを試してください:

cat /dev/urandom >/dev/fb0

カラーフルピクセルが画面いっぱいに表示されている場合は、セットアップに問題はありません。次の小さなスクリプトで遊んでみてください。

#!/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

ここで、関数'pixel'が答えになるはずです…ビデオカードのフレームバッファであるデバイス/ dev / fbXのx-yオフセットのバイト値(青-緑-赤-アルファ)を​​変更して、画面にピクセルを書き込みます。

>

または、1つのライナーピクセル描画を試してください(幅が1024の場合、x:y =200:100で黄色):

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

更新: このコードは、フレームバッファーを使用するようにXを構成するだけであれば、Xサーバー内でも機能します。 /usr/share/X11/xorg.conf.d/99-fbdev.conf内でfb0を指定する


Linux
  1. Linuxコマンドラインからソフトウェアをインストールする方法

  2. LinuxコマンドラインからのI/Oレポート

  3. LinuxコマンドラインからのGoogleドライブの使用

  1. Linux コマンドラインからの SHA-256 ハッシュの生成

  2. Linux コマンド出力の最初の行を省略する

  3. コマンドラインから画面にピクセルを配置するためにフレームバッファにアクセスすることはできますか?

  1. コマンドラインからリモートでLinuxワークスペースを構成する

  2. Stratisを使用してコマンドラインからLinuxストレージを管理する

  3. LinuxコマンドラインからOpenofficeマクロを呼び出す方法は?