0001:
0002:
0003:
0004:
0005:
0006:
0007:
0008:
0009: #define STRICT
0010:
0011: #include "main.h"
0012: #include "font.h"
0013:
0014:
0015:
0016: void CMyFont::Init(LPDIRECT3DDEVICE8 lpD3DDEV, int w, int h)
0017: {
0018: HDC hTextDC = NULL;
0019: HFONT hFont = NULL, hOldFont = NULL;
0020:
0021: hTextDC = CreateCompatibleDC(NULL);
0022: hFont = CreateFont( h, w, 0, 0,
0023: FW_REGULAR,
0024: FALSE,FALSE,FALSE,
0025: SHIFTJIS_CHARSET,
0026: OUT_DEFAULT_PRECIS,
0027: CLIP_DEFAULT_PRECIS,
0028: DEFAULT_QUALITY,
0029: DEFAULT_PITCH,
0030: "MS ゴシック"
0031: );
0032: if(!hFont) return;
0033: hOldFont = (HFONT)SelectObject(hTextDC, hFont);
0034:
0035: if( FAILED( D3DXCreateFont( lpD3DDEV, hFont, &m_lpFont ) ) ) {
0036: MessageBox( 0, "D3DXCreateFontIndirect FALSE", "ok", MB_OK);
0037: return;
0038: }
0039: SelectObject(hTextDC, hOldFont);
0040: DeleteObject(hFont);
0041: }
0042:
0043:
0044: void CMyFont::Print( char *str, int x, int y, D3DCOLOR color )
0045: {
0046: RECT rect;
0047: rect.left = x;
0048: rect.right = WIDTH;
0049: rect.top = y;
0050: rect.bottom = HEIGHT;
0051:
0052:
0053: m_lpFont->DrawText(str, -1, &rect
0054: ,DT_LEFT | DT_EXPANDTABS
0055: ,color
0056: );
0057: }
0058:
0059: void CMyFont::Clean()
0060: {
0061: RELEASE(m_lpFont);
0062: }
0063:
0064:
0065: