人机交互界面的多语言实现方法及装置的制作方法

文档序号:6602598阅读:300来源:国知局
专利名称:人机交互界面的多语言实现方法及装置的制作方法
技术领域
本发明涉及监控技术领域,具体涉及一种人机交互界面的多语言实现方法及装置。
背景技术
在嵌入式系统开发中,某些产品可能会需要跨区域销售,因此,通常会有多语言的 需 求。比如,数字硬盘录像机(DVR,Digital Video Recorder),其是使用数据硬盘记录视 音频数据的一种监控设备。现有数字硬盘录像机中,为了满足不同区域对不同语言的需求,通常是采用将使 用到的各国字符转换为Unicode编码值作为一个编码表,并将系统中所使用到的字符做成 一个经裁剪过的点阵字库,根据当前系统的语言,选择与该语言对应的编码表,根据编码表 中的编码值查找字库中的字符进行显示。这样的方式,每增加一种语言,需要重新裁剪或修 改点阵字库,且需要将所用到的字符信息转为编码值,在显示不同国家语言时,对字符偏移 量的计算即所述字符在点阵字库中的位置也有所不同,通用性较差,使用不便。

发明内容
本发明实施例提供一种人机交互界面的多语言实现方法及装置,可以实现人机交 互界面多语言的动态切换,并提高其通用性,方便用户的使用。为此,本发明实施例提供如下技术方案一种人机交互界面的多语言实现方法,包括获取系统当前语言设置;确定所述系统当前状态;如果所述系统当前状态为初始化状态,则加载所述人机交互界面使用的元素信息 以及与所述系统当前语言设置对应的语言配置文件到内存中,并替换内存中已保存的字符 串信息,所述语言配置文件包括与一种语言对应的字符串信息;如果所述系统当前状态为运行状态,则加载与所述系统当前语言设置对应的语言 配置文件到内存中,并替换内存中已保存的字符串信息;根据所述人机交互界面使用的元素信息显示所述语言配置文件中包含的字符串。优选地,所述方法还包括将所述人机交互界面使用的元素信息存储在基本配置 文件中;相应地,所述加载所述人机交互界面使用的元素信息包括加载所述基本配置文 件。优选地,所述方法还包括将所述人机交互界面使用的元素信息及所述系统默认 语言对应的字符串信息存储在基本配置文件中;相应地,如果所述系统当前状态为初始化状态,则所述加载所述人机交互界面使 用的元素信息以及与所述系统当前语言设置对应的语言配置文件包括
如果所述系统当前语言设置是系统默认语言,则加载所述基本配置文件;如果所述系统当前语言设置不是系统默认语言,则首先加载所述基本配置文件中 的人机交互界面使用的元素信息,然后加载与所述系统当前语言设置对应的语言配置文 件。优选地,所述人机交互界面使用的元素信息包括控件及窗口信息、各语言使用的 编码方式;相应地,所述根据所述人机交互界面使用的元素信息显示所述语言配置文件中包 含的字符串包括从所述人机交互界面使用的元素信息中获取所述系统当前语言使用的编码方 式;根据所述编码方式选择一种已创建的对应所述系统当前语言的字体;利用选择的字体显示所述语言配置文件中包含的字符串。优选地,所述利用选择的字体显示所述语言配置文件中包含的字符串包括获取已加载到内存中的字符串信息,并将需显示的字符串转换为编码值;利用所述编码值计算所述字符串在对应选择的字体的字库中的偏移量;根据所述偏移量从所述字库中获取对应的字模信息;显示所述字模信息。一种人机交互界面的多语言实现装置,包括语言信息获取单元,用于获取系统当前语言设置;系统状态确定单元,用于确定所述系统当前状态;加载单元,用于在所述系统当前状态为初始化状态时,加载所述人机交互界面使 用的元素信息以及与所述系统当前语言设置对应的语言配置文件到内存中,并替换内存中 已保存的字符串信息,所述语言配置文件包括与一种语言对应的字符串信息;在所述系统 当前状态为运行状态时,加载与所述系统当前语言设置对应的语言配置文件到内存中,并 替换内存中已保存的字符串信息;显示单元,用于根据所述人机交互界面使用的元素信息显示所述语言配置文件中 包含的字符串。优选地,所述装置还包括第一配置单元,用于将所述人机交互界面使用的元素信息存储在基本配置文件 中;相应地,所述加载单元在所述系统当前状态为初始化状态时,加载所述基本配置 文件以及与所述系统当前语言设置对应的语言配置文件到内存中,并替换内存中已保存的 字符串信息。优选地,所述装置还包括第二配置单元,用于将所述人机交互界面使用的元素信息及所述系统默认语言对 应的字符串信息存储在基本配置文件中;相应地,所述加载单元在所述系统当前状态为初始化状态,并且所述系统当前语 言设置是系统默认语言时,加载所述基本配置文件;在所述系统当前状态为初始化状态,并 且所述系统当前语言设置不是系统默认语言时,首先加载所述基本配置文件中的人机交互界面使用的元素信息,然后加载与所述系统当前语言设置对应的语言配置文件。优选地,所述人机交互界面使用的元素信息包括控件及窗口信息、各语言使用的 编码方式;相应地,所述显示单元包括编码方式获取子单元,用于从所述人机交互界面使用的元素信息中获取所述系统 当前语言使用的编码方式;字体选择子单元,用于根据所述编码方式选择一种已创建的对应所述系统当前语 言的字体;显示子单元,用于利用选择的字体显示所述语言配置文件中包含的字符串。优选地,所述显示子单元包括转换子单元,用于获取已加载到内存中的字符串信息,并将需显示的字符串转换 为编码值;计算子单元,用于利用所述编码值计算所述字符串在对应选择的字体的字库中的 偏移量;字模信息获取子单元,用于根据所述偏移量从所述字库中获取对应的字模信息;字模信息显示子单元,用于显示所述字模信息。本发明实施例人机交互界面的多语言实现方法及装置,将对应每种语言的字符串 信息配置为对应该语言的语言配置文件,这样,在需要进行语言切换时,只需导入即加载与 所需使用的语言对应的语言配置文件到内存中,从而提高了其通用性,并方便了用户的使用。


