|
|
| version 1.3, 2005/02/09 20:11:35 | version 1.7, 2006/12/23 12:49:22 |
|---|---|
| Line 35 void *fontmng_create(int size, UINT type | Line 35 void *fontmng_create(int size, UINT type |
| int fontwidth; | int fontwidth; |
| int fontheight; | int fontheight; |
| int weight; | int weight; |
| UINT pitch; | DWORD pitch; |
| DWORD charset; | |
| if (size < 0) { | if (size < 0) { |
| size *= -1; | size *= -1; |
| Line 92 void *fontmng_create(int size, UINT type | Line 93 void *fontmng_create(int size, UINT type |
| bi->bmiColors[i].rgbReserved = PC_RESERVED; | bi->bmiColors[i].rgbReserved = PC_RESERVED; |
| } | } |
| hdc = GetDC(NULL); | hdc = GetDC(NULL); |
| ret->hBitmap = CreateDIBSection(hdc, bi, DIB_RGB_COLORS, | ret->hBitmap = CreateDIBSection(hdc, bi, DIB_RGB_COLORS, |
| (void **)&ret->image, NULL, 0); | (void **)&ret->image, NULL, 0); |
| ret->hdcimage = CreateCompatibleDC(hdc); | ret->hdcimage = CreateCompatibleDC(hdc); |
| Line 105 void *fontmng_create(int size, UINT type | Line 106 void *fontmng_create(int size, UINT type |
| if (fontface == NULL) { | if (fontface == NULL) { |
| fontface = (type & FDAT_PROPORTIONAL)?deffontface2:deffontface; | fontface = (type & FDAT_PROPORTIONAL)?deffontface2:deffontface; |
| } | } |
| charset = (type & FDAT_SHIFTJIS)?SHIFTJIS_CHARSET:DEFAULT_CHARSET; | |
| ret->hfont = CreateFont(size, 0, | ret->hfont = CreateFont(size, 0, |
| FW_DONTCARE, FW_DONTCARE, weight, | FW_DONTCARE, FW_DONTCARE, weight, |
| FALSE, FALSE, FALSE, SHIFTJIS_CHARSET, | FALSE, FALSE, FALSE, charset, |
| OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, | OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, |
| NONANTIALIASED_QUALITY, pitch, fontface); | NONANTIALIASED_QUALITY, pitch, fontface); |
| ret->hfont = (HFONT)SelectObject(ret->hdcimage, ret->hfont); | ret->hfont = (HFONT)SelectObject(ret->hdcimage, ret->hfont); |
| Line 117 void *fontmng_create(int size, UINT type | Line 119 void *fontmng_create(int size, UINT type |
| return(ret); | return(ret); |
| } | } |
| void fontmng_destroy(void *hdl) { | void fontmng_destroy(void *hdl) { |
| FNTMNG fhdl; | FNTMNG fhdl; |
| Line 164 static void fontmng_getchar(FNTMNG fhdl, | Line 165 static void fontmng_getchar(FNTMNG fhdl, |
| BRESULT fontmng_getsize(void *hdl, const OEMCHAR *string, POINT_T *pt) { | BRESULT fontmng_getsize(void *hdl, const OEMCHAR *string, POINT_T *pt) { |
| int width; | |
| OEMCHAR buf[4]; | OEMCHAR buf[4]; |
| _FNTDAT fdat; | _FNTDAT fdat; |
| int width; | |
| int leng; | int leng; |
| width = 0; | |
| if ((hdl == NULL) || (string == NULL)) { | if ((hdl == NULL) || (string == NULL)) { |
| goto fmgs_exit; | goto fmgs_exit; |
| } | } |
| width = 0; | |
| while(1) { | while(1) { |
| leng = milstr_charsize(string); | leng = milstr_charsize(string); |
| if (!leng) { | if (!leng) { |