font_code_translate.h 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. /*******************************************************************************
  2. ** font_code_translate.h : used to declare code translate interfaces
  3. **
  4. ** Copyright(c) 2008 Sunmedia Technologies - All Rights Reserved
  5. ** Author : junluo
  6. **
  7. ** $Id: font_code_translate.h,v 1.4 2009/03/13 09:13:43 junluo Exp $
  8. *******************************************************************************/
  9. #ifndef _FONT_CODE_TRANSLATE_H_
  10. #define _FONT_CODE_TRANSLATE_H_
  11. #include "gui_eng/stddefs.h"
  12. /*
  13. ** Used to mask a char following
  14. ** this macro is one defined in ISO 8859-1
  15. */
  16. #define ISO88591_MASK (0x07) //junluo 08/12/29
  17. /*
  18. ** Used to mask a char following
  19. ** this macro is in the Mode 0x27 defined in A65
  20. */
  21. #define MODE0X27_MASK (0x08) //junluo 08/12/29
  22. /* Used to distinct the ASII char from combined char in ISO6937 */
  23. #define ISO6937_ASII_MASK (0x10)//add by ql.chen at 2009/10/12
  24. /* Used to declare the code convert interface */
  25. typedef INT32 (* P_CODE_TRANS_FUNC)(UINT8 *, UINT16, UINT8 *, UINT16 *);
  26. /*
  27. ** This interface used to remind some information if some convertion
  28. ** interface is needed but user didn't config by UI Designe Tool
  29. */
  30. INT32 Utf162none(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des,
  31. UINT16 *u16DstLen);
  32. /* Convert UTF16 to ISO IEC 8859 1 */
  33. INT32 Utf1628859_1(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des,
  34. UINT16 *u16DstLen);
  35. /* Convert UTF16 to ISO IEC 8859 2 */
  36. INT32 Utf1628859_2(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des,
  37. UINT16 *u16DstLen);
  38. /* Convert UTF16 to ISO IEC 8859 3 */
  39. INT32 Utf1628859_3(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des,
  40. UINT16 *u16DstLen);
  41. /* Convert UTF16 to ISO IEC 8859 4 */
  42. INT32 Utf1628859_4(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des,
  43. UINT16 *u16DstLen);
  44. /* Convert UTF16 to ISO IEC 8859 5 */
  45. INT32 Utf1628859_5(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des,
  46. UINT16 *u16DstLen);
  47. /* Convert UTF16 to ISO IEC 8859 6 */
  48. INT32 Utf1628859_6(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des,
  49. UINT16 *u16DstLen);
  50. /* Convert UTF16 to ISO IEC 8859 7 */
  51. INT32 Utf1628859_7(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des,
  52. UINT16 *u16DstLen);
  53. /* Convert UTF16 to CP8257 For Persian (Sunplus) */
  54. INT32 Utf1628257(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des,
  55. UINT16 *u16DstLen);
  56. /* Convert UTF16 to ISO IEC 8859 8 */
  57. INT32 Utf1628859_8(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des,
  58. UINT16 *u16DstLen);
  59. /* Convert UTF16 to ISO IEC 8859 9 */
  60. INT32 Utf1628859_9(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des,
  61. UINT16 *u16DstLen);
  62. /* Convert UTF16 to ISO IEC 8859 10 */
  63. INT32 Utf1628859_10(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des,
  64. UINT16 *u16DstLen);
  65. /* Convert UTF16 to ISO IEC 8859 11 */
  66. INT32 Utf1628859_11(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des,
  67. UINT16 *u16DstLen);
  68. /* Convert UTF16 to ISO IEC 8859 12 */
  69. /* Convert UTF16 to ISO IEC 8859 13 */
  70. INT32 Utf1628859_13(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  71. /* Convert UTF16 to ISO IEC 8859 14 */
  72. INT32 Utf1628859_14(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  73. /* Convert UTF16 to ISO IEC 8859 15 */
  74. INT32 Utf1628859_15(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  75. INT32 Utf1628859_16(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  76. /* Convert UTF16 to ISO IEC 6937 */
  77. INT32 Utf1626937(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen) ;
  78. /* Convert UTF16 to KSC 5601 1987 */
  79. INT32 Utf162Ksc_5601(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  80. /* Convert UTF16 to BIG 5 */
  81. INT32 Utf162Big5(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  82. /* Convert UTF16 to Jis */
  83. INT32 Utf162Jis(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  84. /* Convert UTF16 to GB2312 */
  85. INT32 Utf162Gb2312(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  86. /* Convert native code to UTF16 */
  87. INT32 Native2Utf16(INT32 eCodePage, UINT8 *pNative, UINT16 *pDest);
  88. /* Convert native code to UTF8 */
  89. INT32 Native2Utf8(UINT16 utf16, UINT8 *utf8);
  90. INT32 Utf162CP1250(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  91. INT32 Utf162CP1251(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  92. INT32 Utf162CP1252(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  93. INT32 Utf162CP1253(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  94. INT32 Utf162CP1254(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  95. INT32 Utf162CP1255(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  96. INT32 Utf162CP1256(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  97. INT32 Utf162CP1257(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  98. INT32 Utf162CP1258(UINT8 *p_u8Src, UINT16 u16Len, UINT8 *p_u8Des, UINT16 *u16DstLen);
  99. #endif
  100. /*****************************************************************************
  101. ** $Log: font_code_translate.h,v $
  102. ** Revision 1.4 2009/03/13 09:13:43 junluo
  103. ** porting in phase 4 gui engine
  104. **
  105. ** Revision 1.1.1.1 2009/02/10 06:06:50 junluo
  106. ** Used to implement the fourth development of Gui Engine
  107. **
  108. ** Revision 1.3 2009/01/05 07:59:33 junluo
  109. ** Combine new gui engine in SPV9100
  110. **
  111. ** Revision 1.2 2008/12/31 06:41:31 junluo
  112. ** no message
  113. **
  114. ** Revision 1.1.1.1 2008/11/12 01:54:00 anlzhao
  115. ** no message
  116. **
  117. ** Revision 1.2 2008/10/29 04:35:26 junluo
  118. ** Add Utf1628859_11() for thai language code conversion
  119. **
  120. ** Revision 1.1.1.1 2008/09/23 12:08:09 anlzhao
  121. ** no message
  122. **
  123. ** Revision 1.1 2008/08/13 08:17:28 junluo
  124. ** add font module code translate interface configurable!
  125. **
  126. **
  127. *****************************************************************************/