画面の一部のみを使用するようにXorgを設定します


13

画面の解像度は1280 x 1024です。しかし、残念ながら、200ピクセルの右端のベルトは損傷しており、画像を表示できません。

Xorgが画面を1080 x 1024デバイスとして扱うように設定するにはどうすればよいですか?

今私は試しました:

Virtual 1080 1024
Viewport 0 0

それは正しく動作しません-画像は垂直に収まるように拡大縮小され、水平にマウスでパンできます。


2
私はもっ​​と簡単な方法でもっと多くの解決策を探して、賞金を獲得しました。みんな、ありがとう!
ロッククラリ

回答:


8

http://howto-pages.org/ModeLines/をチェックしてください。Xorgのモードラインについての良い説明があります。次に、http://xtiming.sourceforge.net/cgi-bin/xtiming.plにアクセスして、使用できる画面のサイズの仕様を入力します。これにより、xorg.confファイルに追加できるModelineが提供されます。

フィールド4、5、6、および7は、次の値に対応します。HDisplayHSyncStart HSyncEnd HTotal。

フィールド5と6を操作することで、画面の表示部分を必要に応じて左右に移動できます。


これについてさらに詳しく説明していただけますか?
ロッククラリ

承知しました。タイプライターのキャリッジリターンのようなhsyncを考えてください。Xコントロールディスプレイは、CRTの時代に開発された方法を思い出してください。HSyncStartは、ある位置でピクセルの描画を開始し、HSyncEndがHSync信号が設定されるまで描画を続け、CRTに画面に次の行を描画するように指示します。LCDの時代では、これはレガシーですが、それがまだどのように機能するかです。水平線の開始フィールドと終了フィールドで遊ぶことで、画面の幅と物理メディアのどの部分に描画するかを制御できます。投稿のリンクには良い説明があります。
ティムケネディ

2

ディスプレイマネージャーに最適な使用方法をいじる必要がありますが、

Xorgを通常どおり起動できます。これにより、画面全体が最大解像度で使用されます。たとえば、

Xorg :123 -ac

-acスイッチは、クライアントの許可に関するXorgの制限の一部(すべて?)を無効にします。次に、Xephyrを唯一のクライアントとして起動します(-screen引数として渡される解像度をニーズに合わせて調整することもできます)。

DISPLAY=:123 Xephyr :0 -screen 1720x1200

Xephyrは、あらゆるXserverと同様にクライアントと対話する一種の「オーバーレイXserver」ですが、レンダリングと入力(ユーザーが直面した部分)を処理する代わりに、Xephyrは別のXserverに依存します。

これらのコマンドをどのように組み合わせるかは、ユースケースによって大きく異なります。一般に、セッションマネージャーなどのアプリケーションでは、Xserverを呼び出す方法をコマンドで指定できます。

私はそれを試してみました:

/root/.xinitrcコンテンツで作成する

Xephyr :0 -ac -once -query myxdmcphost -screen 1400x1200`

ここで、1400は画面幅-200ピクセルです。

次に実行するxinit -- :123 -my -usual -xorg -options -for -my -computerと、ログイン画面と、実際には画面全体を使用するセッションが表示されますが、右側に幅200ピクセルの列があります。

GDMなどで同じ効果を得るには、Xserverを呼び出すメソッドとしてxinitコマンドを数回提供する必要がありますgdm.conf。しかし、私はそれをどのように行うのかを頭の中で伝えることはできません。


1
XephyrはOpenGLハードウェアアクセラレーションをサポートしていないため、最新のDEやゲームには適していません。
ロッククラリ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.