图1是本发明实施例人机交互界面的多语言实现方法的流程图;图2是本发明实施例中语言配置文件的示意图;图3是本发明人机交互界面的多语言实现装置第一实施例的结构示意图;图4是本发明人机交互界面的多语言实现装置第二实施例的结构示意图;图5是本发明人机交互界面的多语言实现装置第三实施例的结构示意图。
具体实施例方式为了使本技术领域的人员更好地理解本发明实施例的方案,下面结合附图和实施 方式对本发明实施例作进一步的详细说明。本发明实施例人机交互界面的多语言实现方法及装置,将对应每种语言的字符串 信息配置为对应该语言的语言配置文件,这样,动态切换不同的语言时,只需导入即加载与 所需使用的语言对应的语言配置文件到内存中,从而提高了其通用性,并方便了用户的使用。如图1所示,是本发明实施例人机交互界面的多语言实现方法的流程图,包括以 下步骤步骤101,获取系统当前语言设置,比如,对于Windows操作系统,可 以通过 API (Application Programming Interface,应用程序编程接口)函数GetSystemDefaultLangID得到系统当前语言设置信息。步骤102,判断所述系统当前状态是否为初始化状态;如果是,则执行步骤103 ;否 则执行步骤104。步骤103,加载所述人机交互界面使用的元素信息到内存中。步骤104,加载与所述系统当前语言设置对应的语言配置文件到内存中,并替换内 存中已保存的字符串信息,所述语言配置文件包括与一种语言对应的字符串信息。步骤105,根据所述人机交互界面使用的元素信息显示所述语言配置文件中包含 的字符串,所述人机交互界面使用的元素信息包括控件及窗口信息、各语言使用的编码方 式等{曰息。在本发明实施例中,与各语言对应的语言配置文件可以预先配置完成,在进行配 置时,首先选择各语言的编码方式,比如,对于法语,指定其编码方式为IS08859-1,对于意 大利语,指定其编码方式为IS08859-9等。然后,根据已选择的该语言的编码方式,将该语 言的字符串信息保存为已定义的本配置文件格式,保存时选择相应的编码方式,如图2所
7J\ o另外,可以将所述人机交互界面使用的元素信息存储在一个单独的文件中,将其 作为基本配置文件。这样,加载所述人机交互界面使用的元素信息时,就可以通过加载所述 基本配置文件来完成这些信息的加载。当然,也可以设定一种或两种语言,比如英文和/或中文,作为所述系统的默认语 言,并将该默认语言对应的字符串信息也存储在所述基本配置文件中。这样,在加载时,可 以有以下几种情况(1)所述系统当前状态为初始化状态如果所述系统当前语言设置是系统默认语言,则只需加载所述基本配置文件中的 所有信息;如果所述系统当前语言设置不是系统默认语言,则首先加载所述基本配置文件中 的人机交互界面使用的元素信息,然后加载与所述系统当前语言设置对应的语言配置文 件。(2)所述系统当前状态为运行状态如果所述系统当前语言设置是系统默认语言,则只需加载所述基本配置文件中对 应该默认语言的字符串信息;如果所述系统当前语言设置不是系统默认语言,则只需加载与所述系统当前语言 设置对应的语言配置文件。系统开机启动时,通常都会调用一个初始化函数,这个函数只有在开机启动时才 会调用,正常运行时是不会调用的,因此,在上述步骤102中,判断系统当前状态时,可以根 据在这个初始化函数中是否需要导入所述基本配置文件来判断所述系统是否在初始化状 态。如果需要导入所述基本配置文件,则可确定所述系统是在初始化状态。当然,如果需要 通过其他方式导入所述人机交互界面使用的元素信息,则可以同样确定所述系统的当前状 态。在系统开机初始化时,将所述基本配置文件中人机交互界面使用的元素信息导入 内存后,从所述基本配置文件中可以获得各语言使用的编码方式,系统根据各语言使用的编码方式分别创建相应的字体信息,所述字体信息包括字体的大小、字体使用的编码方 式、字体所使用的单字节和双字节字库、字库类型(比如,点阵或矢量)、字体编码对应的偏 移量计算方式等一系列用于显示字符的信息。在需要显示系统当前使用的语言,即显示加载到内存中的字符串信息时,可以根 据所述基本配置文件中对应各语言的编码方式,确定当前语言使用的编码方式,并根据确 定的编码方式,选择已创建的字体信息,然后根据该字体信息,完成字符的正确显示。具体 显示过程如下首先,获取已加载到内存中的字符串信息,并将需显示的字符串转换为编码值;利 用所述编码值计算所述字符串在对应选择的字体的字库中的偏移量;然后根据所述偏移量 从所述字库中获取对应的字模信息;并显示所述字模信息。可见,本发明实施例人机交互界面的多语言实现方法,可以实现人机交互界面的 多国语言显示,动态切换语言时只需加载相应的语言配置文件,通用性强。而且,通过文件 方式存储对应各语言的字符串信息,可方便查看各语言字符串,方便增加及删减语言。由于 无需重新启动系统,因而可以大大加快语言切换速度。在应用程序中指定编码方式及所用字库,欧洲国家语言均处于拉丁语系范围内, 因此可以使欧洲国家语言均使用同一个矢量字库,通过编码方式不同来进行偏移量的计算 和字模的提取,有效地解决了因语言多导致的字库过大占用过多存储空间的问题。另外,在本发明实施例中,系统根据各语言使用的编码方式分别创建相应的字体 信息,由于在所述字体信息包括了字库类型信息,从而可以使不同的语言对应不同的类型 的字体,可以不用加载很多个点阵字库(不同语言对应不同的点阵字库),而是通过编码方 式来区分,导入相应的字符,有效地节省了内存空间;而且,使用矢量字体,可以使字符显示 更为美观,且可以缩放字符的大小而不会有锯齿感,解决了使用点阵字体带来的字符显示 锯齿及大小无法控制的局限性。需要说明的是,本发明实施例人机交互界面的多语言实现方法,可以应用于多种 设备及系统中,比如,监控设备、数字硬盘录像机等设备的人机交互界面。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以 通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中, 所述的存储介质,如ROM/RAM、磁碟、光盘等。相应地,本发明实施例还提供一种人机交互界面的多语言实现装置,如图3所示, 是该装置的一种结构示意图。在该实施例中,所述装置包括语言信息获取单元301,用于获取系统当前语言设置,具体如何获取系统当前语言 设置可以根据系统的不同有多种方式,在此不再一一列举;系统状态确定单元302,用于确定所述系统当前状态;加载单元303,用于在所述系统当前状态为初始化状态时,加载所述人机交互界面 使用的元素信息以及与所述系统当前语言设置对应的语言配置文件到内存中,所述语言配 置文件包括与一种语言对应的字符串信息;在所述系统当前状态为运行状态时,加载与所 述系统当前语言设置对应的语言配置文件到内存中,并替换内存中已保存的字符串信息;显示单元304,用于根据所述人机交互界面使用的元素信息显示所述语言配置文件中包含的字符串。在本发明实施例中,可以将所述人机交互界面使用的元素信息存储在一个单独的 文件中,将其作为基本配置文件。这样,加载所述人机交互界面使用的元素信息时,就可以 通过加载所述基本配置文件来完成这些信息的加载。为此,如图4所示的所述装置的第二实施例中,所述装置还包括第一配置单元401,用于将所述人机交互界面使用的元素信息存储在基本配置文 件中。相应地,在该实施例中,所述加载单元303在所述系统当前状态为初始化状态时, 加载所述基本配置文件以及与所述系统当前语言设置对应的语言配置文件到内存中,并替 换内存中已保存的字符串信息;在所述系统当前状态为运行状态时,加载与所述系统当前 语言设置对应的语言配置文件到内存中,以替换内存中已保存的字符串信息。当然,也可以设定一种或两种语言,比如英文和/或中文,作为所述系统的默认语 言,并将该默认语言对应的字符串信息也存储在所述基本配置文件中。这样,在加载时,可 以有以下几种情况(1)所述系统当前状态为初始化状态如果所述系统当前语言设置是系统默认语言,则只需加载所述基本配置文件中的 所有信息;如果所述系统当前语言设置不是系统默认语言,则首先加载所述基本配置文件中 的人机交互界面使用的元素信息,然后加载与所述系统当前语言设置对应的语言配置文 件。(2)所述系统当前状态为运行状态如果所述系统当前语言设置是系统默认语言,则只需加载所述基本配置文件中对 应该默认语言的字符串信息;如果所述系统当前语言设置不是系统默认语言,则只需加载与所述系统当前语言 设置对应的语言配置文件。为此,如图5所示的所述装置的第三实施例中,所述装置还包括第二配置单元501,用于将所述人机交互界面使用的元素信息及所述系统默认语 言对应的字符串信息存储在基本配置文件中。相应地,在该实施例中,所述加载单元303在所述系统当前状态为初始化状态,并 且所述系统当前语言设置是系统默认语言时,加载所述基本配置文件;在所述系统当前状 态为初始化状态,并且所述系统当前语言设置不是系统默认语言时,首先加载所述基本配 置文件中的人机交互界面使用的元素信息,然后加载与所述系统当前语言设置对应的语言 配置文件。需要说明的是,在上述各实施例中,所述人机交互界面使用的元素信息包括控件 及窗口信息、各语言使用的编码方式等信息。如图3所示,所述显示单元304的一种优选结构包括编码方式获取子单元341,用于从所述人机交互界面使用的元素信息中获取所述 系统当前语言使用的编码方式;字体选择子单元342,用于根据所述编码方式选择一种已创建的对应所述系统当前语言的字体;显示子单元343,用于利用选择的字体显示所述语言配置文件中包含的字符串。其中,所述显示子单元343的一种优选结构包括转换子单元,用于获取已加载到内存中的字符串信息,并将需显示的字符串转换为编码值;计算子单元,用于利用所述编码值计算所述字符串在对应选择的字体的字库中的 偏移量;字模信息获取子单元,用于根据所述偏移量从所述字库中获取对应的字模信息;字模信息显示子单元,用于显示所述字模信息。本发明实施例人机交互界面的多语言实现装置,可以实现人机交互界面的多国语 言显示,动态切换语言时只需加载相应的语言配置文件,通用性强。而且,通过文件方式存 储对应各语言的字符串信息,可方便查看各语言字符串,方便增加及删减语言。由于无需重 新启动系统,因而可以大大加快语言切换速度。以上对本发明实施例进行了详细介绍,本文中应用了具体实施方式
对本发明进行 了阐述,以上实施例的说明只是用于帮助理解本发明的方法及设备;同时,对于本领域的 一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所 述,本说明书内容不应理解为对本发明的限制。
权利要求
一种人机交互界面的多语言实现方法,其特征在于,包括获取系统当前语言设置;确定所述系统当前状态;如果所述系统当前状态为初始化状态,则加载所述人机交互界面使用的元素信息以及与所述系统当前语言设置对应的语言配置文件到内存中,并替换内存中已保存的字符串信息,所述语言配置文件包括与一种语言对应的字符串信息;如果所述系统当前状态为运行状态,则加载与所述系统当前语言设置对应的语言配置文件到内存中,并替换内存中已保存的字符串信息;根据所述人机交互界面使用的元素信息显示所述语言配置文件中包含的字符串。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括将所述人机交互界面使 用的元素信息存储在基本配置文件中;所述加载所述人机交互界面使用的元素信息包括加载所述基本配置文件。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括将所述人机交互界面使 用的元素信息及所述系统默认语言对应的字符串信息存储在基本配置文件中;如果所述系统当前状态为初始化状态,则所述加载所述人机交互界面使用的元素信息 以及与所述系统当前语言设置对应的语言配置文件包括如果所述系统当前语言设置是系统默认语言,则加载所述基本配置文件; 如果所述系统当前语言设置不是系统默认语言,则首先加载所述基本配置文件中的人 机交互界面使用的元素信息,然后加载与所述系统当前语言设置对应的语言配置文件。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述人机交互界面使用的元素 信息包括控件及窗口信息、各语言使用的编码方式;所述根据所述人机交互界面使用的元素信息显示所述语言配置文件中包含的字符串 包括从所述人机交互界面使用的元素信息中获取所述系统当前语言使用的编码方式; 根据所述编码方式选择一种已创建的对应所述系统当前语言的字体; 利用选择的字体显示所述语言配置文件中包含的字符串。
5.根据权利要求4所述的方法,其特征在于,所述利用选择的字体显示所述语言配置 文件中包含的字符串包括获取已加载到内存中的字符串信息,并将需显示的字符串转换为编码值; 利用所述编码值计算所述字符串在对应选择的字体的字库中的偏移量; 根据所述偏移量从所述字库中获取对应的字模信息; 显示所述字模信息。
6.一种人机交互界面的多语言实现装置,其特征在于,包括 语言信息获取单元,用于获取系统当前语言设置;系统状态确定单元,用于确定所述系统当前状态;加载单元,用于在所述系统当前状态为初始化状态时,加载所述人机交互界面使用的 元素信息以及与所述系统当前语言设置对应的语言配置文件到内存中,并替换内存中已保 存的字符串信息,所述语言配置文件包括与一种语言对应的字符串信息;在所述系统当前 状态为运行状态时,加载与所述系统当前语言设置对应的语言配置文件到内存中,并替换内存中已保存的字符串信息;显示单元,用于根据所述人机交互界面使用的元素信息显示所述语言配置文件中包含 的字符串。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括第一配置单元,用于将所述人机交互界面使用的元素信息存储在基本配置文件中; 所述加载单元在所述系统当前状态为初始化状态时,加载所述基本配置文件以及与所 述系统当前语言设置对应的语言配置文件到内存中,并替换内存中已保存的字符串信息。
8.根据权利要求1所述的装置,其特征在于,所述装置还包括第二配置单元,用于将所述人机交互界面使用的元素信息及所述系统默认语言对应的 字符串信息存储在基本配置文件中;所述加载单元在所述系统当前状态为初始化状态,并且所述系统当前语言设置是系统 默认语言时,加载所述基本配置文件;在所述系统当前状态为初始化状态,并且所述系统当 前语言设置不是系统默认语言时,首先加载所述基本配置文件中的人机交互界面使用的元 素信息,然后加载与所述系统当前语言设置对应的语言配置文件。
9.根据权利要求6至8任一项所述的装置,其特征在于,所述人机交互界面使用的元素 信息包括控件及窗口信息、各语言使用的编码方式;所述显示单元包括编码方式获取子单元,用于从所述人机交互界面使用的元素信息中获取所述系统当前 语言使用的编码方式;字体选择子单元,用于根据所述编码方式选择一种已创建的对应所述系统当前语言的 字体;显示子单元,用于利用选择的字体显示所述语言配置文件中包含的字符串。
10.根据权利要求9所述的装置,其特征在于,所述显示子单元包括转换子单元,用于获取已加载到内存中的字符串信息,并将需显示的字符串转换为编 码值;计算子单元,用于利用所述编码值计算所述字符串在对应选择的字体的字库中的偏移量;字模信息获取子单元,用于根据所述偏移量从所述字库中获取对应的字模信息; 字模信息显示子单元,用于显示所述字模信息。
全文摘要
本发明涉及监控技术领域,公开了一种人机交互界面的多语言实现方法及装置,所述方法包括获取系统当前语言设置;确定所述系统当前状态;如果所述系统当前状态为初始化状态,则加载所述人机交互界面使用的元素信息以及与所述系统当前语言设置对应的语言配置文件到内存中,并替换内存中已保存的字符串信息,所述语言配置文件包括与一种语言对应的字符串信息;如果所述系统当前状态为运行状态,则加载与所述系统当前语言设置对应的语言配置文件到内存中,并替换内存中已保存的字符串信息;根据所述人机交互界面使用的元素信息显示所述语言配置文件中包含的字符串。利用本发明,可以实现人机交互界面的多语言动态切换,提高其通用性,方便用户的使用。
文档编号G06F17/28GK101876907SQ20101017680
公开日2010年11月3日 申请日期2010年5月18日 优先权日2010年5月18日
发明者孙承华, 李韩英, 胡扬忠, 邬伟琪, 陈军科 申请人:杭州海康威视数字技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1