
为卡西欧的CPA计算器设计中文菜单
最近,卡西欧的CPA专用计算器爆料了不少内容:


根据已有图片,这款计算器看起来似乎是从fx-82es plus a直接去除第二功能和三角函数后得到的。由于去除了大量函数功能,其菜单必然会大幅简化,这为提升菜单的易读性提供了可能。对于计算器来说,提升菜单易读性,最好的方法就是——汉化。这一点在991cnx上已经做了验证,因此,接下来我将讲解如何es的屏幕上“塞进”中文菜单。
一、确定汉字字体
实现多语言显示有两种方案,一种是卡西欧fx-991cnx采用的字库方案,内置字库,然后像英文一样一个字一个字排列起来;另一种是卡西欧fx-991arx(阿拉伯语版)和夏普EL-W991CN采用的点阵图方案,把文本转化为图形,然后直接在菜单上显示图形。考虑到这款CPA计算器功能较少,ROM空闲大,实际上两种方案皆可,卡西欧可以选择技术难度低的来实现。
在UI设计上,选择汉字字形的大小是首要考虑的。目前,市面上已经有成熟的7x7和9x9点阵汉字字体,但是我在测试后发现效果很差,对于计算器常用的“数”“统计”“输入”“算”等字,会有严重的笔画粘连问题;12x12点阵对于简体字是比较合适的,大多数笔画都可以舒展,但是这个尺寸太占空间,一个菜单项只能显示3个汉字,这在多数情况下是不够的:

夏普采用了不固定尺寸的字体,这样确实可以最大化利用屏幕,但是字体看起来很丑:

在经过多次测试后,我发现9*12固定点阵是一个比较合适的值,它可以应付计算器上需要用到的绝大多数汉字,同时又不至于太占空间,一个菜单项正好可以显示4个汉字。
别看小看这多显示的一个字,汉语有多双字节词,4个字已经可以容纳2个汉字词了,这对于大多数计算器上会遇到的情况是足够用的。

我基于此,为fx-991es plus和fx-115es plus重新设计了一套中文UI,并编撰成说明书。结果完全可行:



因此,可以使用9x12点阵为卡西欧的CPA计算器设计菜单是可行的
在使用这种方式设计菜单时,汉字菜单的格式大体如下:
1汉字菜单2汉字菜单
3汉字菜单4汉字菜单二、菜单内容和跳转方式
由于最终的方案还没出来,因此我对于最有可能存在的三个菜单——CLR、MODE、SET UP,分布阐述中文显示的设计方案
1、CLR(清除)菜单
卡西欧原本的清除菜单有3个选项,我们将其汉化并塞进两行菜单里,就会变成这样:

其中memory也可以翻译为“变量”
2、MODE(模式)菜单
因为我不知道卡西欧到底准备了哪些模式,但是这款CPA计算器看着功能并不是很多,似乎是基于fx-82es plus a的,那我就以82为例。
82的菜单项很少,所以反而很好解决:

实际上再加几个菜单项也没问题,就是要翻页。
不过我感觉数据表格模式应该会删掉。
3、SET UP(设置)菜单
设置菜单是最麻烦的。
卡西欧的设置菜单有很多选项,我整理出来大概有这些:
1 MthIO 2 LineIO //这个大家都很熟
3 Deg 4 Rad
5 Gra 6 Fix
7 Sci 8 Norm
1 ab/c 2 d/c
3 CMPLX 4 STAT
5 TABLE 6 Rdec //TABLE设置函数表格模式里有几个函数,82ES是没有的。rdec设置循环小数
7 Simp 8 APO //simp设置分数是否自动约分,APO设置自动关机时间
1 Disp 2 <CONT>
其中,考虑到这款CPA计算器已经去除了三角函数,和角度单位有关的设置(Deg Rad Gra)是不需要存在的。
Simp、Rdec都需要有相应的函数功能(simp函数和循环小数函数)才有,这款计算器没有这些函数,肯定没有这两个设置项。
Disp设置项是专门给欧洲市场准备的功能,国内不需要把小数点设置为逗号,因此可以删掉。
CMPLX看情况,如果它有解方程模式那可能会保留,就看这款计算器能不能解方程了,暂时留着。
ab/c 、d/c这两个设置项设置分数显示为带分数还是假分数。这款计算器有S<->D键,应该支持分数结果,这两个设置项应该会在。
fix、sci、norm肯定是完整的,这款计算器有科学记数法键,支持科学记数法,因此肯定有sci。MthIO和 LineIO肯定也是有的,有log框框说明它应该支持自然书写,那肯定有这两个。
APO设置项在整个ES系列极少有机型搭载这个功能,国内用于考试的机型,哪怕是国际版标配此功能,也被删掉了,如fx-991cncw,所以它不太可能有。
数据表格(TABLE)不是有TABLE模式就会有的,一般82、991ES都是没有这个设置项的,更何况考CPA,这个TABLE模式本身用处也不大,我觉得这款计算器应该不会有。
STAT看他有没有统计模式,有的话肯定有。
<CONT>是调对比度的,这玩意没什么删的理由,肯定有。
综上,保守估计这款计算器可能会有的设置项应该是:
1 MthIO 2 LineIO
3 Fix 4 Sci
5 Norm 6 ab/c
7 d/c 8 STAT
1 CMPLX 2 <CONT>可以发现项目非常少。
接下来我们有两种思路来收纳这个菜单。
一个是类似fx-991cnx,做成子菜单,分支结构如下:
1算式输入
├1数学输入(原MthIO)
│├1数学输出(原MathO)
│└2小数输出(原LineO)
└2线性输入 (原LineIO)
2记数法
├1四舍五入(原Fix)
├2科学记数(原Sci)
└3常规记数法(原Norm)
3分数结果
├1带分数(原ab/c)
└2假分数(原d/c)
4统计(原STAT)
├1开(原ON)
└2关(原OFF)
1复数结果(原CMPLX)
├1 a+bi
└2 r∠θ
2对比度(原<CONT>)这样设计的逻辑更清晰,用户可以无需说明书搞明白这些功能的含义。看起来大概长这样:

但是这样改动很大,卡西欧应该不愿意做。
这就带来了另一种更简单的方法:暴力翻译菜单项
| 原文 | 译文 | |||
|---|---|---|---|---|
| 1 MthIO | 2 LineIO | 1数学输入 | 2线性输入 | |
| 3 Fix | 4 Sci | 3四舍五入 | 4科学记数 | |
| 5 Norm | 6 ab/c | 1常规计数 | 2 ab/c | |
| 7 d/c | 8 STAT | 3 d/c | 4 统计 | |
| 1 CMPLX | 2 <CONT> | 5 复数 | 6 对比度 |
这样需要3页的菜单,结果看起来类似这样:

看起来也还不错。如果你愿意的话也可以把“ab/c d/c”翻译成“带分数 假分数”
总的来说,凭借ES PLUS那128KB的巨大ROM和计算器本体的巨少功能,肯定是hole的住的。