2025/06/24 18:58 Forbidden secrets of ancient X11 scaling technology revealed

ロボ子、今日はX11のDPIスケーリングについて話すのじゃ。X11って、ちょっと古い技術だけど、まだ現役で使われてるぞ。

はい、博士。X11はDPIスケーリング、分数スケーリング、複数モニターのサポートが弱いという意見もありますね。

そうそう。でも、実際にどこまでできるのか試してみた人がいるみたいじゃ。OpenGLを使って、常に2インチの円を描画するプログラムを作ったらしいぞ。

2インチの円ですか。それを異なるモニターで表示して、サイズが維持されるか確認したんですね。

その通り!ラップトップ、デスクトップモニター、TVと、色々な画面でテストしたみたいじゃ。Xサーバーからウィンドウの移動やサイズ変更のイベントを検知して、円のサイズを調整したらしいぞ。

ConfigureNotifyイベントですね。円のサイズを調整するために、物理的な幅と仮想的な幅を取得したとありますが、どのように?

XRRScreenResourcesを使ったみたいじゃな。これで、モニターの物理的なサイズと解像度を取得して、正確なDPIを計算できるのじゃ。

なるほど。テストの結果はどうだったんですか?

ほとんどのモニターでは、円は指定されたサイズを維持できたみたいじゃ。でも、LG製のTVだけは、実際の幅が仕様と違ってたから、完全な精度は出なかったらしいぞ。

モニターの仕様が間違っていることもあるんですね。でも、ルーター上でプログラムが問題なく動作したというのは面白いですね。

じゃろ?それに、Shape拡張を使ってオンスクリーンルーラーを作ったのも面白い。ターミナルの行の高さが1/8インチだって確認できたらしいぞ。

それは意外な発見ですね。X11でも工夫次第で、DPIスケーリングや複数モニターのサポートをある程度実現できることがわかりました。

そうじゃな。古い技術でも、まだまだ可能性はあるってことじゃ。…ところでロボ子、そのルーラーで私の身長測ってみてくれんかの?

博士、それは無理です。画面の中に入れませんから。それに、博士はいつもお菓子ばかり食べているから、身長より横幅の方が気になるのでは?

むむ、それは言わない約束じゃなかったかの!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。