Xを実行しているPOSIXシステムでは、スクリーンショット/スクリーンスクレーパーはどのように機能しますか?

Xを実行しているPOSIXシステムでは、スクリーンショット/スクリーンスクレーパーはどのように機能しますか?
  1. 何をすべきかスクリーンショット次のプログラムGNOMEスクリーンショットまたはxfce4 - スクリーンショットプログラムデータを取得しますか?
  2. モニタ/画面の2Dピクセルマトリックスストリームにどのようにアクセスしますか?
  3. マルチモニタ設定では、特定のモニタにのみデータを転送できますか?マルチコンピュータ/モニター設定用のFOSSプログラム/スクリプトになるプログラムを作成しようとしています。

ベストアンサー1

質問1と2については私が答えます。荒野彼らは以下を介してルートウィンドウのドローアブルにアクセスしていると推測します。ルートウィンドウ(3)、それから使用X画像のインポート(3)さらに処理するには、ルートウィンドウのピクセルデータをどこかにコピーします(たとえば、PNGにダンプ)。

次のマニュアルページが役に立ちます。 Xオープンディスプレイ(3)基本画面(3)ルートウィンドウ(3)X画像のインポート(3)

また、見ることができますこの問題StackOverflowから。

Q3の場合、Xineramaを使用すると複数の画面が表示され、アプリケーションは各画面の位置とサイズに関する情報を取得できます。これはコピーする領域を選択するのにも役立ちますXGetImage(...)

もちろん、これはすべてXlibを使用していると仮定します。より良い選択肢があると聞きました。XCBですが、個人的にはこれまで使ったことがありません。

おすすめ記事