JavaScript/CSS を使用したシステム DPI/PPI の決定
Web 開発の世界では、さまざまなディスプレイ解像度にシームレスに適応する画像を作成することが重要です。重要な。ただし、特にピクセル密度が異なる多様なデバイスに対応する場合、この精度を達成するのは困難な場合があります。次のような疑問が生じます: JavaScript または CSS を使用してシステムの DPI/PPI 値を自動的に検出することは可能ですか?
最初の試みと失望
最初の調査では、次のような提案が得られる可能性があります。 CSS で幅 1 インチの要素を指定し、その offsetWidth を確認します。この手法は論理的であるように見えますが、限界があります。たとえば、iPhone では、このアプローチを使用すると不正確な測定値が得られる可能性があります。
代替ソリューション
代替アプローチには、ディスプレイの寸法をインチで取得し、ピクセル幅で割ることが含まれます。ただし、この方法にはディスプレイの物理的寸法にアクセスする方法が必要であり、これは簡単ではありません。
JavaScript ベースのソリューション
有望な JavaScript ソリューションでは、devicePixelRatio プロパティを利用します。高さと幅が 1 インチの要素が画面外に隠されています。このコードは、この要素のピクセル寸法にデバイスのピクセル比を乗算して DPI 値を計算し、信頼性の高い検出メカニズムを提供します。
const testDiv = document.getElementById('testdiv'); const devicePixelRatio = window.devicePixelRatio || 1; const dpiX = testDiv.offsetWidth * devicePixelRatio; const dpiY = testDiv.offsetHeight * devicePixelRatio; console.log(dpiX, dpiY);
このアプローチを実装することで、開発者は DPI/PPI を正確に決定できます。ユーザーのデバイスの値を反映し、特定の画面解像度に合わせた正確な画像生成が可能になります。
以上がJavaScript または CSS はシステムの DPI/PPI を正確に決定できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。