Привет всем! Подскажите пожалуйста, как перевести пиксели в миллиметры, т.е. сколько в одном миллиметре пикселов, а то надо прогу написать в которой задавать значения надо в миллиметрах.
Будет зависеть от резолюции дисплея. Зато на любом дисплее должна быть одинаковая картина. Берём от Windows сколько пикселей на дюйм: Код (Text): // // Do it one time somewhere globally. // Also do it if you detect resolution change // HDC hScreenDC = GetDC (NULL); int nPixelsPerXInch = GetDeviceCaps (hScreenDC, LOGPIXELSX); int nPixelsPerYInch = GetDeviceCaps (hScreenDC, LOGPIXELSY); ReleaseDC (NULL, hScreenDC); double dblPixelsPerXmm = (double) nPixelsPerXInch / 25.4; double dblPixelsPerYmm = (double) nPixelsPerYInch / 25.4; Ну и далее простая математика: Код (Text): __inline int XPixelsToMm (int nPixels) { return (int) (((double) nPixels / dblPixelsPerXmm) + 0.5); } __inline int YPixelsToMm (int nPixels) { return (int) (((double) nPixels / dblPixelsPerYmm) + 0.5); }