控件字串检查方法、装置、计算机设备和存储介质与流程

文档序号:22879232发布日期:2020-11-10 17:36阅读:132来源:国知局
控件字串检查方法、装置、计算机设备和存储介质与流程

本申请涉及计算机技术领域,特别是涉及一种控件字串检查方法、装置、计算机设备和存储介质。



背景技术:

控件是用户界面(userinterface,ui)上的一切元素,例如窗口标题、标签(label)、文本框、列表框、下拉列表框、组合下拉列表框、复选框、单选框、按钮等等。在软件开发过程中,部分用户界面的控件的大小通常受限于用户界面的面积和布局。例如,控件中文本内容过长,将会导致文本超出控件的文本显示范围而造成的文本截断或互相遮盖的问题。参考图1a圆圈内所示的正常用户界面和图1b圆圈内所示的超限的用户界面。

传统技术中,通常在软件开发中就会安排对这类问题进行检测的质量保证流程。但是,当对已开发成熟的软件进行本地化制作时,例如将原始英文版本的软件制作成对应的中文版时,通常并不会对软件从头开始开发,而是采用翻译原始版本的字串的方式。由于语言特性,译文可能会存在长于原文的情况。因此,当译文导入到软件界面的控件中时,同样会产生文本截断或互相遮盖的问题。针对此问题,现有通常在本地化制作的测试阶段来检测该问题,如测试确定存在超限情况,则将退回给译员进行修改调整。例如译员可以通过减少文本内容的字符数量等来避免这类问题的产生。

然而,由于译员无法获取含有该文本内容的实际软件的用户界面,以及不同语言的显示格式或显示效果可能不同,使得译员便无法准确评估文本内容所占实际的空间大小,导致通常都需要在多个检测-更改回合之后才能解决问题,降低了效率。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种能够提高效率的控件字串检查方法、装置、计算机设备和存储介质。

一种控件字串检查方法,其特征在于,所述方法包括:

获取待检字串的对应ui控件的数据;

根据所述ui控件的数据,生成第一div元素和第二div元素,所述第一div元素的宽度属性和高度属性与所述ui控件相同,所述第二div元素与所述第一div元素的宽度属性相同、高度属性为自适应于内部填入的文本行数;

将所述待检字串填入所述第二div元素,解析所述第一div元素和第二div元素,以呈现所述第一div元素对应的第一图像和所述第二div元素对应的第二图像,其中,所述第一图像显示于所述第二图像之上、且与所述第二图像具有相同显示坐标,若所述待检字串长度超出所述ui控件的限制,则所述第二图像的部分区域显示于所述第一图像的显示区域之外。

在其中一个实施例中,所述获取待检字串的对应ui控件的数据,包括:

获取所述待检字串的字串标识;

根据所述字串标识从控件数据记录表中获取所述ui控件的数据,其中,所述控件数据记录表中记录有预设的所述字串标识与所述控件的数据的对应关系。在其中一个实施例中,所述第一div元素与所述第二div元素的显示颜色属性不同,所述第二div元素的显示颜色属性为预设警示颜色。

在其中一个实施例中,解析并显示所述第一div元素和第二div元素,包括:

为所述第一div元素和所述第二div元素的左上角或右上角配置相同显示坐标;

解析所述第一div元素和所述第二div元素的显示坐标,以使所述第一图像和所述第二图像的上边缘、左边缘和右边缘重合。

在其中一个实施例中,所述方法还包括:

生成与所述第一div元素大小相同的第三div元素;

将所述待检字串填入所述第三div元素;

解析所述第三div元素,以呈现所述第三div元素对应的第三图像,其中,所述第三图像显示于所述第一图像之上、且与所述第一图像具有相同显示坐标。在其中一个实施例中,若所述ui控件的高度属性由指定行数确定,则设置所述第一div元素的高度属性为自适应于内部填入的文本行数,并在其内部填入所述指定行数的空行,以使所述第一div元素的高度属性与所述ui控件相同。

在其中一个实施例中,若所述ui控件的宽度属性由指定字符数确定,则设置所述第一div元素的宽度属性为自适应于内部填入的字符数,并在其内部填入所述指定字符数的占位字符,以使所述第一div元素的宽度属性与所述ui控件相同。

一种控件字串检查装置,所述装置包括:

获取模块,用于获取待检字串的对应ui控件的数据;生成模块,用于基于所述ui控件数据,生成第一div元素和第二div元素,所述第一div元素的宽度属性和高度属性与所述ui控件相同,所述第二div元素与所述第一div元素的宽度属性相同、高度属性为自适应于内部填入的文本行数;

解析显示模块,用于将所述待检字串填入所述第二div元素,解析所述第一div元素和第二div元素,以呈现所述第一div元素对应的第一图像和所述第二div元素对应的第二图像;其中,所述第一图像显示于所述第二图像之上、且与所述第二图像具有相同显示坐标,若所述待检字串长度超出所述ui控件的限制,则所述第二图像的部分区域显示于所述第一图像的显示区域之外。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现任一项所述的控件字串检查方法的步骤。

上述控件字串检查方法、装置、计算机设备和存储介质,获取到待检字串对应ui控件的数据之后,基于该ui控件的数据生成第一div元素和第二元素,进而将待检字串放入第二div元素中后,解析第一div元素和第二div元素进行图像显示。该方法通过利用div元素模拟界面中的控件显示待检字串,不仅考虑到控件实际情况,并且将第一div元素的宽高属性与ui控件相同,第二div元素与第一div元素宽度属性相同、高度属性为自适应于内部填入的文本行数,以及通过第一div元素的第一图像显示于第二div元素的第二图像之上,能过通过显示结果直接确定待检字串的超限情况,进而便于译员根据实际显示的效果和超限情况直接修改,将原本于测试阶段检测是否超限的任务提前到了译员的翻译阶段,无需经过多个检测-更改回合,减少返工从而提高效率。

附图说明

图1a为正常显示的控件的界面示意图;

图1b为超限显示的控件的界面示意图;

图2为一个实施例中控件字串检查方法的应用环境图;

图3为一个实施例中控件字串检查方法的流程示意图;

图4为一个实施例中获取待检字串的对应ui控件的数据步骤的流程示意图;

图5为一个实施例中控件字串检查方法装置的结构框图;

图6为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的控件字串检查方法,可以应用于如图2所示的应用环境中。所述应用环境涉及终端102和服务器104,其中,终端102通过网络与服务器104通过网络进行通信。当终端102获取到的待检字串之后,可以由终端102根据待检字串单独实现上述控件字串检查方法。也可以由终端102将待检字串发送给通信的服务器104,由服务器104根据待检字串实现上述控件字串检查方法。

具体地,以终端102为例,当终端102接收到译员上传显示于控件的待检字串时,终端102获取待检字串的对应ui控件的数据;终端102根据ui控件的数据,生成第一div元素和第二div元素,第一div元素的宽度属性和高属性与ui控件相同,第二div元素与第一div元素的宽度属性相同、高度属性为自适应于内部填入的文本行数。终端102将待检字串填入第二div元素,解析第一div元素和第二div元素,以呈现第一div元素对应的第一图像和第二div元素对应的第二图像,其中,第一图像显示于所述第二图像之上、且与第二图像具有相同显示坐标,若待检字串长度超出所述ui控件的限制,则第二图像的部分区域显示于所述第一图像的显示区域之外。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。

在一个实施例中,如图3所示,提供了一种控件字串检查方法,以该方法应用于图2中的终端为例进行说明,包括以下步骤:

步骤s302,获取待检字串的对应ui控件的数据。

其中,待检字串是指将由ui控件呈现的,当前需要检查是否超出控件的显示范围的文本内容。例如,假设控件中的文本内容为“xxx”,则“xxx”即为待检字串。ui控件的数据包括ui控件的宽度属性和高度属性,宽度属性包括宽度值和宽度值的显示单位,高度属性包括高度值和高度值的显示单位。ui控件宽度值和高度值的显示单位包括像素、行数和字符。

具体地,当译员通过终端的输入装置,例如键盘、鼠标、触控屏等装置将待检字串输入至终端的用户界面中的ui控件时,触发控件字串检查任务。终端获取到该ui控件中译员输入的待检字串以及该ui控件的数据。例如,在对软件进行本地化制作时,当译员通过输入装置操作提交对原始版本中各字串的翻译文本之后,触发控件字串检查任务。终端获取到的翻译人员输入的翻译文本即为待检字串。

