Ответ 1
Если вы делаете это в javascript/mootools, единицы CSS - ваш друг. Вы можете указать размеры в дюймах или сантиметрах или даже в точках (1/72 дюйма). Если вам абсолютно необходим DPI по какой-либо причине, даже если вы можете указать размеры в этих единицах, просто размер "изменяемого размера" div, который вы используете, до известного размера и рассчитывается из размера перемещенного пикселя.
Edit:
К сожалению, единицы CSS точек, см и не физически верный. Они лишь относительно верный. Это было первое, что я пытался, пока я не понял, что это не работать и проверять спецификацию CSS. мой ужас. - Брэндон Пелфи
Это хороший момент; браузеры, как правило, подделывают его, предполагая, что DPI по умолчанию (я думаю, 72 или 96) и иду с этим.
Ну, если вам нужна точность измерения, как вы просите, вам не повезло. Вы никогда не сможете получить его, не имея возможности прочитать текущее разрешение монитора, включенного браузером, и "видимую область экрана" этого монитора. Разве вы не получите это через Javascript.
Я предлагаю вам сделать предположение по умолчанию, которое делают браузеры и размер в соответствии с единицами CSS. Затем вы можете позволить своим пользователям "настроить размер" с использованием метода, о котором вы упомянули, но только если это необходимо. Сделайте это на отдельной странице с расчетом DPI, который хранится как часть сеанса пользователя или как файл cookie.
В качестве альтернативы, как только Microsoft исправляет эту ошибку, вы можете использовать "независимые от устройства" Silverlight для точного масштабирования.