1.1 地区 1
第1章 对国际化的理解 1
1.2 国际化 3
1.2.1 对Windows的国际化 4
1.3 本地化 7
1.3.1 本地化过程 8
1.3.2 国际性软件的发行 10
1.4 小结 11
第2章 设计全球软件 13
2.1 计划一个全球软件 13
2.1.1 在规格说明中标识出本地化需求 14
2.2 用户化特征 14
2.2.1.1 位图、图符和声音 16
2.2.1 设计一个国际性的用户界面 16
2.2.1.2 菜单和对话框 18
2.2.1.3 键盘 19
2.2.2 法律问题研究 19
2.2.3 保持功能的可用性 20
2.3 组建一个产品组 21
2.4 建立一种开发环境 22
2.4.1 隔离可本地化源程序 23
2.4.2 消除编译依赖性 25
2.5 巧妙的编程实践 28
2.5.1 避免硬代码可本地化的成分 28
2.5.3 不要限制确定为拉丁语的字符 31
2.5.2 使缓冲区足够大以容纳转换后的正文 31
2.5.4 不要假设字符总是8位的 32
2.5.5 保存你的文件格式不要将串本地化 33
2.5.6 避免某些编程捷径 34
2.5.6.1 对串的巧妙使用 34
2.5.7 语言特定代码 35
2.6 使事情对转换人员更加容易一些 36
2.7 测试考虑 37
2.8 小结 39
第3章 字符集编码 41
3.1 代码页模型 41
3.2 Windows中的双字节字符集 42
3.2.1 DBCS编程基础 43
3.2.1.1 显示操作 45
3.2.2 允许和不允许DBCS的程序比较 46
3.2.3 将核心代码库对DBCS开放 48
3.2.3.1 运行时优化 48
3.2.3.2 双重编译 50
3.2.3.3 宏和插入函数 50
3.2.4 如何在一个DBCS字符串中后移 51
3.3 UNICODE 52
3.3.1 Unicode标准 53
3.3.1.1 Unicode对某些应用系统的重要意义 56
3.3.1.2 Unicode简化编码过程 56
3.3.2 在Unicode标准中的汉字统一 58
3.4 在混合环境中的兼容性问题 60
3.4.1 Unicode和Win32 API 61
3.4.2 Win32s和Windows 95中的Unicode 62
3.4.3 Windows NT上的Unicode 65
3.4.4 处理Unicode数据的Win32API调用 68
3.4.5 Windows NT上对Unicode开放的图板 70
3.4.6 Visual C++2中的Unicode 72
3.5 UNICODE数据转换 75
3.5.1 移植基于Unicode的程序 82
3.6 小结 84
第4章 为本地化准备用户界面 86
4.1 Windows资源文件 88
4.1.1 资源编译 89
4.1.2 本地化资源文件 91
4.1.2.1 一个好的本地化工具的特征 91
4.1.3 本地化对话框 93
4.1.4 串的存储 95
4.1.4.1 字符串表的注意事项 97
4.1.5 在RCDATA资源中存储常数 97
4.2 多语言资源 99
4.2.1 运行时改变用户界面 103
4.2.1.1 消息框 104
4.2.1.2 多语言DLL 104
4.3 版本戳 109
4.4 小结 112
第5章 支持本地传统 114
5.1 格式化的日期和时间串 114
5.2 日历格式 118
5.3 货币和数字格式 119
5.4 地区标识 121
5.5 制省用户和系统地区 123
5.6 数据处理 125
5.6.1 为提高效率而构建表格 125
5.6.2 使用排序键对数据进行排序和搜索 128
5.6.3 在Windows95和 WindowsNT上运行一个单一的二进制程序 130
5.6.4 注意具有重大影响的微小细节 131
5.7 小结 132
第6章 Microsoft Windows中的多语言输入输出 133
6.1 多语言支持 134
6.1.1 在键盘布局之间进行切换 134
6.1.1.1 语言/版面配对 134
6.1.2 改变Windows95上的输入语言 136
6.2 字体字符集属性 138
6.2.1 支持使用大字体显示多种语言正文 139
6.2.1.1 字体、Locale和字符集标签 139
6.3 字体枚举和选择 142
6.3.1 EnumFontFamiliesEx 142
6.3.2 ChooseFont 143
6.4 Rich Text和输出多语言文字 144
6.5.1 分析和预处理文字 145
6.5 多语言文字布局 145
6.6 小结 149
第7章 处理远东写作系统 150
7.1 用于本地化的工具 150
7.2 远东写作系统 151
7.2.1 中文 153
7.2.2 日文 153
7.2.3 朝鲜文 154
7.3 远东输入方法编辑器 154
7.3.1 日文Windows的标准IME 155
7.3.1.1 输入日文字符 156
7.3.2.1 输入朝鲜文字符 158
7.3.2 朝鲜文WindowsNT3.5的标准IME 158
7.3.3 中文输入方法 159
7.3.3.1 语音符号输入方法 159
7.3.3.2 仓颉(Chang Jei)输入方法 160
7.3.3.3 大易、数组和内部编码输入方法 160
7.3.3.4 激活IME 160
7.3.3.5 输入中文字符 161
7.4 IME系统的工作原理 163
7.5 对WindowsNT3.5上运行的应用系统的IME支持 165
7.5.1 增加响应IME消息的代码 165
7.5.2 增加对IME函数的调用 166
7.6 对在Windows 95上运行的应用系统的三种级别IME支持 167
7.6.2 部分IME支持 168
7.6.1 无IME支持 168
7.6.3 完全IME支持 170
7.7 用户化Windows 95上的IME支持 172
7.7.1 设置输入上下文 172
7.7.2 修改用户界面 173
7.8 垂直书写和打印 174
7.9 日本硬件 176
7.10 字体 176
7.10.1 兼容性问题 178
7.10.1.1 在日文Windows 和美国Windows上运行一个单一的二进制程序 180
7.10.1.2 在Windows NT3.5和 Windows 95上运行单一的二进制程序 181
7.11 表意字符的排序规则 181
7.12.1 日文中的正文换行 182
7.12 亚洲语言的换行规则 182
7.12.2 中文中的正文换行 184
7.12.3 朝鲜文中的正文换行 186
7.12.4 泰国语中的正文换行 187
7.13 小结 188
附录A 词汇 189
附录B 一般拉丁变音符和连字符 207
附录C 选取的国际标点符号 210
附录D 所选取语言的排序 211
附录E Microsoft Windows中支持的代码页面 226
附录F 地区专有的代码页面信息 228
附录G DBCS/Unicode映射表 231
代码页932 232
代码页936 256
代码页949 283
代码页950 345
附录H 代码页面 389
1250WINDOWS LATIN2(中欧) 390
1251 WINDOWS CYRILLIC(斯拉夫语) 397
1252 WINDOWS LATIN1(ANSI) 401
1253 WINDOWS GREEK(希腊) 405
1254 WINDOWS LATIN5(土尔其语) 409
1255 WINDOWS HEBREW 413
1256 WINDOWS ARABIC 417
1257 WINDOWS BALTIC RIM 421
437 MS-DOS LATIN US 425
708 MS-DOS ARABIC ASMO 426
737 MS-DOS GREEK 427
775 MS-DOS BALTIC RIM 428
850 MS-DOS LATIN 1 429
851 MS-DOS GREEK 1 430
852 MS-DOS LATIN 2 431
855 MS-DOS CYRILLIC 432
857 MS-DOS TURKISH 433
860 MS-DOS PORTUQUESE 434
861 MS-DOS ICELANDIC 435
863 MS-DOS FRENCH CANADA 437
865 MS-DOS NORDIC 438
866 MS-DOS CYRILLIC CIS 1 439
869 MS-DOS GREEK 2 440
10000 MACINTOSH ROMAN 441
10006 MACINTOSH GREEK 442
10007 MACINTOSH CYRILLIC 443
10029 MACINTOSH CENTRAL EUROPE 444
10079 MACINTOSH ICELANDIC 445
10081 MACINTOSH TURKISH 446
附录I Microsoft Win32有关国家和语言的信息 447
附录J 支持Min32NLSAPI的平台 455
附录K Microsoft Windows中支持的地区 457
附录L 多语言API函数和结构 462
附录M 字体签名位域赋值 464
附录N Windows 95输入法管理器API函数 481
附录O Windows 95输入法管理器API消息和参数 484
附录P Microsoft Windows的本地化版本 488
附录Q 国际键盘布局 490
862 MS-DOS HEBREW 536
附录R 国际键盘布局上的死键组合 549
附录S 度量衡 557
附录T 国际货币、日期和时间格式 559
附录U 纸张和信封类型及规格 606
附录V 国际地址格式 612
附录W Microsoft分公司 618
作者简介 625