考虑DPI映射比例,LOGFONT::lfHeight单位是像素; CHARFORMAT2::yHeight单位是1/1440英寸或1/567厘米(现实长度。
必须根据DC的映射模式换算到实际DC中的像素值。
HDC hDC = ::GetDC(NULL);
lfHeight = yHeight * (GetDeviceCaps(hDC, LOGPIXELSY)/1440)。
yHeight = abs(lfHeight ) *(1440/GetDeviceCaps(hDC, LOGPIXELSY));