Главная страница
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.021 c
15-1211889596
map
2008-05-27 15:59
2008.07.13
Какрта в программе


3-1201969179
Lamer666
2008-02-02 19:19
2008.07.13
Записи ADOQuery


2-1213167659
deras
2008-06-11 11:00
2008.07.13
Как обнулить счетчик генератора в FireBird?


15-1212050322
__mirage_
2008-05-29 12:38
2008.07.13
не надоело варианты моего ника регистрировать?


15-1212140391
bsna
2008-05-30 13:39
2008.07.13
кодировка dos и win