发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种移动终端自动设置系统字体大小的处理方法及移动终端,其通过距离传感器探测人脸与移动终端的距离并自动设置系统字体大小(自动改善显示效果),为用户提供了方便。
本发明解决技术问题所采用的技术方案如下:
一种移动终端自动设置系统字体大小的处理方法,其特征在于,包括:
A、预先在移动终端上设置人脸与移动终端的不同距离范围等级对应相应字体大小的对应关系表并存储;
B、通过设置在移动终端上的距离传感器探测人脸与移动终端的距离;
C、根据所探测到的距离,查找所述对应关系表,判断所探测到的距离所在的距离范围等级,并根据所探测到的距离所在的距离范围等级对应相应字体大小的对应关系,自动调整显示屏显示对应的可见界面字体。
所述移动终端自动设置系统字体大小的处理方法,其中,所述距离传感器为采用LED发射器与接收器件分离的距离传感器。
所述移动终端自动设置系统字体大小的处理方法,其中,所述步骤B包括:
B1、当需探测距离时,将距离传感器的发射器进行初始化,设置距离传感器发射器的红外线发射频率为预定值的发射频率,并控制距离传感器的发射器按所述预定值的发射频率发射红外信号;
B2、每隔一预定时间获取距离传感器数据寄存器的数据,以探测人脸与移动终端的距离。
所述移动终端自动设置系统字体大小的处理方法,其中,设置距离传感器发射器的红外线发射频率为128,其中128是设置到寄存器变量中的数值。
所述移动终端自动设置系统字体大小的处理方法,其中,所述步骤C还包括:
当判断距离传感器探测人脸与移动终端的距离为由近到远,则自动调整显示屏显示对应的可见界面字体为由小变大。
所述移动终端自动设置系统字体大小的处理方法,其中,所述距离传感器探测的人脸与移动终端的距离采用16位二进制数据表示,则距离传感器的探测到的人脸与移动终端的距离数据范围是(0,0x3ff)。
所述移动终端自动设置系统字体大小的处理方法,其中,所述步骤C还包括:
C10、当所述距离传感器探测的人脸与移动终端的距离数据为0~470时,则判定人脸距离为最远距离模式,调用函数自动设置显示屏显示对应的可见界面字体为系统所能显示的最大字体;
C11、当所述距离传感器探测的人脸与移动终端的距离数据为471~870,则判定人脸距离为中等距离模式,调用函数自动设置显示屏显示对应的可见界面字体为系统所能显示的大字体;
C12、当所述距离传感器探测的人脸与移动终端的距离数据为871~0x3ff,则判定人脸距离为正常距离模式,调用函数自动设置显示屏显示对应的可见界面字体为正常字体,其中,上述数据0~470,471~870,871~0x3ff是数据寄存器返回的数值。
一种移动终端,其中,包括:
预先设置模块,用于预先在移动终端上设置人脸与移动终端的不同距离范围等级对应相应字体大小的对应关系表并存储;
距离探测模块,用于控制设置在移动终端上的距离传感器探测人脸与移动终端的距离;
字体自动调节模块,用于根据所探测到的距离,查找所述对应关系表,判断所探测到的距离所在的距离范围等级,并根据所探测到的距离所在的距离范围等级对应相应字体大小的对应关系,自动调整显示屏显示对应的可见界面字体。
所述的移动终端,其中,所述距离探测模块具体包括:
距离传感器初始化单元,用于当需探测距离时,将距离传感器的发射器进行初始化,设置距离传感器发射器的红外线发射频率为预定值的发射频率,并控制距离传感器的发射器按所述预定值的发射频率发射红外信号;
距离传感器数据获取单元,用于每隔一预定时间获取距离传感器数据寄存器的数据,以探测人脸与移动终端的距离。
所述的移动终端,其中,所述字体自动调节模块具体包括:
主控制单元,用于当判断距离传感器探测人脸与移动终端的距离为由近到远,则自动调整显示屏显示对应的可见界面字体为由小变大
第一调整控制单元,用于当所述距离传感器探测的人脸与移动终端的距离数据为0~470时,则判定人脸距离为最远距离模式,调用函数自动设置显示屏显示对应的可见界面字体为系统所能显示的最大字体;
第二调整控制单元,当所述距离传感器探测的人脸与移动终端的距离数据为471~870,则判定人脸距离为中等距离模式,调用函数自动设置显示屏显示对应的可见界面字体为系统所能显示的大字体;
第三调整控制单元,当所述距离传感器探测的人脸与移动终端的距离数据为871~0x3ff,则判定人脸距离为正常距离模式,调用函数自动设置显示屏显示对应的可见界面字体为正常字体。
本发明所提供的移动终端自动设置系统字体大小的处理方法及移动终端,其将距离传感器的发射功率初始化为更高的功率,获取距离传感器探测到的数据(16位数据),根据该数据自动调整移动设备的系统字体大小(自动改善显示效果),当判断距离传感器探测人脸与移动终端的距离为由近到远,则自动调整显示屏显示对应的可见界面字体为由小变大;其使移动终端增加了新功能:可以实现通过距离传感器(proximity sensor)探测人脸与移动终端的距离并自动设置系统字体大小(自动改善显示效果),为用户提供了方便。
具体实施方式
本发明所提供的移动终端自动设置系统字体大小的处理方法及移动终端,为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参见图1,图1是本发明的移动终端自动设置系统字体大小的处理方法的较佳实施例的流程图。
如图1所示,所述移动终端自动设置系统字体大小的处理方法,包括以下步骤:
步骤S100、预先在移动终端上设置人脸与移动终端的不同距离范围等级对应相应字体大小的对应关系表并存储。
本发明方法实施例中,需要预先在移动终端上设置人脸与移动终端的不同距离范围等级对应相应字体大小的对应关系表,例如,当手机字体分为最大字体,大字体和正常字体三种字体时,可以设置:当人脸与移动终端的距离范围为1-10厘米时对应相应字体大小为正常字体;当人脸与移动终端的距离范围为11-20厘米时对应相应字体大小为大字体;当人脸与移动终端的距离范围为21厘米以上时对应相应字体大小为最大字体。
步骤S200、通过设置在移动终端上的距离传感器探测人脸与移动终端的距离。
本实施例中,所述距离传感器(proximity sensor)为采用LED发射器与接收器件分离的距离传感器。
当需探测距离时,将距离传感器的发射器进行初始化,设置距离传感器发射器的红外线发射频率为预定值的发射频率(本实施例采用较高的发射频率),并控制距离传感器的发射器按所述预定值的发射频率发射红外信号;即采用LED发射器与接收器件分离的距离传感器型号,距离传感器的发射器在发射时采用功率较高的LED发射灯器件,并对该距离传感器发射器的寄存器进行特殊初始化,设置为为较高红外线发射频率(例如本发明设置距离传感器发射器的红外线发射频率为128(注:就是128, 没有单位。这个是设置到寄存器变量中的数值。代码如:Int num = 128),从而增加探测距离。
然后每隔一预定时间获取距离传感器数据寄存器的数据,以探测人脸与移动终端的距离。较佳地采用软件每隔一定时间(本发明中为200毫秒)获取距离传感器数据寄存器的数据。编程方法可以采用JNI调用ioctl的方法,或者read方法等。
步骤S300、根据所探测到的距离,查找所述对应关系表,判断所探测到的距离所在的距离范围等级,并根据所探测到的距离所在的距离范围等级对应相应字体大小的对应关系,自动调整显示屏显示对应的可见界面字体。
本实施例中系统字体调整的基本原理为:当判断距离传感器探测人脸与移动终端的距离为由近到远,则自动调整显示屏显示对应的可见界面字体为由小变大。
本实施例中具体地,所述距离传感器探测的人脸与移动终端的距离采用16位二进制数据表示,则距离传感器的探测到的人脸与移动终端的距离数据范围是(0,0x3ff)。0x3ff,即1023。
即探测人脸与移动终端的距离后,进行运算处理来自动调整显示效果。本实施例中对距离传感器探测人脸与移动终端的距离范围采用16位二进制数据表示,例如设定为[0,0x3ff]时,有以下调节实例:
C10、当所述距离传感器探测的人脸与移动终端的距离数据为0~470时,则判定人脸距离为最远距离模式,调用函数自动设置显示屏显示对应的可见界面字体为系统所能显示的最大字体;
C11、当所述距离传感器探测的人脸与移动终端的距离数据为471~870,则判定人脸距离为中等距离模式,调用函数自动设置显示屏显示对应的可见界面字体为系统所能显示的大字体;其中,可见界面字体包括系统字体、浏览器字体等。
C12、当所述距离传感器探测的人脸与移动终端的距离数据为871~0x3ff,则判定人脸距离为正常距离模式,调用函数自动设置显示屏显示对应的可见界面字体为正常字体。
其中,上述0~470;471~870;871~0x3ff都是没有单位。这个是数据寄存器返回的数值。(即反射光的强度数据,范围是0至1023)没有单位。
所以psensor是获取大致距离,不能精确地测量距离绝对值。
当然也可以直接设置为具体长度单位的。例如,当距离传感器探测人脸与移动终端的距离范围为1-10厘米时,对应相应调整字体大小为正常字体;当距离传感器探测人脸与移动终端的距离范围为11-20厘米时,对应相应高速字体大小为大字体;当距离传感器探测人脸与移动终端的距离范围为21厘米以上时,对应相应调整字体大小为最大字体。
其中调整字体大小可以通过以下函数(代码)实现:
publicvoid setFontSize() {
Method method;
try {
Class<?> activityManagerNative = Class
.forName("android.app.ActivityManagerNative");
try {
Object am = activityManagerNative.getMethod("getDefault")
.invoke(activityManagerNative);
method = am.getClass().getMethod(
"updatePersistentConfiguration",
android.content.res.Configuration.class);
Method[] ms = am.getClass().getDeclaredMethods();
for (Method m : ms) {
System.out.println(m.toString());
}
method.invoke(am, mconfig);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}。
进一步地,由于距离传感器探测时本身具有噪声,所以距离传感器的数据寄存器的数据约有正负400的公差(噪声)即+400。本实施例中在进行数据处理时必须进行噪声消除(滤波),以提高距离传感器探测精度。
由上可见,本发明提供一种移动终端自动设置系统字体大小的处理方法及移动终端,其通过距离传感器探测人脸与移动终端的距离并自动设置系统字体大小(自动改善显示效果),为用户提供了方便。
基于上述实施例,本发明还提供了一种移动终端实施例,如图2所示,所述移动终端包括:
预先设置模块410,用于预先在移动终端上设置人脸与移动终端的不同距离范围等级对应相应字体大小的对应关系表并存储;具体如上所述。
距离探测模块420,用于控制设置在移动终端上的距离传感器探测人脸与移动终端的距离;具体如上所述。
字体自动调节模块430,用于根据所探测到的距离,查找所述对应关系表,判断所探测到的距离所在的距离范围等级,并根据所探测到的距离所在的距离范围等级对应相应字体大小的对应关系,自动调整显示屏显示对应的可见界面字体;具体如上所述。
所述的移动终端,其中,所述距离探测模块具体包括:
距离传感器初始化单元,用于当需探测距离时,将距离传感器的发射器进行初始化,设置距离传感器发射器的红外线发射频率为预定值的发射频率,并控制距离传感器的发射器按所述预定值的发射频率发射红外信号;具体如上所述。
距离传感器数据获取单元,用于每隔一预定时间获取距离传感器数据寄存器的数据,以探测人脸与移动终端的距离;具体如上所述。
所述的移动终端,其中,所述字体自动调节模块具体包括:
主控制单元,用于当判断距离传感器探测人脸与移动终端的距离为由近到远,则自动调整显示屏显示对应的可见界面字体为由小变大;具体如上所述。
第一调整控制单元,用于当所述距离传感器探测的人脸与移动终端的距离数据为0~470时,则判定人脸距离为最远距离模式,调用函数自动设置显示屏显示对应的可见界面字体为系统所能显示的最大字体;具体如上所述。
第二调整控制单元,当所述距离传感器探测的人脸与移动终端的距离数据为471~870,则判定人脸距离为中等距离模式,调用函数自动设置显示屏显示对应的可见界面字体为系统所能显示的大字体;具体如上所述。
第三调整控制单元,当所述距离传感器探测的人脸与移动终端的距离数据为871~0x3ff,则判定人脸距离为正常距离模式,调用函数自动设置显示屏显示对应的可见界面字体为正常字体;具体如上所述。
综上所述,本发明所提供的移动终端自动设置系统字体大小的处理方法及移动终端,其将距离传感器的发射功率初始化为更高的功率,获取距离传感器探测到的数据(16位数据),根据该数据自动调整移动设备的系统字体大小(自动改善显示效果),当判断距离传感器探测人脸与移动终端的距离为由近到远,则自动调整显示屏显示对应的可见界面字体为由小变大;其使移动终端增加了新功能:可以实现通过距离传感器(proximity sensor)探测人脸与移动终端的距离并自动设置系统字体大小(自动改善显示效果),为用户提供了方便。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。