これを javascript/mootools で行っている場合は、CSS ユニットが役に立ちます。サイズは、インチまたはセンチメートル、またはポイント (1/72 インチ) で指定できます。これらの単位でサイズを指定できても、何らかの理由で DPI が絶対に必要な場合は、使用している「サイズ変更可能な」div のサイズを既知のサイズに変更し、変換されたピクセル サイズから計算するだけです。
編集:
残念ながら、ポイント、cm、およびインチの CSS 単位は物理的に正しくありません。それらは比較的正しいだけです。これは、機能していないことに気づき、CSS 仕様を確認するまで、私が最初に試したものでした..がっかりしました。–ブランドン・ペルフリー
それは良い点です; ブラウザーは、デフォルトの DPI (私は 72 または 96 だと思います) を想定してそれを使用することで、それを偽造する傾向があります。
まあ、あなたが求めているような正確なサイジングが必要な場合は、運が悪い. ブラウザーがオンになっているモニターの現在の解像度と、そのモニターの「表示可能な画面領域」の両方を読み取ることができなければ、それを取得することはできません。Javascript を介してそれを取得する方法はありません。
ブラウザが行うデフォルトの想定を行い、CSS 単位に従ってサイズを変更することをお勧めします。次に、前述の方法を使用してユーザーが「サイズを調整」できるようにすることができますが、必要な場合に限ります。ユーザー セッションの一部として、または Cookie として保存された DPI 計算を使用して、別のページでこれを行います。
または、Microsoftがこのバグを修正したら、Silverlight の「デバイスに依存しない単位」を使用して正確なスケーリングを行うことができます。