Hi, Below is the part of my code. I am wondering why i get the negative value of font height lfptr = (LOGFONT*)(&lpIMC->lfFont); memcpy( &lf2, lfptr, sizeof( lf2) ); // Convert unicode font face to ANSI encoding WideCharToMultiByte( CP_ACP, 0, (LPCWSTR)lfptr->lfFaceName, (int)wcslen((LPCWSTR)lfptr->lfFaceName)+1, (LPSTR)lf2.lfFaceName, (int)sizeof(lf2.lfFaceName), NULL, NULL); lf2.lfHeight <--- which is a negative value. How do i may into the real height to paint the corrent location? Thanks in advance.