CN104133811A - 文本处理方法及移动终端 - Google Patents

文本处理方法及移动终端 Download PDF

Info

Publication number
CN104133811A
CN104133811A CN201310159473.1A CN201310159473A CN104133811A CN 104133811 A CN104133811 A CN 104133811A CN 201310159473 A CN201310159473 A CN 201310159473A CN 104133811 A CN104133811 A CN 104133811A
Authority
CN
China
Prior art keywords
text fragment
critical state
line feed
mobile terminal
text
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201310159473.1A
Other languages
English (en)
Other versions
CN104133811B (zh
Inventor
潘泰燊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201310159473.1A priority Critical patent/CN104133811B/zh
Priority to PCT/CN2013/088943 priority patent/WO2014176903A1/zh
Publication of CN104133811A publication Critical patent/CN104133811A/zh
Priority to US14/811,042 priority patent/US20150331837A1/en
Application granted granted Critical
Publication of CN104133811B publication Critical patent/CN104133811B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/117Tagging; Marking up; Designating a block; Setting of attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • G06F40/154Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Document Processing Apparatus (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明涉及一种文本处理方法及移动终端,其方法包括:检测移动终端的文本段落是否存在换行临界态;若移动终端的文本段落存在换行临界态,则在移动终端的文本段落中应用预设属性;否则,不应用所述预设属性。本发明避免了文本段落的最后一个符号独自占据一行的情况,节省了移动终端的移动版本资源,并提高了移动终端的视觉效果。

Description

文本处理方法及移动终端
技术领域
本发明涉及移动互联网技术领域,尤其涉及一种文本处理方法及移动终端。
背景技术
目前在移动互联网中,对于各大社交网站(如Qzone,facebook、twitter、google+等)移动版本,由于受手机屏幕的大小限制,社交网站移动版本中的文字排版往往是以呈现Feeds(社交网站中的好友动态、最新消息等)为主,通常是使用几条最新的feeds列表作为首页。
以facebook的移动版本(m.facebook.com)为例,在登录进m.facebook.com后,呈现首页如图1-1所示。以图中方框内的文本为例,该文本作为一个段落放在一个DIV元素中,由DIV元素所限定的显示区域进行显示。DIV元素是用来为HTML文档内大块(block-level)的内容提供结构和背景的元素。DIV的起始标签和结束标签之间的所有内容都是用来构成该块,其中所包含元素的特性由DIV标签的属性来控制,或者是通过使用样式表格式化这个块来进行控制。
对于DIV等块级元素,正常文字(亚洲文字和非亚洲文字)的换行元素拥有默认的white-space:normal(泛空格符默认处理方式:文本自动处理换行),即当超过定义的宽度之后自动换行,并且不会截断字符。其中,“不会截断字符”指的是不会把一个英文单词显示在两行中。另外,这种换行方式不会在某一行的首部出现标点符号,标点符号会跟它前面的一个文字组成一个整体,表现出英文单词的特性。也就是图1-1中方框内的最后两个字符“哈”和“!”不会出现在两行,要么都在第二行,要么都在第三行,不会出现只有“!”在第三行的情况。
目前,各大社交网站均采用上述方案实现移动版本中的文字排版。
但是上述方案在以下两种情况下有可能出现换行临界态(即一段文字由于放不下最后的一个标点符号而导致换行,最后一行由该标点符号占据的情况):
(1)在某些特殊符号作为文本的结尾时,会违反普通的换行特性,出现一个符号占据一行的情况,比如波浪号“~”,如图1-2所示,图1-2中触屏版Qzone首页中,方框内的波浪号“~”单独占据一行。
(2)为了防止连续字符因DIV元素所限定的显示区域有限而溢出DIV元素所限定的区域,有时会对文本元素设置word-wrap:break-word (依照亚洲语言和非亚洲语言的文本规则,允许在字内换行,且允许非亚洲语言文本行的任意字内断开)或者word-break:break-all(内容将在边界内换行,如果需要,也允许词内换行),当这样设置以后,也会出现一个符号占据一行的情况,如图1-3所示,图1-3中触屏版Qzone首页中,方框内的省略号其中一点单独占据一行。
然而,移动终端的显示界面是非常有限的,产生换行临界态不仅影响视觉效果,还会造成单条FEEDs(简易信息聚合内容)在呈现的时候占用过多的显示区域,影响其他有价值的信息向用户的呈现,这样导致了对于移动终端显示区域资源的浪费。
发明内容
本发明的主要目的在于提供一种文本处理方法及移动终端,旨在避免文本出现换行临界态,节省移动终端的显示界面资源。
为了达到上述目的,本发明提出一种文本处理方法,包括:
获取移动终端输入的文本段落;
检测将所述文本段落在设定显示区域内进行显示时,所述文本段落是否存在换行临界态;
若所述文本段落存在换行临界态,则在所述文本段落中应用预设属性,使所述换行临界态消失。
本发明还提出一种移动终端,包括:
获取模块,用于获取移动终端输入的文本段落;
检测模块,用于检测将所述文本段落在设定显示区域内进行显示时,所述文本段落是否存在换行临界态;
处理模块,用于当所述文本段落存在换行临界态时,在所述文本段落中应用预设属性,使所述换行临界态消失。
本发明提出的一种文本处理方法及移动终端,通过获取移动终端输入的文本段落,检测将所述文本段落在设定显示区域内进行显示时,所述文本段落是否存在换行临界态;若文本段落存在换行临界态,则在该文本段落中应用预设属性,使换行临界态消失,由此,避免了文本段落的最后一个符号独自占据一行的情况,节省了移动终端的显示界面资源,同时避免了现有移动终端对于信息展现的局限性。
附图说明
图1-1是现有技术中facebook的移动版本的首页示意图;
图1-2是现有技术中触屏版Qzone首页的一种示意图;
图1-3是现有技术中触屏版Qzone首页出现换行临界态的一种示意图;
图2是本发明文本处理方法第一实施例的流程示意图;
图3是本发明文本处理方法第二实施例的流程示意图;
图4-1是一种不存在换行临界态的普通文本段落应用本发明实施例方案前的示意图;
图4-2是图4-1所示的不存在换行临界态的普通文本段落应用本发明实施例方案后的示意图;
图4-3是一种存在换行临界态的普通文本段落应用本发明实施例方案前的示意图;
图4-4是一种存在换行临界态的普通文本段落应用本发明实施例方案后的示意图;
图5是本发明文本处理方法第三实施例的流程示意图;
图6是本发明文本处理方法第四实施例的流程示意图;
图7是本发明文本处理方法实施例中对移动终端当前输入的文本段落进行筛选,获取符合处理条件的文本段落的流程示意图;
图8是本发明移动终端第一实施例的结构示意图;
图9是本发明移动终端实施例中检测模块的一种结构示意图;
图10是本发明移动终端实施例中检测模块的另一种结构示意图;
图11是本发明移动终端第二实施例的结构示意图;
图12是本发明移动终端实施例中筛选模块的结构示意图。
为了使本发明的技术方案更加清楚、明了,下面将结合附图作进一步详述。
具体实施方式
本发明实施例解决方案主要是:通过获取移动终端输入的文本段落,在移动终端的文本段落中应用CSS属性的方式或者通过字符串截取的方式检测移动终端的文本段落是否存在换行临界态;若文本段落存在换行临界态,则在文本段落中应用CSS属性,使换行临界态消失,由此,避免文本段落的最后一个符号独自占据一行的情况,节省移动终端的显示界面资源,同时避免了现有移动终端对于信息展现的局限性。
如图2所示,本发明第一实施例提出一种文本处理方法,包括:
步骤S90,获取移动终端输入的文本段落;
步骤S101,检测将所述文本段落在设定显示区域内进行显示时,所述文本段落是否存在换行临界态;若所述文本段落存在换行临界态,则进入步骤S102;若所述文本段落不存在换行临界态,则进入步骤S103。
本发明实施例主要涉及移动终端中社交网站的移动版本中的文字排版及换行方式,解决文本段落尤其是中文文本段落的最后一个符号独自占据一行的情况。
其中,文本段落放在一个DIV元素中,并显示在移动终端显示界面中一个DIV元素所限定的显示区域(即本实施例所称设定显示区域)。通常情况下,当DIV元素中的文本超过DIV元素定义的宽度之后会自动换行,并且不会截断字符。如前所述,在某些特殊符号作为文本的结尾时,会违反普通的换行特性,出现一个符号占据一行的情况,比如波浪号“~”,如图1-2所示;此外,对于文本元素设置word-wrap:break-word或者word-break:break-all时,也会出现一个符号占据一行的情况,如图1-3所示。
因此,需要对移动终端中文本段落是否存在换行临界态进行检测。其中,移动终端可以是手机、平板电脑等移动设备。
上述换行临界态是指一段文字由于放不下最后的一个标点符号而导致换行,最后一行由该标点符号占据的情况。
作为一种实施方式,对于移动终端的文本段落是否存在换行临界态的检测方法可以采用以下思路:
由于无论从HTML、CSS,还是Javascript的原生API中,都无法获取一段文本最后一行文字的长度和个数,本实施例一种方式是采用假设法来检测文本段落是否存在换行临界态,如果当前某一段文字出现了换行临界态,又假设有一种A方法,使得该换行临界态消失。那么使用A方法的前后,这段文本的一个属性——高度发生了变化。因此,本实施例得出了检测换行临界态的方法为:对文本段落应用A方法,如果文本的高度发生了变化,则说明该文本段落存在换行临界态;否则,该文本段落不存在换行临界态。
同时,为解决文本段落的最后一个符号独自占据一行的情况,应用A方法后,使得动文本段落换行临界态消失。
考虑到文本的宽度是固定的,而又需要将文本段落最后的那个符号放到上一行,所以可以通过压缩文本的字间距来实现。本实施例在这里采用将CSS属性应用到文本段落中来检测文本段落是否存在换行临界态。
CSS(Cascading Style Sheets,层叠样式表单)是一种用来表现HTML或XML等文件样式并允许将样式信息与网页内容分离的一种标记性语言。比如,如果想让链接字未点击时是蓝色的,当鼠标移上去后字变成红色的且有下划线,这就是一种风格。通过设立样式表,可以统一地控制HTML或XML中各标志的显示属性,扩充精确指定网页元素位置、外观以及创建特殊效果的能力。
以CSS中的letter-spacing属性为例,Letter-spacing定义在文本字符框之间插入多少空间。由于字符字形通常比其字符框要窄,指定长度值时,会调整字母之间通常的间隔。其默认值通常为0。
通过设置letter-spacing的属性值为一个特定的负值,可以使得文本段落的文字之间更加紧凑,由此可以腾出空间来容纳更多的内容,消除文本段落的换行临界态,比如可以设置letter-spacing的属性值为-1px(像素),这是最小值,这样不会使得文字之间过于紧凑而影响阅读。另外,由于letter-spacing的属性值为-1px所腾出的空间很小,仅仅能容纳一个标点符号,这一点也正满足了本实施例上述A方法的要求,对文本段落应用letter-spacing:-1px,如果文本段落的高度发生了变化,说明存在换行临界态;否则,该文本段落不存在换行临界态,从而通过文本段落属性是否发生变化来判断是否存在换行临界态。
作为另一种实施方式,还可以通过字符串截取的方式来检测文本段落是否存在换行临界态,例如s=str.substr(0,str.length-1),str为原字符串,s为去掉文本段落最后一个字符后的新字符串,检测字符串str和s的高度是否一致,如果前后有变化则说明该文本段落存在换行临界态,否则说明该文本段落不存在换行临界态。
步骤S102,在所述文本段落中应用预设属性,使所述换行临界态消失;
步骤S103,在所述文本段落中不应用所述预设属性。
当检测到文本段落存在换行临界态,则通过对该文本段落应用预设属性来使文本段落的换行临界态消失,否则,如果没有检测到文本段落存在换行临界态,则无需对该文本段落应用预设属性。
上述预设属性可以是CSS属性,比如设置所述文本段落的letter-spacing属性值或Word-spacing属性值为一设定的负值,比如为-1px(像素),可以使得文本段落的文字之间更加紧凑,由此可以腾出空间来容纳更多的内容,消除文本段落的换行临界态。
对于上述通过CSS属性来检测文本段落是否存在换行临界态的实施方式中,若检测到文本段落存在换行临界态,则保留对该文本段落应用的CSS属性,来使该文本段落的换行临界态消失;否则,若检测到文本段落不存在换行临界态,则去掉对该文本段落应用的CSS属性。
本实施例通过上述方案,通过检测移动终端的文本段落是否存在换行临界态;若移动终端的文本段落存在换行临界态,则在所述移动终端的文本段落中应用预设属性,使所述换行临界态消失,由此,避免了文本段落的最后一个符号独自占据一行的情况,节省了移动终端的显示界面资源,同时避免了现有移动终端对于信息展现的局限性。
如图3所示,本发明第二实施例提出一种文本处理方法,包括:
步骤S90,获取移动终端输入的文本段落;
步骤S1011,为所述移动终端的文本段落设置CSS属性;
相比上述第一实施例,本实施例直接通过为文本段落设置CSS属性来检测该文本段落是否存在换行临界态。
考虑到文本的宽度是固定的,而又需要将文本段落最后的那个符号放到上一行,因此可以通过压缩文本的字间距来解决文本段落的最后一个符号独自占据一行的情况。
本实施例在这里采用将CSS属性应用到文本段落中来检测文本段落是否存在换行临界态。
步骤S1012,检测设置CSS属性后的所述文本段落的高度是否发生变化;若是,则进入步骤S1013;否则,进入步骤S1014;
步骤S1013,判定所述文本段落存在换行临界态;进入步骤S1021;
步骤S1014,判定所述文本段落不存在换行临界态,进入步骤S1022。
以CSS中的letter-spacing属性为例,通过设置letter-spacing的属性值为一个特定的负值,可以使得文本段落的文字之间更加紧凑,由此可以腾出空间来容纳更多的内容,消除文本段落的换行临界态,比如可以设置letter-spacing的属性值为-1px(像素),这是最小值,这样不会使得文字之间过于紧凑而影响阅读。另外,由于letter-spacing的属性值为-1px所腾出的空间很小,仅仅能容纳一个标点符号,由此可以解决文本段落的最后一个符号独自占据一行的情况,使得该文本段落换行临界态消失。
在检测时,对文本段落应用letter-spacing:-1px,如果文本段落的高度发生了变化,说明该文本段落存在换行临界态;否则,该文本段落不存在换行临界态,从而通过文本段落属性是否发生变化来判断是否存在换行临界态。
如图4-1所示,图4-1为不存在换行临界态的普通文本段落,对这种文本段落应用letter-spacing:-1px,不会产生高度变化,如图4-2所示。
如图4-3所示,图4-3为存在换行临界态的普通文本段落,对这种文本段落应用letter-spacing:-1px,会产生高度变化,如图4-4所示,最后的波浪号被放到了上一行,而且整体文本也不会显得非常紧凑。
此外,在某些情况下,还可以采用CSS中的Word-spacing属性来代替上述实施方式中的letter-spacing属性,Word-spacing定义文本元素中字与字之间插入多少空白符。针对该属性,“字” 定义为由空白符包围的一个字符串,如果指定为长度值,可以调整字之间的通常间隔;其默认值通常设置为0。
由于Word-spacing是一个跟letter-spacing相似的CSS属性,它与letter-spacing不同的是,letter-spacing定义的是字符之间的间距,而Word-spacing定义的是字(单词)之间的间距。对于纯中文而言,由于汉字之间没有空格符,Word-spacing对中文不起作用。因此,在纯中文条件下,只能使用letter-spacing。
步骤S1021,在所述文本段落中保留所述CSS属性。
步骤S1022,去掉文本段落中的所述CSS属性。
若检测到文本段落存在换行临界态,则保留对该文本段落应用的CSS属性,来使该文本段落的换行临界态消失;否则,若检测到文本段落不存在换行临界态,则去掉对该文本段落应用的CSS属性。
本实施例通过上述方案,通过对移动终端的文本段落设置CSS属性来检测移动终端的文本段落是否存在换行临界态;若移动终端的文本段落存在换行临界态,则在所述移动终端的文本段落中保留CSS属性;否则,去掉所应用的CSS属性,由此,避免了文本段落的最后一个符号独自占据一行的情况,节省了移动终端的显示界面资源,同时避免了移动终端对于信息展现的局限性。
如图5所示,本发明第三实施例提出一种文本处理方法,包括:
步骤S90,获取移动终端输入的文本段落;
步骤S1015,对所述文本段落的最后一字符进行截取处理;
步骤S1016,检测进行字符截取处理后的所述文本段落的高度是否发生变化;若是,则进入步骤S1017;否则,进入步骤S1018;
步骤S1017,判定所述文本段落存在换行临界态;进入步骤S1023;
步骤S1018,判定所述文本段落不存在换行临界态,进入步骤S1024。
相比上述第一实施例,本实施例直接通过字符串截取的方式来检测文本段落是否存在换行临界态,例如,设定s=str.substr(0,str.length-1),str为对应文本段落的原字符串,s为去掉文本段落最后一个字符后的新字符串,检测字符串str和s的高度是否一致,如果前后有变化则说明该文本段落存在换行临界态,否则说明该文本段落不存在换行临界态。
步骤S1023,为所述文本段落设置CSS属性;
步骤S1024,不为所述文本段落设置CSS属性。
当检测到文本段落存在换行临界态,则通过对该文本段落应用预设属性来使文本段落的换行临界态消失,否则,如果没有检测到文本段落存在换行临界态,则无需对该文本段落应用预设属性。
上述预设属性可以是CSS属性,采用CSS属性是考虑到文本的宽度是固定的,而又需要将文本段落最后的那个符号放到上一行,以解决文本段落的最后一个符号独自占据一行的情况,所以可以通过压缩文本的字间距来实现。而采用将CSS属性应用到文本段落中可以使文本段落的换行临界态消失。
比如设置所述文本段落的letter-spacing属性值或Word-spacing属性值为一设定的负值,比如为-1px(像素),可以使得文本段落的文字之间更加紧凑,由此可以腾出空间来容纳更多的内容,消除文本段落的换行临界态。
本实施例通过上述方案,通过字符串截取的方式来检测移动终端的文本段落是否存在换行临界态;若移动终端的文本段落存在换行临界态,则在所述移动终端的文本段落中应用预设属性;否则,不应用所述预设属性,由此,避免了文本段落的最后一个符号独自占据一行的情况,节省了移动终端的显示界面资源,同时避免了移动终端对于信息展现的局限性。
如图6所示,本发明第四实施例提出一种文本处理方法,在上述第一实施例的基础上,在上述步骤S101之前还包括:
步骤S100,从所述移动终端当前输入的文本段落进行筛选,获取符合处理条件的文本段落,作为换行临界态检测文本段落。
相比上述第一实施例,本实施例在检测移动终端输入的文本段落是否存在换行临界态之前还需要对待检测的文本段落进行筛选。
本实施例考虑到并不是所有的文本段落都适合设置letter-spacing属性,因为当文字比较多,有M(M>3)行时,如果文本之间比较紧凑,则会在一定程度上影响阅读,因此本实施例只对存在换行临界态的预定N行比如两到三行的文本段落进行处理(即最后一个符号独自占据第二行或第三行的情况)。
下面以所有的p元素为例,给出javascript的核心代码片段,说明待检测的文本段落的筛选过程:
//定义一个获取元素实际高度的公用函数
如图7所示,作为一种实施方式,上述步骤S100可以包括:
步骤S1001,获取所述移动终端当前输入的文本段落中所有文本元素标签;
步骤S1002,遍历所有文本元素标签,调用预先定义的获取元素实际高度的公用函数获取各文本段落的实际高度;
步骤S1003,从中筛选出高度小于N行行高的文本段落,N为大于1的整数。
本实施例通过上述方案,对待检测的文本段落进行筛选,并通过检测移动终端的文本段落是否存在换行临界态;若移动终端的文本段落存在换行临界态,则在所述移动终端的文本段落中应用预设属性,使所述换行临界态消失,由此,避免了文本段落的最后一个符号独自占据一行的情况,节省了移动终端的显示界面资源,同时避免了移动终端对于信息展现的局限性。
如图8所示,本发明第一实施例提出一种移动终端,包括:获取模块200、检测模块201及处理模块202;其中:
获取模块200,用于获取移动终端输入的文本段落;
检测模块201,用于检测将所述文本段落在设定显示区域内进行显示时,所述文本段落是否存在换行临界态;
处理模块202,用于当所述文本段落存在换行临界态时,在所述文本段落中应用预设属性,使所述换行临界态消失。
本发明实施例主要涉及移动终端中社交网站的移动版本中的文字排版及换行方式,解决文本段落尤其是中文文本段落的最后一个符号独自占据一行的情况。
其中,文本段落放在一个DIV元素中,并显示在移动终端显示界面中一个DIV元素所限定的显示区域。通常情况下,当DIV元素中的文本超过DIV元素定义的宽度之后会自动换行,并且不会截断字符。如前所述,在某些特殊符号作为文本的结尾时,会违反普通的换行特性,出现一个符号占据一行的情况,比如波浪号“~”,如图1-2所示;此外,对于文本元素设置word-wrap:break-word或者word-break:break-all时,也会出现一个符号占据一行的情况,如图1-3所示。
因此,需要对移动终端中文本段落是否存在换行临界态进行检测。其中,移动终端可以是手机、平板电脑等移动设备。
上述换行临界态是指一段文字由于放不下最后的一个标点符号而导致换行,最后一行由该标点符号占据的情况。
作为一种实施方式,对于移动终端的文本段落是否存在换行临界态的检测方法可以采用以下思路:
由于无论从HTML、CSS,还是Javascript的原生API中,都无法获取一段文本最后一行文字的长度和个数,本实施例一种方式是采用假设法来检测文本段落是否存在换行临界态,如果当前某一段文字出现了换行临界态,又假设有一种A方法,使得该换行临界态消失。那么使用A方法的前后,这段文本的一个属性——高度发生了变化。因此,本实施例得出了检测换行临界态的方法为:对文本段落应用A方法,如果文本的高度发生了变化,则说明该文本段落存在换行临界态;否则,该文本段落不存在换行临界态。
同时,为解决文本段落的最后一个符号独自占据一行的情况,应用A方法后,使得动文本段落换行临界态消失。
考虑到文本的宽度是固定的,而又需要将文本段落最后的那个符号放到上一行,所以可以通过压缩文本的字间距来实现。本实施例在这里采用将CSS属性应用到文本段落中来检测文本段落是否存在换行临界态。
CSS(Cascading Style Sheets,层叠样式表单)是一种用来表现HTML或XML等文件样式并允许将样式信息与网页内容分离的一种标记性语言。比如,如果想让链接字未点击时是蓝色的,当鼠标移上去后字变成红色的且有下划线,这就是一种风格。通过设立样式表,可以统一地控制HTML或XML中各标志的显示属性,扩充精确指定网页元素位置、外观以及创建特殊效果的能力。
以CSS中的letter-spacing属性为例,Letter-spacing定义在文本字符框之间插入多少空间。由于字符字形通常比其字符框要窄,指定长度值时,会调整字母之间通常的间隔。其默认值通常为0。
通过设置letter-spacing的属性值为一个特定的负值,可以使得文本段落的文字之间更加紧凑,由此可以腾出空间来容纳更多的内容,消除文本段落的换行临界态,比如可以设置letter-spacing的属性值为-1px(像素),这是最小值,这样不会使得文字之间过于紧凑而影响阅读。另外,由于letter-spacing的属性值为-1px所腾出的空间很小,仅仅能容纳一个标点符号,这一点也正满足了本实施例上述A方法的要求,对文本段落应用letter-spacing:-1px,如果文本段落的高度发生了变化,说明存在换行临界态;否则,该文本段落不存在换行临界态,从而通过文本段落属性是否发生变化来判断是否存在换行临界态。
作为另一种实施方式,还可以通过字符串截取的方式来检测文本段落是否存在换行临界态,例如s=str.substr(0,str.length-1),str为原字符串,s为去掉文本段落最后一个字符后的新字符串,检测字符串str和s的高度是否一致,如果前后有变化则说明该文本段落存在换行临界态,否则说明该文本段落不存在换行临界态。
当检测模块201检测到文本段落存在换行临界态,处理模块202则通过对该文本段落应用预设属性来使文本段落的换行临界态消失,否则,如果没有检测到文本段落存在换行临界态,则无需对该文本段落应用预设属性。
上述预设属性可以是CSS属性,比如设置所述文本段落的letter-spacing属性值或Word-spacing属性值为一设定的负值,比如为-1px(像素),可以使得文本段落的文字之间更加紧凑,由此可以腾出空间来容纳更多的内容,消除文本段落的换行临界态。
对于上述通过CSS属性来检测文本段落是否存在换行临界态的实施方式中,若检测到文本段落存在换行临界态,则保留对该文本段落应用的CSS属性,来使该文本段落的换行临界态消失;否则,若检测到文本段落不存在换行临界态,则去掉对该文本段落应用的CSS属性。
本实施例通过上述方案,通过检测移动终端的文本段落是否存在换行临界态;若移动终端的文本段落存在换行临界态,则在所述移动终端的文本段落中应用预设属性,使所述换行临界态消失,由此,避免了文本段落的最后一个符号独自占据一行的情况,节省了移动终端的显示界面资源,同时避免了现有移动终端对于信息展现的局限性。
具体地,如图9所示,作为一种实施方式,上述检测模块201可以包括:设置单元2011及第一检测判定单元2012,其中:
设置单元2011,用于为所述文本段落设置CSS属性,比如设置所述文本段落的letter-spacing属性值或Word-spacing属性值为一设定的负值;
第一检测判定单元2012,用于检测设置CSS属性后的所述文本段落的高度是否发生变化;若是,则判定所述文本段落存在换行临界态;否则,判定所述文本段落不存在换行临界态。
在此种实施方式中,所述处理模块202还用于当所述移动终端的文本段落存在换行临界态时,在所述移动终端的文本段落中保留所述CSS属性;否则,去掉所述CSS属性。
上述方案通过对移动终端的文本段落设置CSS属性来检测移动终端的文本段落是否存在换行临界态;若移动终端的文本段落存在换行临界态,则在所述移动终端的文本段落中保留CSS属性;否则,去掉所应用的CSS属性,由此,避免了文本段落的最后一个符号独自占据一行的情况,节省了移动终端的显示界面资源,同时避免了现有移动终端对于信息展现的局限性。
如图10所示,作为另一种实施方式,上述检测模块201可以包括:截取单元2013及第二检测判定单元2014,其中:
截取单元2013,用于对所述文本段落的最后一字符进行截取处理;
第二检测判定单元2014,用于检测进行字符截取处理后的所述文本段落的高度是否发生变化;若是,则判定所述文本段落存在换行临界态;否则,判定所述文本段落不存在换行临界态。
在此种实施方式中,所述处理模块202还用于当所述移动终端的文本段落存在换行临界态时,为所述移动终端的文本段落设置CSS属性,比如设置所述文本段落的letter-spacing属性值或Word-spacing属性值为一设定的负值;否则,不为所述移动终端的文本段落设置CSS属性。
上述方案通过字符串截取的方式来检测移动终端的文本段落是否存在换行临界态;若移动终端的文本段落存在换行临界态,则在所述移动终端的文本段落中应用预设属性;否则,不应用所述预设属性,由此,避免了文本段落的最后一个符号独自占据一行的情况,节省了移动终端的显示界面资源,同时避免了现有移动终端对于信息展现的局限性。
需要说明的是,上述实施例中,在某些情况下,还可以采用CSS中的Word-spacing属性来代替上述实施方式中的letter-spacing属性,Word-spacing定义文本元素中字与字之间插入多少空白符。针对该属性,“字” 定义为由空白符包围的一个字符串,如果指定为长度值,可以调整字之间的通常间隔;其默认值通常设置为0。
由于Word-spacing是一个跟letter-spacing相似的CSS属性,它与letter-spacing不同的是,letter-spacing定义的是字符之间的间距,而Word-spacing定义的是字(单词)之间的间距。对于纯中文而言,由于汉字之间没有空格符,Word-spacing对中文不起作用。因此,在纯中文条件下,只能使用letter-spacing。
如图11所示,本发明第二实施例提出一种文本处理装置,在上述第一实施例的基础上还包括:
筛选模块203,用于对所述移动终端当前输入的所述文本段落进行筛选,获取符合处理条件的文本段落,作为换行临界态检测文本段落。
本实施例考虑到并不是所有的文本段落都适合设置letter-spacing属性,因为当文字比较多,有M(M>3)行时,如果文本之间比较紧凑,则会在一定程度上影响阅读,因此本实施例只对存在换行临界态的预定N行比如两到三行的文本段落进行处理(即最后一个符号独自占据第二行或第三行的情况)。
本实施例通过上述方案,对待检测的文本段落进行筛选,并通过检测移动终端的文本段落是否存在换行临界态;若移动终端的文本段落存在换行临界态,则在所述移动终端的文本段落中应用预设属性;否则,不应用所述预设属性,由此,避免了文本段落的最后一个符号独自占据一行的情况,节省了移动终端的显示界面资源,同时避免了移动终端对于信息展现的局限性。
具体地,如图12所示,作为一种实施方式,上述筛选模块203可以包括:元素标签获取单元2031、高度获取单元2032及筛选单元2033,其中:
元素标签获取单元2031,用于获取所述移动终端当前输入的文本段落中所有文本元素标签;
高度获取单元2032,用于遍历所有文本元素标签,调用预先定义的获取元素实际高度的公用函数获取各文本段落的实际高度;
筛选单元2033,用于从中筛选出高度小于N行行高的文本段落,N为大于1的整数,比如可以取两至三行。
上述方案通过对待检测的文本段落进行筛选,可以进一步节省移动终端的显示界面资源,同时避免移动终端对于信息展现的局限性。
本发明实施例文本处理方法及移动终端,通过检测移动终端的文本段落是否存在换行临界态;若移动终端的文本段落存在换行临界态,则在所述移动终端的文本段落中应用预设属性,使所述换行临界态消失;否则,不应用所述预设属性,由此,避免了文本段落的最后一个符号独自占据一行的情况,节省了移动终端的显示界面资源,同时避免了移动终端对于信息展现的局限性;此外,在检测移动终端的文本段落是否存在换行临界态之前,还可以对待检测的文本段落进行筛选,由此可以进一步进一步节省移动终端的显示界面资源,同时避免移动终端对于信息展现的局限性。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (17)

1.一种文本处理方法,其特征在于,包括:
获取移动终端输入的文本段落;
检测将所述文本段落在设定显示区域内进行显示时,所述文本段落是否存在换行临界态;
若所述文本段落存在换行临界态,则在所述文本段落中应用预设属性,使所述换行临界态消失。
2.根据权利要求1所述的方法,其特征在于,所述检测将文本段落在设定显示区域内进行显示时,所述文本段落是否存在换行临界态的步骤包括:
为所述文本段落设置CSS属性;
检测设置CSS属性后的所述文本段落的高度是否发生变化;若是,则判定所述文本段落存在换行临界态;否则,判定所述文本段落不存在换行临界态。
3.根据权利要求2所述的方法,其特征在于,所述若文本段落存在换行临界态,则在所述文本段落中应用预设属性,使所述换行临界态消失的步骤包括:
若所述文本段落存在换行临界态,则在所述文本段落中保留所述CSS属性;否则,去掉所述CSS属性。
4.根据权利要求1所述的方法,其特征在于,所述检测将文本段落在设定显示区域内进行显示时,所述文本文本段落是否存在换行临界态的步骤包括:
对所述文本段落的最后一字符进行截取处理;
检测进行字符截取处理后的所述文本段落的高度是否发生变化;若是,则判定所述文本段落存在换行临界态;否则,判定所述文本段落不存在换行临界态。
5.根据权利要求4所述的方法,其特征在于,所述若移动终端的文本段落存在换行临界态,则在所述文本段落中应用预设属性的步骤包括:
若所述移动终端的文本段落存在换行临界态,则为所述文本段落设置CSS属性。
6.根据权利要求2或5所述的方法,其特征在于,所述为文本段落设置CSS属性的步骤包括:
设置所述文本段落的letter-spacing属性值或Word-spacing属性值为一设定的负值。
7.根据权利要求1所述的方法,其特征在于,所述获取移动终端输入的文本段落的步骤之后还包括:
对所述移动终端当前输入的所述文本段落进行筛选,获取符合处理条件的文本段落,作为换行临界态检测文本段落。
8.根据权利要求7所述的方法,其特征在于,所述对移动终端当前输入的文本段落进行筛选,获取符合处理条件的文本段落的步骤包括:
获取所述移动终端当前输入的文本段落中所有文本元素标签;
遍历所有文本元素标签,调用预先定义的获取元素实际高度的公用函数获取各文本段落的实际高度;
从中筛选出高度小于N行行高的文本段落,N为大于1的整数。
9.一种移动终端,其特征在于,包括:
获取模块,用于获取移动终端输入的文本段落;
检测模块,用于检测将所述文本段落在设定显示区域内进行显示时,所述文本段落是否存在换行临界态;
处理模块,用于当所述文本段落存在换行临界态时,在所述文本段落中应用预设属性,使所述换行临界态消失。
10.根据权利要求9所述的移动终端,其特征在于,所述检测模块包括:
设置单元,用于为所述文本段落设置CSS属性;
第一检测判定单元,用于检测设置CSS属性后的所述文本段落的高度是否发生变化;若是,则判定所述文本段落存在换行临界态;否则,判定所述文本段落不存在换行临界态。
11.根据权利要求10所述的移动终端,其特征在于,所述设置单元还用于设置所述文本段落的letter-spacing属性值或Word-spacing属性值为一设定的负值。
12.根据权利要求10所述的移动终端,其特征在于,所述处理模块还用于当所述文本段落存在换行临界态时,在所述文本段落中保留所述CSS属性;否则,去掉所述CSS属性。
13.根据权利要求9所述的移动终端,其特征在于,所述检测模块包括:
截取单元,用于对所述文本段落的最后一字符进行截取处理;
第二检测判定单元,用于检测进行字符截取处理后的所述文本段落的高度是否发生变化;若是,则判定所述文本段落存在换行临界态;否则,判定所述文本段落不存在换行临界态。
14.根据权利要求13所述的移动终端,其特征在于,所述处理模块还用于当所述移文本段落存在换行临界态时,为所述文本段落设置CSS属性;否则,不为所述文本段落设置CSS属性。
15.根据权利要求14所述的移动终端,其特征在于,所述处理模块还用于设置所述文本段落的letter-spacing属性值或Word-spacing属性值为一设定的负值。
16.根据权利要求9-15中任一项所述的移动终端,其特征在于,还包括:
筛选模块,用于对所述移动终端当前输入的所述文本段落进行筛选,获取符合处理条件的文本段落,作为换行临界态检测文本段落。
17.根据权利要求16所述的移动终端,其特征在于,所述筛选模块包括:
元素标签获取单元,用于获取所述移动终端当前输入的文本段落中所有文本元素标签;
高度获取单元,用于遍历所有文本元素标签,调用预先定义的获取元素实际高度的公用函数获取各文本段落的实际高度;
筛选单元,用于从中筛选出高度小于N行行高的文本段落,N为大于1的整数。
CN201310159473.1A 2013-05-02 2013-05-02 文本处理方法及移动终端 Active CN104133811B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201310159473.1A CN104133811B (zh) 2013-05-02 2013-05-02 文本处理方法及移动终端
PCT/CN2013/088943 WO2014176903A1 (zh) 2013-05-02 2013-12-10 文本处理方法及移动终端
US14/811,042 US20150331837A1 (en) 2013-05-02 2015-07-28 Text processing method and mobile terminal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310159473.1A CN104133811B (zh) 2013-05-02 2013-05-02 文本处理方法及移动终端

Publications (2)

Publication Number Publication Date
CN104133811A true CN104133811A (zh) 2014-11-05
CN104133811B CN104133811B (zh) 2018-05-22

Family

ID=51806490

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310159473.1A Active CN104133811B (zh) 2013-05-02 2013-05-02 文本处理方法及移动终端

Country Status (3)

Country Link
US (1) US20150331837A1 (zh)
CN (1) CN104133811B (zh)
WO (1) WO2014176903A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108710601A (zh) * 2018-05-14 2018-10-26 广州腾讯科技有限公司 一种文本显示方法及其设备、存储介质、电子设备
CN113326458A (zh) * 2021-05-31 2021-08-31 山东云缦智能科技有限公司 基于Javascript的多行文本截断显示的处理方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109783810B (zh) * 2018-12-26 2022-11-11 北京明略软件系统有限公司 一种文本处理方法、装置及计算机可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1416077A (zh) * 2002-12-05 2003-05-07 北京北大方正电子有限公司 一种手持设备文字排版对齐的方法
WO2006059513A1 (ja) * 2004-12-03 2006-06-08 Sony Computer Entertainment Inc. 表示装置、表示装置の制御方法及び情報記憶媒体
CN102057369A (zh) * 2008-04-15 2011-05-11 Opera软件股份公司 用于当显示电子文档的选定区域时动态地文本换行的方法和设备
CN102081600A (zh) * 2011-01-25 2011-06-01 珠海全志科技有限公司 电子书排版方法及其系统
CN102436439A (zh) * 2010-09-29 2012-05-02 鸿富锦精密工业(深圳)有限公司 文本框及文本显示方法
CN102663126A (zh) * 2012-04-23 2012-09-12 奇智软件(北京)有限公司 一种在移动终端中显示网页的方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1416077A (zh) * 2002-12-05 2003-05-07 北京北大方正电子有限公司 一种手持设备文字排版对齐的方法
WO2006059513A1 (ja) * 2004-12-03 2006-06-08 Sony Computer Entertainment Inc. 表示装置、表示装置の制御方法及び情報記憶媒体
CN102057369A (zh) * 2008-04-15 2011-05-11 Opera软件股份公司 用于当显示电子文档的选定区域时动态地文本换行的方法和设备
CN102436439A (zh) * 2010-09-29 2012-05-02 鸿富锦精密工业(深圳)有限公司 文本框及文本显示方法
CN102081600A (zh) * 2011-01-25 2011-06-01 珠海全志科技有限公司 电子书排版方法及其系统
CN102663126A (zh) * 2012-04-23 2012-09-12 奇智软件(北京)有限公司 一种在移动终端中显示网页的方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108710601A (zh) * 2018-05-14 2018-10-26 广州腾讯科技有限公司 一种文本显示方法及其设备、存储介质、电子设备
CN113326458A (zh) * 2021-05-31 2021-08-31 山东云缦智能科技有限公司 基于Javascript的多行文本截断显示的处理方法
CN113326458B (zh) * 2021-05-31 2022-06-21 山东浪潮超高清视频产业有限公司 基于Javascript的多行文本截断显示的处理方法

Also Published As

Publication number Publication date
WO2014176903A1 (zh) 2014-11-06
US20150331837A1 (en) 2015-11-19
CN104133811B (zh) 2018-05-22

Similar Documents

Publication Publication Date Title
US20110131527A1 (en) Method and apparatus for displaying pop-up
CN105740315A (zh) 一种多种屏幕响应式网页布局调整的方法
CN103336690B (zh) 基于html5的文字元素绘制方法及装置
CN102830928A (zh) 获得文本查询结果的方法、装置及移动设备
CN104298721B (zh) 一种基于Web的在线课件制作任意个对象分屏布局编辑方法
CN113515928B (zh) 电子文本生成方法、装置、设备及介质
CN101984419A (zh) 用于对网页图片内容进行段落重排的方法及装置
CN105094930A (zh) 一种定位图片系统及方法
CN106126760A (zh) 一种web网页图片优化的方法
CN104133811A (zh) 文本处理方法及移动终端
CN105786920B (zh) 界面标签的展现方法和装置
CN111783007B (zh) 一种显示渲染方法、装置、电子设备及存储介质
CN106484388B (zh) 用户界面的实现方法和装置
CN105320432A (zh) 一种滚动条的显示方法及装置
CN103092989A (zh) 适应终端屏幕的图片显示方法及设备
CN106372070B (zh) 一种图形界面中数据的展示方法及装置
CN105389112B (zh) 一种用户终端上书写字迹的显示方法及用户终端
CN104536947A (zh) 版式文档的处理方法及装置
US20140310589A1 (en) Creating a communication editable in a browser independent of platform and operating system
CN104142754A (zh) 按键模块与其信号产生方法
US9953015B2 (en) Displaying a document file target area based on history of display settings
CN106325890A (zh) 基于纯html+css代码创建网页后台自适应布局方法
CN105260353A (zh) 一种移动终端的排版方法及装置
CN108228115B (zh) 一种浏览器显示页面的打印方法及装置
CN102855265A (zh) 浏览和下载网页图片系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant