Главная страница
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
2-1213534522
Zonder2008
2008-06-15 16:55
2008.07.13
Как обратиться к неизвестному экземпляру по индексу?


3-1201989045
md10
2008-02-03 00:50
2008.07.13
существование поля


15-1211891858
Knight
2008-05-27 16:37
2008.07.13
1C 7.7 + Delphi + ADO + MS SQL


15-1211885033
pasha_golub
2008-05-27 14:43
2008.07.13
Превратить старый ноутбук в multimedia комбайн


2-1213401503
ply
2008-06-14 03:58
2008.07.13
загрузка преобразование изображений