HZOUT.H
上传用户:zhang8947
上传日期:2007-01-08
资源大小:1910k
文件大小:2k
源码类别:

多国语言处理

开发平台:

Visual C++

  1. //汉字输出头文件
  2. #define GBZK16J "gb16j.dot" //GB简体汉字点阵字库
  3. #define GBZK16F "gb16f.dot" //GB繁体汉字点阵字库
  4. #define JIS16 "jis16.dot" //日文点阵字库
  5. #define KSC16 "ksc16.dot" //韩文点阵字库
  6. /*
  7. #define CACHE_HZ_NUM 100 //Cache中的汉字数目
  8. struct CACHE_ITEM //cache中的一个项
  9. {
  10. BYTE bCode ; //是何种内码
  11. BYTE b1 , b2 ; //汉字内码
  12. HBITMAP hHz ; //一个汉字的位图句柄
  13. CACHE_ITEM *pNext ; //下一个汉字
  14. CACHE_ITEM *pPrior ; //前一个汉字
  15. } ;
  16. */
  17. //----------------------------------------------------------------------------------------//
  18. //输出汉字串
  19. BOOL HzStringOut( HDC hdc , int nXStart , int nYStart ,
  20. const RECT FAR *lprc ,
  21. LPCSTR lpString , int cbString  ,
  22.    int FAR * lpDx , int nOutputCode ) ;
  23. //输出汉字串,对应于ExtTextOut
  24. BOOL ExtHzStringOut( 
  25.    HDC hdc , int nXStart , int nYStart , 
  26.    UINT fuOptions , const RECT FAR *lprc ,
  27.    LPCSTR lpString , int cbString ,
  28.    int FAR * lpDx , int nOutputCode ) ;
  29. //------------------------------------------------------------------------------------------------//
  30. //#define MAX_DOT_NUM 1024
  31. //得到一个字库的16点阵
  32. BOOL GetDotMatrix( BYTE b1 , BYTE b2 , int nOutputCode ) ;
  33. //显示一个汉字或日文或韩文,nx,ny,nWidth,nHeight都用的是logical unit
  34. BOOL HzOut( HDC hdc ,
  35. int nX , int nY ,  //Left,upper original point
  36. int nWidth , int nHeight ,  //Width and height of the HZ
  37. LPCSTR sHz , int nHzNum ,
  38. int nOneHzWidth , int nTab , //汉字逻辑宽度与汉字间隔
  39. int nOutputCode ) ;
  40. /*
  41. //初始化cache
  42. BOOL InitCache( void ) ;
  43. //结束Cache
  44. void ExitCache( void ) ;
  45. //得到一个汉字的位图句柄
  46. HBITMAP GetOneCache( int bCode , BYTE b1 , BYTE b2 ) ;
  47. */