步骤s304,根据ui控件的数据,生成第一div元素和第二div元素,第一div元素的宽度属性和高度属性与ui控件相同,第二div元素与第一div元素的宽度属性相同、高度属性为自适应于内部填入的文本行数。其中,div元素是层叠样式表中的定位技术,全称为division(划分),有时可称其为图层。div元素是用来为html(hypertextmarkuplanguage,超级文本标记语言)文档内大块的内容提供结构和背景的元素。

具体地,当终端获取到待检字串对应ui控件的数据之后,创建两个div元素,分别为第一div元素和第二div元素。然后,终端根据待检字串对应的控件的数据(控件的宽度属性和高度属性),设置第一div元素和第二div元素的宽度属性和高度属性。第一div元素的宽度属性和高度属性与ui控件的宽度属性和高度属性相同,即将第一div元素的宽度值以及对应的显示单位设置为与ui控件的宽度以及对应的显示单位相同,以及同时将第一div元素的高度值以及对应的显示单位设置为与ui控件的高度值以及对应的显示单位相同。例如,当ui控件的宽度和高度的显示单位均是像素时,那么第一div元素的宽度和高度的显示单位同样是像素值。可以理解为,第一div元素为与ui控件宽度属性和高度属性完全相同的显示框,可以称之为固定占位层。第二div元素的宽度属性则设置为与第一div元素的宽度属性相同,高度属性设置为自适应文本,即自适应填入第二div元素内部的文本行数。由于填入第二div元素内部的文本为待检字串,所以第二div元素可以称之为实际数据层。

步骤s306,将待检字串填入第二div元素,解析第一div元素和第二div元素,以呈现第一div元素对应的第一图像和第二div元素对应的第二图像,其中,第一图像显示于第二图像之上、且与第二图像具有相同显示坐标,若待检字串长度超出ui控件的限制,则第二图像的部分区域显示于第一图像的显示区域之外。

具体地,当终端生成第一div元素和第二div元素之后,将待检字串放入第二div元素。然后,解析第一div元素和第二div元素,得到第一div元素对应的第一图像和第二div元素对应的第二图像。将第一图像与第二图像显示在同一显示坐标且第一图像显示于第二图像之上。可以理解为是,第二图像和第二图像重叠,第一图像覆盖在第二图像上进行显示。由于第一div元素的宽度属性和高度属性是根据待检字串的对应ui控件的宽度属性和高度属性设置而成的。所以第一div元素相当于与ui控件拥有相同且固定不变的文本显示区域。而第二div元素是只有宽度属性与第一div元素相同,高度为自适应文本,所以第二div元素的高度会依据填入的待检字串而改变。因此,当终端将待检字串放入第二div元素之后对第一div元素和第二div元素进行解析,按照相同显示坐标重叠显示第一图像和第二图像时,若待检字串长度超出ui控件的限制,则第二图像的部分区域会显示于第一图像的显示区域之外。因此,终端可以确定待检字串超出了ui控件的宽高所限制的显示范围,而超出的部分字符就是显示于第一图像的显示区域之外的第二图像所包括的字符。反之,若待检字串的长度不超出ui控件的限制,则第二图像会完全被第一图像遮挡显示,第一图像显示区域之外是无法看到第二图像中的待检字串的。因此,终端可以确定待检字串未超出ui控件的宽高所限制的显示范围。

在一个实施例中,第一div元素与第二div元素的显示颜色属性不同,第二元素的显示颜色属性为预设警示颜色。

其中,第一div元素与第二div元素的显示颜色属性不同可以理解为第一div元素与第二div元素的文本背景色或文本前景色不相同。预设警示颜色可以是任意一种颜色,本实施例优选红色。具体地,通过将第一div元素与第二div元素的显示颜色属性设置为不同,即使第一div元素中填入了内容,也可以直观通过显示的显示颜色分辨出填入第二div元素中的待检字串是否超出ui控件限值。

在一个实施例中,解析并显示第一div元素和第二div元素,包括:为第一div元素和第二div元素的左上角或右上角配置相同显示坐标;解析第一div元素和第二div元素的显示坐标,以使第一图像和第二图像的上边缘、左边缘和右边缘重合。

