www.pudn.com > cwin.rar > DRAWFONT.C


    /*----------------------------------------------------------- 
        函数 _DrawFont : 用逐点显示法放大显示字模点阵 
    -----------------------------------------------------------*/ 
    #pragma inline 
    #include  
 
    extern int _ScreenWidth;          /* 逻辑屏幕宽度(以字节为单位)   */ 
    extern int _ScreenTop;            /* 当前屏幕首行位置             */ 
    extern int _Xtimes;               /* 横向放大倍数                 */ 
    extern int _Ytimes;               /* 纵向放大倍数                 */ 
 
    int _FontBkStyle   = SOLIDLINE; 
    int _FontDirection = HORIZONTAL; 
 
    extern void _Cdecl _Bar(int x,int y,int w,int h,int color,unsigned long pattern); 
 
    void _Cdecl _DrawFont(x,y,width,high,color,font) 
    int x,y;                          /* 字模点阵的显示坐标           */ 
    int width;                        /* 字模点阵的宽度(以字节为单位) */ 
    int high;                         /* 字模点阵的高度(以象素为单位) */ 
    int color;                        /* 字模点阵的颜色               */ 
    unsigned char *font;              /* 字模点阵的存放地址           */ 
    { 
        int i,j,k;                    /* 循环控制变量                 */ 
 
        if(_FontBkStyle)              /* 如果需要用虚线显示字模       */ 
        { 
            unsigned char *ptr = font; 
 
            _CL = 0xaa;               /* 0xaa : 10101010B,虚线模板    */ 
            for(i=0;i>k) & font[i*width+j]) 
                    { 
                        if(_FontDirection) 
                            _Bar(x+i*_Ytimes,y+(j*8+k)*_Xtimes,_Xtimes,_Ytimes,color,0xffff0000); 
                        else 
                            _Bar(x+(j*8+k)*_Xtimes,y+i*_Ytimes,_Xtimes,_Ytimes,color,0xffff0000); 
                    } 
    }