Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.07.13;
Скачать: CL | DM;

Вниз

Ширина IPicture в пикселях   Найти похожие ветки 

 
Dmitry S ©   (2008-05-27 12:58) [0]

Как преобразовать IPicture::get_Width в пиксели?


 
wicked ©   (2008-05-27 13:09) [1]

а в чем дает ширизну IPicture::get_Width?


 
Dmitry S ©   (2008-05-27 13:10) [2]

В каких-то OLE_XSIZE_HIMETRIC


 
guav ©   (2008-05-27 13:21) [3]

HIMETRIC это 0.01 мм, перевод, если не ошибаюсь будет так:
W := oleW * GetDeviceCaps(hDCScreen, LOGPIXELSX) / 2540;


 
wicked ©   (2008-05-27 13:23) [4]


> В каких-то OLE_XSIZE_HIMETRIC

1 - найти, есть ли готовый метод для преобразования из одних единиц в другие - himetric - это по 0.01 мм точка

если нету, то
1 - почитать про SetMapMode
2 - выяснить, есть ли у IPicture какие либо DPI или что то похожее
3 - переводить ручками


 
Dmitry S ©   (2008-05-27 14:17) [5]


> HIMETRIC это 0.01 мм

Спасибо!

Кстати в хелпе нашел:


STDAPI_(int) XformWidthInHimetricToPixels(HDC hDC, int iWidthInHiMetric)
{
int     iXppli;     //Pixels per logical inch along width
int     iWidthInPix;
BOOL    fSystemDC=FALSE;

if (NULL==hDC || GetDeviceCaps(hDC, TECHNOLOGY) == DT_METAFILE
 || GetDeviceCaps(hDC, LOGPIXELSX) == 0)
 {
 hDC=GetDC(NULL);

fSystemDC=TRUE;
 }

iXppli = GetDeviceCaps (hDC, LOGPIXELSX);

//We got logical HIMETRIC along the display, convert them to pixel units
iWidthInPix = (int)MAP_LOGHIM_TO_PIX(iWidthInHiMetric, iXppli);

if (fSystemDC)
 ReleaseDC(NULL, hDC);

return iWidthInPix;
}



#define HIMETRIC_PER_INCH   2540      // number HIMETRIC units per inch
#define MAP_LOGHIM_TO_PIX(x,ppli)   MulDiv((ppli), (x), HIMETRIC_PER_INCH)



Страницы: 1 вся ветка

Текущий архив: 2008.07.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
2-1213513674
TForumHelp
2008-06-15 11:07
2008.07.13
Ресурсы в EXE-файле - Иконка


4-1192558662
lock95
2007-10-16 22:17
2008.07.13
Настройка BIOS из программы под Windows


2-1213614267
man
2008-06-16 15:04
2008.07.13
Файл занят другим процессом


15-1211742484
Заинтересованный
2008-05-25 23:08
2008.07.13
Стоимость разработки пакета, аналогичного SynEdit


15-1211813808
БарЛог
2008-05-26 18:56
2008.07.13
php. случайный элемент числового множества