文字框的排版方法技术

技术编号:2877113 阅读:197 留言:0更新日期:2012-04-11 18:40
一种文字框的排版方法,至少包含有下列步骤:选取所需显示的文字;计算该文字的行数以及每一行的平均文字长度;确认该平均文字长度介于该文字框所能显示的最大以及最小宽度之间;设定该平均文字长度为该文字框的宽度,对该显示的文字进行排版处理;将该换行的文字的行数减少一行,并记录其所需的宽度;将该记录的宽度中的最小宽度设定为该文字框的显示宽度;以及根据该显示宽度对所需显示的文字进行排版。(*该技术在2021年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及一种排版方法,应用于各种文字框,特别是一种可减少空白区域,达到最佳排版效果的。2、固定宽度法文字框的宽度固定,长度超过其宽度的行会自动换行,这种方法的缺点是当文字框的宽度设定过大(或是文字内容过短),则空白区域会相当多,另一方面,当文字框的宽度设定过小(或是当文字内容过长),则会造成文字换行过多,使得文字框拉得太长。3、平均值宽度法文字框的显示宽度由要显示的文字内容决定,将要显示的文字的平均长度作为显示宽度,对过长的行(也就是大于平均长度的行)作换行处理,但是当遇到行宽(也就是各行的长度)分布较不均匀时,则会显得有些地方空白区域过大,有些地方行数过多。这些排版处理方法的一个共同缺点就足,无法为用户提供一个针对不同文字内容决定出最佳的显示宽度,使得整体排版处理不恰当,造成版面不美观。本专利技术的上述目的是这样实现的一种,其特征在于至少包含有下列步骤选取所需显示的文字;计算该文字的行数以及该每一行的平均文字长度;确认该平均长度介于该文字框所能显示之最大以及最小宽度之间;设定该平均长度为该文字框之宽度而对该显示之文字进行排版处理;将该换行之文字之行数减少一行,并记录其所需之宽度;将该记录之宽度中的最小宽度设定为该文字框之显示宽度;以及根据该显示宽度将该所需显示之文字排版。由此可见,根据本专利技术所提供的,首先计算所要显示文字的行数以及各行的长度,并计算其平均长度,接着将该平均长度与文字框所能显示的最大值以及最小值相比较,如平均长度小于文字框所能显示的最小值,则设定文字框的最小值为显示宽度;如平均长度位于文字框所能显示的最大值与最小值之间,则利用平均长度去做排版处理,并对有换行的每一行文字进行重新折行,计算折行后行数减少一行(比按平均长度折行所得的行数)时所需的最小宽度,并将所有文字按计算出的若干宽度值重新进行排版处理,而选择折行后空白区域最小的宽度值为显示宽度;如果平均长度大于文字框所能显示的最大值,则利用最大值作为宽度作排版处理,并计算消除每一行空白区域后的实际宽度值,而选择其中的最大宽值为显示宽度;如此,针对不同的情形,计算出最佳的显示宽度去排版,可使排版后的空白区域最小,从而得到最佳的排版效果。根据本专利技术所公开的,请参阅附图说明图1A和图1B,如图1A所示,首先选取文字框所要显示的文字(步骤12),而文字框可为实时翻译软件实时翻译时所显示的翻译内容,或者是一般软件的索引文件等等,接着计算所要显示的文字行数以及平均长度(步骤13),接着比对平均长度与文字框所能显示的最大宽度以及最小宽度(步骤14),用以决定文字框的最佳宽度。当平均长度小于最小值时,则将最小宽度设定为显示的宽度(步骤15);当平均长度落在最大值以及最小值之间时,参见图1B所示,先设定平均长度为文字框的宽度,以此来对文字内容进行排版(步骤16),并将排版处理后的行数以及各行的长度加以记录(步骤17),接着将排版处理后,其中有换行的部分的行数减少一行(也就是增加显示的宽度,使其行数减少一行),并记录每一部分减少一行所需的宽度(步骤18),再计算按这些宽度值排版后的空白区域大小,选取空白区域最小的宽度为显示宽度(步骤19);其目的是为了能有效减少空白区域。最后一种情况如图1B所示,当平均值大于文字框所能显示的最大宽度时,则设定最大宽度为文字框的宽度,并以此对文字内容进行排版处理(步骤21),排版处理后的行数以及各行的长度加以记录(步骤22),接着计算每行文字的实际宽度(除去空白区域部分),(步骤23),然后将其中最大的宽度设定为显示宽度(步骤24),换句话说,也就是将其中最接近满行的那一部分调整为满行无空白区域,而其它的部分,行数并不会增加,且空白区域也可以相对地减少。而不论是何种情况,最后决定出显示宽度后,都利用此显示宽度为文字框的宽度,将所要显示的文字加以排版而显示出来(图1A中的步骤25)。接着,实际举一个例子来做说明,首先,请参阅图2A,为现有技术中采用的最大宽度法,即依照最大长度为文字框40的宽度,所以是以图中所示的第一行(第一点)为文字框40的宽度,如此,整个文字框40的文字为四行,每行53个字符,空白区域为105个字符。如图2B所示,为现有技术采用的平均长度法,计算此四行的平均长度,以此平均长度为文字框40的显示宽度,得到的文字框40内的文字为七行,每行27个字符,空白区域为72个字符。最后,请参阅图2C,为利用本专利技术的方法所实现的文字框排版效果,因为平均长度在文字框40的显示范围内,所以先利用平均长度来进行排版处理,接着计算将其中有换行的部分的行数减少一行所需的宽度,并取其中最小的宽度,最后计算结果,得到的文字框40为五行,每行34个字符,空白区域为62个字符。由此可以看出,利用本专利技术的排版方法,可以使得文字框的空白区域最少,得到最佳的排版效果。本专利技术为一种,利用计算所要显示文字的行数以及平均长度,并通过比较平均长度以及文字框所能显示的最大值以及最小值来确定文字框的显示宽度,如平均长度小于文字框所能显示的最小值,则设定文字框的最小值为显示宽度;如判断平均长度位于文字框所能显示的最大值与最小值之间,则利用平均长度去做排版处理,并计算有换行的部分的行数减少一行所需宽度,而选择其中最小的宽度值为显示宽度;如果平均长度大于文字框所能显示的最大值,则利用最大值作为宽度去排版处理,并计算消除每一行的空白区域所需的宽度,而选择其中最大的宽度值为显示宽度;如此,针对不同的文字内容的情形,计算出最佳的显示宽度去排版,可使排版后的空白区域最小,得到最佳的排版效果。以上所述仅为本专利技术其中的较佳实施例而已,并非用来限定本专利技术的实施范围;凡按照本专利技术权利要求所作的均等变化与修饰,均为本专利技术权利要求所涵盖。权利要求1.一种,其特征在于至少包含有下列步骤选取所需显示的文字;计算该文字的行数以及该每一行的平均文字长度;确认该平均长度介于该文字框所能显示的最大以及最小宽度之间;设定该平均长度为该文字框的宽度,对该显示的文字进行排版处理;将该换行的文字的行数减少一行,并记录其所需的宽度;将该记录的宽度中的最小宽度设定为该文字框的显示宽度;以及根据该显示宽度将该所需显示的文字进行排版。2.如权利要求1所述的,其特征在于该设定该平均长度为该文字框的宽度而对该显示的文字进行排版处理的步骤,还包含有记录排版处理后的该文字行数以及各行长度的步骤。3.如权利要求1所述的,其特征在于该确认该平均长度介于该文字框所能显示的最大以及最小宽度之间的步骤,还包含有比对该平均长度与该文字框所能显示的最大以及最小宽度的步骤。4.如权利要求3所述的,其特征在于该比对该平均长度与该文字框所能显示的最大以及最小宽度的步骤,如判断该平均长度小于该文字框所能显示的最小宽度,则将该最小宽度设定为该文字框的显示宽度。5.如权利要求3所述的,其特征在于该比对该平均长度与该文字框所能显示的最大以及最小宽度的步骤,如判断该平均长度大于该文字框所能显示的最大宽度,则执行下列步骤设定该最大宽度为该文字框的宽度而对该显示的文字进行排版处理;利用改变每一行的宽度消除该显示的文字的空白区域,并记录其所需的宽度;将该记录的宽度中的最大宽度设定为该文字框的显示宽度;以及根据该显示宽度将该所需显示的本文档来自技高网...

【技术保护点】
一种文字框的排版方法,其特征在于至少包含有下列步骤: 选取所需显示的文字; 计算该文字的行数以及该每一行的平均文字长度; 确认该平均长度介于该文字框所能显示的最大以及最小宽度之间; 设定该平均长度为该文字框的宽度,对该显示的文字进行排版处理; 将该换行的文字的行数减少一行,并记录其所需的宽度; 将该记录的宽度中的最小宽度设定为该文字框的显示宽度;以及 根据该显示宽度将该所需显示的文字进行排版。

【技术特征摘要】

【专利技术属性】
技术研发人员:林光信赵镝
申请(专利权)人:英业达股份有限公司
类型:发明
国别省市:71[中国|台湾]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1