具体地,由于第二div元素的高度属性自适应文本,所以左下角和右下角的坐标会变动。因此为了保证解析第一div元素和第二div元素以第一图像和第二图像能够重叠显示在统一显示坐标上,可以将第一div元素和第二div元素的左上角或右上角设置为相同的显示坐标。使得第一div元素和第二div元素以第一图像和第二图像呈现时,能够以左上角或右上角为相同的显示坐标重叠进行显示,便于直观显示出超出第一图像显示区域之外的第二图像,从而确定待检字串是否超出ui控件的限制范围。

上述控件字串检查方法,获取到待检字串对应ui控件的数据之后,基于该ui控件的数据生成第一div元素和第二元素,进而将待检字串放入第二div元素中后,解析第一div元素和第二div元素进行图像显示。该方法通过利用div元素模拟界面中的控件显示待检字串,不仅考虑到控件实际情况,且将第一div元素的宽高属性设置与ui控件相同,第二div元素与第一div元素宽度属性相同、高度属性为自适应于内部填入的文本行数,以及通过第一div元素的第一图像显示于第二div元素的第二图像之上,能够通过显示直接确定待检字串的超限情况,进而便于译员根据实际显示的效果和超限情况直接修改,将原本于测试阶段检测是否超限的任务提前到了译员的翻译阶段,无需经过多个检测-更改回合,减少返工从而提高效率。

在一个实施例中,如图4所示,步骤s304包括:

步骤s402,获取待检字串的字串标识。

其中,字串标识是用于唯一表示待检字串的标识,可以是由编号、普通字符、特殊字符中任意一中或多种组成的不限制位数的字符串。字串标识可以是待检字串上传到终端之前自身已经携带有的字串标识,也可以是终端获取到待检字串时为其配置的。

步骤s404,根据字串标识从控件数据记录表中获取ui控件的数据,其中,控件数据记录表中记录有预设的字串标识与ui控件的数据的对应关系。

具体地,在触发控件字串检查任务之前,预先根据待检字串的字串标识、待检字串对应的ui控件的数据生成控件数据记录表。由于待检字串与ui控件对应、待检字串又与字串标识关联,因此可以通过控件数据记录表预先配置记录对应于同一待检字串的字串标识与ui控件的数据的对应关系。也可以理解为,控件数据记录表中包括字串标识以及与该字串标识对应的ui控件数据。当触发控件字串检查任务,获取待检字串对应的ui控件的数据时,获取为该待检字串预设的字串标识。然后,根据字串标识从生成的控件数据记录表中查询与该字串标识对应的ui控件的数据,得到待检字串对应ui控件的数据。例如,待检字串对应的ui控件为控件1,那么该待检字串的字串标识对应的ui控件的数据是ui控件1的数据。

在本实施例中,通过字串标识获取到待检字串对应ui控件的数据,保证获取ui控件的数据的准确性。

在一个实施例中,提供另一种控件字串检查方法,在步骤s206之后,还包括:生成与第一div元素大小相同的第三div元素;将待检字串填入第三div元素;解析第三div元素,以呈现第三div元素对应的第三图像,其中,第三图像显示于第一图像之上、且与第一图像具有相同显示坐标。

具体地,第三div元素的填充内容为待检字串,是用于确保待检字串显示连贯的div层元素,第三div元素可以称之为友好显示层。友好显示层的宽度属性和高度属性与固定占位层(第一div元素)的宽度属性和高度属性相同,即与待检字串对应ui控件的宽度属性和高度属性相同。填充文本与实际数据层(第二div元素)的填充文本相同,即与实际数据层有一样填入待检字串。并且,友好显示层的显示坐标与固定占位层的显示坐标相同,使得友好显示层重叠显示在固定占位层之上,最终的重叠关系为实际数据层位于最底层,友好显示层位于最上层,固定占位层位于中间层。可以理解为,友好显示层除了填充内容与固定占位层不相同之外,其他所有的属性均可以相同。

