LOGFONT m_LogFont;
HFONT m_hFont;
void CGame::SetFont( int xSize, int ySize, char* FontStyle )
{
ZeroMemory( &m_LogFont, sizeof(LOGFONT) );
m_LogFont.lfWidth = xSize;
m_LogFont.lfHeight = ySize;
m_LogFont.lfWeight = FW_NORMAL;
m_LogFont.lfQuality = DRAFT_QUALITY;
m_LogFont.lfCharSet = 1;
strcpy( m_LogFont.lfFaceName, FontStyle );
m_LogFont.lfPitchAndFamily = FF_MODERN;
}
void CGame::DrawText( int x, int y, char *str, COLORREF colText, COLORREF colBack, BOOL flag, BOOL bTrans )
{
HDC hdc;
HFONT hOldFont;
m_pDDSBack->GetDC( &hdc );
if( flag )
{
m_hFont = CreateFontIndirect( &m_LogFont );
hOldFont = (HFONT)SelectObject( hdc, m_hFont );
}
SetTextColor( hdc, colText );
SetBkColor( hdc, colBack );
if( bTrans ) SetBkMode( hdc, TRANSPARENT );
TextOut( hdc, x, y, str, strlen(str) );
if( flag )
{
SelectObject( hdc, hOldFont );
DeleteObject( m_hFont );
}
m_pDDSBack->ReleaseDC( hdc );
}