web-dev-qa-db-ja.com

対角線から画面の幅と高さの寸法を取得するにはどうすればよいですか?

すべてのガジェット仕様サイトでは、画面の寸法を対角単位で指定しています。幅と高さはインチ単位ではありません。

Display 4.95 in (126 mm) 
1920×1080 px (445 ppi) 

たとえば、GMD(Google Material Design)サイト 読み取り

画面密度=画面幅(または高さ)(ピクセル単位)/画面幅(または高さ)インチ

また、ガジェットの画面の幅(または高さ)をインチ単位で見つけることはできません。どこにでも対角ユニットだけがあります。

ガジェットディスプレイの画面の幅(または高さ)をインチでどこで取得できますか?

1
Green

それは簡単な数学の問題です。画面のサイズはピクセル単位でわかっているので、対角線の長さをピクセル単位で計算し、ピクセルとインチの比率を計算できます。たとえば、私のメインPC画面は1920×1200の解像度で24インチです。ピクセル単位で測定された対角線は次のとおりです。

dpx2 = 19202 + 12002 = 5126400

dpx = 2264.15 px

今、私はその対角線をインチとピクセルの両方で知っています。ピクセル密度(1インチあたりのピクセル数、PPI)を計算できます。

ppi = dpx/dインチ = 2264.15/24 = 94.34

そして今、対応するピクセル寸法をPPIで割ることにより、その物理的寸法を計算できます。

wインチ = wpx/ppi = 1920/94.34 = 20.35

hインチ = hpx/ppi = 1200/94.34 = 12.72

この方法は、非正方形ピクセルを持つ一部のまれなデバイスでは機能しないことに注意してください。たとえば、いくつかの安価な中国製のタブレットの場合ですが、それ以外の場合はかなり珍しいです。

1
gronostaj

@dirktが言ったように、ピタゴラスの定理を使用して計算するのは簡単です。

まず、アスペクト比が必要です。

 let ピクセル高さピクセル

次に、以下を計算する必要があります。

 let インチ *√((対角線インチ²)/(²+ 1))
 let 高さインチ =√((対角線インチ²)/(比率²+ 1))

もちろん、これはすべて正方形の物理ピクセルを想定しています。

1
Daniel B