应当理解的是,由于实际数据层位于固定占位层和友好显示层的之下,且固定占位层的位于友好显示层之下。所以,在待检字串正常不超限的情况下,实际数据层会被固定占位层和友好显示层遮挡住,实际数据层中的待检字串是不会显示出来的,译员可以通过最上层的友好显示层查看完整的待检字串。而超限的情况下,实际数据层超出的文本部分就会露出在友好显示层和固定占位层之外,从而显示出来。而由于实际数据层的文本背景色与其他两层的不同,所以译员是可以通过显示结果直观看到超限的部分。而实际数据层中未超出的文本部分与友好显示层的文本内容一致,保证了显示内容的连贯。可以理解为,由于友好显示层处于最上层,且文本显示范围与固定占位层一样,是与ui控件的文本显示范围相同的。所以,友好显示层的填充内容为待检字串时,其只能显示出文本显示范围内的待检字串的字符数,就是只能显示出未超限的内容。而实际数据层文本显示范围中的宽度是与ui控件保持一致,但是高度设置的是自适应文本。所以,放入实际数据层中的待检字串是会被全部显示出来的。然而由于实际数据层的宽度与友好显示层和固定占位层保持一致,未超出显示范围的内容就会被友好显示层和固定占位层遮挡,只有超限的内容从友好显示层和固定占位层之外显示出来。由此,显示结果中友好显示层显示出未超出显示范围的内容,实际数据层显示出超限的部分,两者一结合起来就是完整的待检字串。

在本实施例中,通过包括友好显示层的三层的叠层div,确定超限的同时可以直观确定超限的部分。而若只需要确定待检字串是否超限,而无需确定超限的字符,层叠div元素可以去掉友好显示层,只包括固定占位层和实际数据层即可。

在一个实施例中,为了防止最终显示结果中显示出的待检字串会有两种不同的颜色而影响视觉效果,友好显示层和实际数据层只通过选用不同的文本背景色而不选用不同的文本前景色。

本实施例中,即使填入实际数据层中的待检字串被固定占位层所遮挡,也能通过友好显示层直观显示出被遮挡的待检字串,通过友好显示层确保了待检字串的显示连贯性,提高视觉效果。

在一个实施例中,若ui控件的高度属性由指定行数确定,则设置第一div元素的高度属性为自适应于内部填入的文本行数,并在其内部填入所述指定行数的空行,以使第一div元素的高度属性与ui控件相同。

其中,ui控件的高度属性由指定行数确定是指ui控件的高度值的显示单位是行数,且高度值与行数的数量相同。例如,指定行数为3行,则高度值为3。

具体地,若未特别指定说明的显示单位,显示单位一般为像素。因此,若ui控件的高度属性由指定行数确定,可以确定ui控件的宽度和高度的显示单位为像素*行数。因此,终端需要根据指定行数的占位文本确定第一div元素的高度属性。终端通过将指定行数的占位文本填充至第一div元素中,第一div元素的高度值由所填充的指定行数的占位文本的大小决定。本实施例中,指定行数的占位文本是预先根据控件的高度配置的指定行数的空行。例如,当ui控件的高度为5行时,那么配置的占位文本为5行空行。当指定行数的占位文本填入第一div元素内部之后,第一div元素得到了与ui控件的高度属性相同的高度属性。

在另一个实施例中,若ui控件的宽度属性由指定字符数确定,则设置第一div元素的宽度属性为自适应于内部填入的字符数,并在其内部填入指定字符数的占位字符,以使第一div元素的宽度属性与ui控件相同。

其中,ui控件的宽度属性由指定字符确定是指ui控件的高度值的显示单位是字符,且高度值与指定的字符数的数量相同。

具体地,同样的,若未特别指定说明的显示单位,显示单位一般为像素。因此,若ui控件的宽度属性由指定字符确定,可以确定ui控件的宽度和高度的显示单位为字符*像素。因此,终端通过将占位文本填充至第一div元素中,第一div元素的宽度根据填充的占位文本的大小改变。本实施例中,占位文本是预先根据控件的宽度配置的指定字符数的占位字符。例如,当控件的宽度为5个字符时,那么配置在该检查模式中的占位文本是包括5个字符的文本行。当指定字符数的占位字符填入第一div元素内部之后,第一div元素得到了与ui控件的宽度属性相同的宽度属性。

在另一个实施例中,若ui控件的宽度属性和由指定字符数确定以及高度属性由指定行数确定,即ui控件的宽度和高度的显示单位为字符*行数。那么,可以直接在第一div元素中填入指定行数和指定行字符数的文本行。例如,当ui控件的宽度为5个字符、高度为5行时,那么填入的占位文本是包括5行5个字符的文本行,第一div元素得到与ui控件相同的宽度属性和高度属性。

在一个实施例中,ui控件的数据还包括格式信息,格式信息包括字体、字号、行高/行间距。具体地,当上述任一实施例根据ui控件的数据生成div元素,包括第一div元素、第二div元素、第三div元素中的任一项或多项的宽度属性、高度属性和显示颜色属性时,同时获取ui控件的数据中的格式信息。根据该格式信息设置div元素的字体、字号、行高/行间距等格式。本实施例中,通过格式信息确保显示于div层元素的中的内容与实际显示于ui控件中的内容的字体格式相同,确保超限的准确性。

在一个实施例中,以ui控件的宽度和高度的不同显示单位预先配置出四种不同的检查模式,分别包括宽度和高度的显示单位均为像素值时的第一检查模式(像素*像素检查模式)、宽度的显示单位为像素值、高度的显示单位为行数时的第二检查模式(像素*行数检查模式)、宽度的显示单位为字符、高度的显示单位为像素时的为第三检查模式(字符数*像素检查模式)、以及宽度的显示单位为字符、高度的显示单位为大于1的行数时的第四检查模式(字符数*行数检查模式)。以该四种检查模式为例,以上述控件字串检查方法应用于在制作本地化软件为例,对上述控件字串检查方法进行详细说明,包括以下步骤:

步骤1,准备数据。终端获取译员输入的对原始版本的软件界面上各控件对应的字串的翻译文本,得到待检字串(翻译文本)。例如,原始版本的软件界面上某一控件的字串为“hello”,那么制作对应中文版本的本地软件时,译员输入的待检字串即为“你好”。然后,终端获取待检字串“你好”对应的ui控件的宽度属性、高度属性、显示颜色属性和格式信息,得到ui控件的数据。将待检字串的字串标识与ui控件的数据关联存储至控件数据记录表中。其中,格式信息包括字体、字号、行高/行间距。宽度和高度的显示单位包括像素值、行数值和字符数。一般来讲,宽度的显示单位通常为像素值或字符数,高度的显示单位通常为像素值和行数值。

步骤2,触发检查。当译员翻译完成,在软件界面上点击提交译文时,触发控件字串检查任务。

步骤3,确定检查模式。终端根据待检字串的字串标识,从控件数据记录表中获取字串标识对应的宽度属性、高度属性、显示颜色属性和格式信息。根据宽度属性、高度属性中的显示单位确定待检字串对应的检查模式。

具体地,当宽度属性、高度属性中的宽度和高度的显示单位均为像素值时,确定待检字串的检查模式为第一检查模式(像素*像素检查模式)。

当宽度属性、高度属性中的宽度的显示单位为像素值、高度的显示单位为行数值时,确定待检字串的检查模式为第二检查模式(像素*行数检查模式)。

当宽度属性、高度属性中的宽度的显示单位为字符数、高度的显示单位像素值时,确定待检字串的检查模式为第三检查模式(字符数*像素检查模式)。

当宽度属性、高度属性中的宽度的显示单位为字符数、高度的显示单位为大于1的行数值时,确定待检字串的检查模式为第四检查模式(字符数*行数检查模式)。

步骤4,根据检查模式开始检查。

以三层div元素为例,三层div元素的显示位置从下到上分别是a实际数据层(第二div元素)、b固定占位层(第一div元素)和c友好显示层(第三div元素)。

首先,根据获取的格式信息对这三个层div元素设置格式(包括字体、字号、行高/行间距)。然后,根据检查模式设置这三层的宽度属性、高度属性、显示颜色竖向和填充文本。

①第一检查模式(像素*像素):

a实际数据层:宽度属性与b相同,为ui控件的宽度像素值,高度为自适应样本(自适应于填充至实际数据层的待检字串)。显示颜色优选红色,与b、c层的背景色不同即可。填充文本为待检字串。

b固定占位层:宽度为ui控件的宽度像素值,高度为ui控件的高度像素值。背景色优选默认色,与a层不同即可。填充的占位文本为空,无填充。

c友好显示层:与b等宽等高、文本背景色可以与b相同,优选默认色,与a层不同即可。填充文本为待检字串。

②第二检查模式(像素*行数)。

a实际数据层:宽度属性与b相同,为ui控件的宽度像素值,高度为自适应样本(自适应于填充至实际数据层的待检字串)。文本背景色可以是将背景色设置为红色,与b、c层的背景色不同即可。填充文本为待检字串。

b固定占位层:宽度为ui控件的宽度像素值,高度为自适应样本(自适应于填充至固定占位层的占位文本)。文本背景色可以是将背景色优选默认色,与a层不同即可。占位文本为指定行数的空行。

c友好显示层:与b等宽等高、文本背景色可以与b相同,优选默认色,与a层不同即可。填充文本为待检字串。

③第三检查模式(字符数*像素)

a实际数据层:宽度属性与b相同,高度为自适应样本(自适应于填充至实际数据层的待检字串)。文本背景色可以是将背景色优选红色,与b、c层的背景色不同即可。填充文本为待检字串。

b固定占位层:宽度为自适应样本(自适应于填充至固定占位层的占位文本),高度为ui控件的高度像素值。文本背景色可以是将背景色优选默认色,与a层不同即可。占位文本为指定字符数的预设字符a。

c友好显示层:与b等宽等高、文本背景色可以与b相同,优选默认色,与a层不同即可。填充文本为待检字串。

④第四检查模式(字符数*行数)

a实际数据层:宽度属性与b相同,高度为自适应样本(自适应于填充至实际数据层的待检字串)。背景色优选红色,与b、c层的背景色不同即可。填充文本为待检字串。

b固定占位层:宽度为自适应样本(自适应与填充至固定占位层的占位文本),高度为自适应样本(自适应与填充至固定占位层的占位文本)。文本背景色可以是将背景色优选默认色,与a层不同即可。占位文本为指定行数的文本行,且每行填充指定字符数的预设字符a。

c友好显示层:与b等宽等高、文本背景色可以与b相同,优选默认色,与a层不同即可。填充文本为待检字串。

然后,解析三个div元素以第一图像、第二图像以及第三图像呈现,正常情况下,由于a的位置位于b和c下层,所以显示结果中a是会被遮挡住,不会显示出其红色背景的。并且,由于c和a的内容一致,显示结果是会显示c层的内容的,所以翻译人员可以通过最上层的c看到翻译文本。而若发生超出显示范围的情况,a超出的部分会显示在b和c层之外。在显示结果上,由于a为与b和c的不同文本背景色(背景色不一样,a为红色,bc为默认),可以直观确定超出范围的待检字串的字符数量。而未超出的待检字串的字符与c内容一致,显示结果上保证了待检字串的连贯。

应该理解的是,虽然图3-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3-4中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图5所示,提供了一种控件字串检查装置,包括:获取模块502、生成模块504和解析显示模块506,其中:

获取模块502,用于获取待检字串的对应ui控件的数据。

生成模块504,用于根据ui控件的数据,生成第一div元素和第二div元素,第一div元素的宽度属性和高度属性与ui控件相同,第二div元素与第一div元素的宽度属性相同、高度属性为自适应于内部填入的文本行数。

解析显示模块506,用于将待检字串填入第二div元素,解析第一div元素和第二div元素,以呈现第一div元素对应的第一图像和第二div元素对应的第二图像,其中,第一图像显示于第二图像之上、且与第二图像具有相同显示坐标,若待检字串长度超出ui控件的限制,则第二图像的部分区域显示于第一图像的显示区域之外。

在一个实施例中,获取模块502还用于获取待检字串的字串标识;根据字串标识从控件数据记录表中获取ui控件的数据,其中,控件数据记录表中记录有预设的字串标识与控件的数据的对应关系。

在一个实施例中,生成模块504还用于这只第一div元素与第二div元素的显示颜色属性不同,第二div元素的显示颜色属性为预设警示颜色。

在一个实施例中,生成模块504还用于为第一div元素和第二div元素的左上角或右上角配置相同显示坐标;解析第一div元素和第二div元素的显示坐标,以使第一图像和第二图像的上边缘、左边缘和右边缘重合。

在一个实施例中,生成模块504还用于生成与第一div元素大小相同的第三div元素;将待检字串填入第三div元素;解析显示模块506还用于解析第三div元素,以呈现第三div元素对应的第三图像,其中,第三图像显示于第一图像之上、且与第一图像具有相同显示坐标。

在一个实施例中,生成模块504还用于若ui控件的高度属性由指定行数确定,则设置第一div元素的高度属性为自适应于内部填入的文本行数,并在其内部填入所述指定行数的空行,以使第一div元素的高度属性与ui控件相同。

在一个实施例中,生成模块504还用于若ui控件的宽度属性由指定字符数确定,则设置第一div元素的宽度属性为自适应于内部填入的字符数,并在其内部填入指定字符数的占位字符,以使第一div元素的宽度属性与ui控件相同。

关于控件字串检查装置的具体限定可以参见上文中对于控件字串检查方法的限定,在此不再赘述。上述控件字串检查装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、运营商网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种控件字串检查方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:

获取待检字串的对应ui控件的数据;

根据ui控件的数据,生成第一div元素和第二div元素,第一div元素的宽度属性和高度属性与ui控件相同,第二div元素与第一div元素的宽度属性相同、高度属性为自适应于内部填入的文本行数;

将待检字串填入第二div元素,解析第一div元素和第二div元素,以呈现第一div元素对应的第一图像和第二div元素对应的第二图像,其中,第一图像显示于第二图像之上、且与第二图像具有相同显示坐标,若待检字串长度超出ui控件的限制,则第二图像的部分区域显示于第一图像的显示区域之外。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

获取待检字串的字串标识;

根据字串标识从控件数据记录表中获取ui控件的数据,其中,控件数据记录表中记录有预设的字串标识与控件的数据的对应关系。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:第一div元素与第二div元素的显示颜色属性不同,第二div元素的显示颜色属性为预设警示颜色。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

为第一div元素和第二div元素的左上角或右上角配置相同显示坐标;

解析第一div元素和第二div元素的显示坐标,以使第一图像和第二图像的上边缘、左边缘和右边缘重合。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

生成与第一div元素大小相同的第三div元素;

将待检字串填入所述第三div元素;

解析第三div元素,以呈现第三div元素对应的第三图像,其中,第三图像显示于第一图像之上、且与第一图像具有相同显示坐标。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:若ui控件的高度属性由指定行数确定,则设置第一div元素的高度属性为自适应于内部填入的文本行数,并在其内部填入所述指定行数的空行,以使第一div元素的高度属性与ui控件相同。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:若ui控件的宽度属性由指定字符数确定,则设置第一div元素的宽度属性为自适应于内部填入的字符数,并在其内部填入指定字符数的占位字符,以使第一div元素的宽度属性与ui控件相同。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

获取待检字串的对应ui控件的数据;

根据ui控件的数据,生成第一div元素和第二div元素,第一div元素的宽度属性和高度属性与ui控件相同,第二div元素与第一div元素的宽度属性相同、高度属性为自适应于内部填入的文本行数;

将待检字串填入第二div元素,解析第一div元素和第二div元素,以呈现第一div元素对应的第一图像和第二div元素对应的第二图像,其中,第一图像显示于第二图像之上、且与第二图像具有相同显示坐标,若待检字串长度超出ui控件的限制,则第二图像的部分区域显示于第一图像的显示区域之外。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

获取待检字串的字串标识;

根据字串标识从控件数据记录表中获取ui控件的数据,其中,控件数据记录表中记录有预设的字串标识与控件的数据的对应关系。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:第一div元素与第二div元素的显示颜色属性不同,第二div元素的显示颜色属性为预设警示颜色。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

为第一div元素和第二div元素的左上角或右上角配置相同显示坐标;

解析第一div元素和第二div元素的显示坐标,以使第一图像和第二图像的上边缘、左边缘和右边缘重合。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

生成与第一div元素大小相同的第三div元素;

将待检字串填入所述第三div元素;

解析第三div元素,以呈现第三div元素对应的第三图像,其中,第三图像显示于第一图像之上、且与第一图像具有相同显示坐标。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:若ui控件的高度属性由指定行数确定,则设置第一div元素的高度属性为自适应于内部填入的文本行数,并在其内部填入所述指定行数的空行,以使第一div元素的高度属性与ui控件相同。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:若ui控件的宽度属性由指定字符数确定,则设置第一div元素的宽度属性为自适应于内部填入的字符数,并在其内部填入指定字符数的占位字符,以使第一div元素的宽度属性与ui控件相同。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-onlymemory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(randomaccessmemory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(staticrandomaccessmemory,sram)或动态随机存取存储器(dynamicrandomaccessmemory,dram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1