一种基于Unity的字编辑方法及终端与流程

文档序号:15636710发布日期:2018-10-12 21:33阅读:183来源:国知局

本发明涉及软件开发领域,尤其涉及一种基于unity的字编辑方法及终端。



背景技术:

现有技术中,要在unity中输入字只能用文本输入框inputfield进行字的输入,但是现有的在unity中进行字输入的方法中,并无法对文本输入框中的内容进行实时编辑并显示,更无法对单个字进行各种字属性的编辑,这样造成在unity中进行字输入时灵活性不高,用户体验差。



技术实现要素:

本发明所要解决的技术问题是:提供一种基于unity的字编辑方法及终端,能够对单个字进行编辑,实现实时编辑并显示。

为了解决上述技术问题,本发明采用的一种技术方案为:

一种基于unity的字编辑方法,包括步骤:

s1、创建对字进行编辑的文本编辑框预制体以及存储每一个字及所述字对应的属性信息的字表,每接收到输入文本输入框的字时,将所述字添加入所述字表;

s2、接收通过文本编辑框对输入文本输入框中的字进行编辑的编辑信息,根据所述编辑信息对所述字表中对应的字的属性进行修改,并同步显示属性修改后的字;

s3、将所述属性修改后的字填入文本编辑框中对应的位置。

为了解决上述技术问题,本发明采用的另一种技术方案为:

一种基于unity的字编辑终端,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

s1、创建对字进行编辑的文本编辑框预制体以及存储每一个字及所述字对应的属性信息的字表,每接收到输入文本输入框的字时,将所述字添加入所述字表;

s2、接收通过文本编辑框对输入文本输入框中的字进行编辑的编辑信息,根据所述编辑信息对所述字表中对应的字的属性进行修改,并同步显示属性修改后的字;

s3、将所述属性修改后的字填入文本编辑框中对应的位置。

本发明的有益效果在于:通过创建对字进行编辑的文本编辑框预制体以及存储每一个字及所述字对应的属性信息的字表,每接收到输入文本输入框的字时,将所述字添加入所述字表,根据对文本输入框中的字的编辑信息,对字表中对应的字的属性进行修改,并同步显示属性修改后的字,能够在unity中实现对单个字的编辑,并且在编辑过程中能够同步显示编辑后的结果,实现一种所见即所得的效果,灵活性强,用户体验好。

附图说明

图1为本发明实施例的一种基于unity的字编辑方法的流程图;

图2为为本发明实施例的一种基于unity的字编辑终端的结构示意图;

标号说明:

1、一种基于unity的字编辑终端;2、存储器;3、处理器。

具体实施方式

为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。

本发明最关键的构思在于:通过创建对字进行编辑的文本编辑框预制体以及存储每一个字及所述字对应的属性信息的字表,每接收到输入文本输入框的字时,将所述字添加入所述字表,根据对文本输入框中的字的编辑信息,对字表中对应的字的属性进行修改,并同步显示属性修改后的字。

请参照图1,一种基于unity的字编辑方法,包括步骤:

s1、创建对字进行编辑的文本编辑框预制体以及存储每一个字及所述字对应的属性信息的字表,每接收到输入文本输入框的字时,将所述字添加入所述字表;

s2、接收通过文本编辑框对输入文本输入框中的字进行编辑的编辑信息,根据所述编辑信息对所述字表中对应的字的属性进行修改,并同步显示属性修改后的字;

s3、将所述属性修改后的字填入文本编辑框中对应的位置。

从上述描述可知,本发明的有益效果在于:通过创建对字进行编辑的文本编辑框预制体以及存储每一个字及所述字对应的属性信息的字表,每接收到输入文本输入框的字时,将所述字添加入所述字表,根据对文本输入框中的字的编辑信息,对字表中对应的字的属性进行修改,并同步显示属性修改后的字,能够在unity中实现对单个字的编辑,并且在编辑过程中能够同步显示编辑后的结果,实现一种所见即所得的效果,灵活性强,用户体验好。

进一步的,所述步骤s3包括:

判断所述属性修改后的字是替换的字还是添加的字,若是替换的字,则将所述属性修改后的字替换文本编辑框中对应的字;若是添加的字,则将所述属性修改后的字填入文本输入框中光标所在的位置之后。

由上述描述可知,能够自动判断是替换的字还是添加的字进行在文本编辑框中对应的填入,自适应性强。

进一步的,所述步骤s1之后还包括步骤:

s4、接收删除文本输入框中的字的请求,根据所述请求,删除文本输入框中对应的字,同时在所述字表中删除存储的对应的字及其属性信息。

由上述描述可知,在进行字的删除时,同步删除字表中对应的字及其属性信息,保证文本输入框中的字与字表中的字的同步,保证后续进行字编辑时的准确性和可靠性。

进一步的,所述步骤s1和s2之间还包括步骤:

根据文本输入框中文本内容的长度的改变判断是添加字、替换字还是删除字,若是添加字或替换字,则执行步骤s2;若是删除字,则执行步骤s4。

进一步的,所述根据文本输入框中文本内容的长度的改变判断是添加字、替换字还是删除字包括:

若文本输入框中文本内容的长度不变,则是替换字;若文本输入框中文本内容的长度变大,则是添加字;若文本输入框中文本内容的长度变小,则是删除字。

由上述描述可知,基于文本输入框中文本内容的长度变化来判断是添加字、替换字还是删除字,不仅简单快捷,而且准确可靠。

请参照图2,一种基于unity的字编辑终端,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

s1、创建对字进行编辑的文本编辑框预制体以及存储每一个字及所述字对应的属性信息的字表,每接收到输入文本输入框的字时,将所述字添加入所述字表;

s2、接收通过文本编辑框对输入文本输入框中的字进行编辑的编辑信息,根据所述编辑信息对所述字表中对应的字的属性进行修改,并同步显示属性修改后的字;

s3、将所述属性修改后的字填入文本编辑框中对应的位置。

从上述描述可知,本发明的有益效果在于:通过创建对字进行编辑的文本编辑框预制体以及存储每一个字及所述字对应的属性信息的字表,每接收到输入文本输入框的字时,将所述字添加入所述字表,根据对文本输入框中的字的编辑信息,对字表中对应的字的属性进行修改,并同步显示属性修改后的字,能够在unity中实现对单个字的编辑,并且在编辑过程中能够同步显示编辑后的结果,实现一种所见即所得的效果,灵活性强,用户体验好。

进一步的,所述步骤s3包括:

判断所述属性修改后的字是替换的字还是添加的字,若是替换的字,则将所述属性修改后的字替换文本编辑框中对应的字;若是添加的字,则将所述属性修改后的字填入文本输入框中光标所在的位置之后。

由上述描述可知,能够自动判断是替换的字还是添加的字进行在文本编辑框中对应的填入,自适应性强。

进一步的,所述步骤s1之后还包括步骤:

s4、接收删除文本输入框中的字的请求,根据所述请求,删除文本输入框中对应的字,同时在所述字表中删除存储的对应的字及其属性信息。

由上述描述可知,在进行字的删除时,同步删除字表中对应的字及其属性信息,保证文本输入框中的字与字表中的字的同步,保证后续进行字编辑时的准确性和可靠性。

进一步的,所述步骤s1和s2之间还包括步骤:

根据文本输入框中文本内容的长度的改变判断是添加字、替换字还是删除字,若是添加字或替换字,则执行步骤s2;若是删除字,则执行步骤s4。

进一步的,所述根据文本输入框中文本内容的长度的改变判断是添加字、替换字还是删除字包括:

若文本输入框中文本内容的长度不变,则是替换字;若文本输入框中文本内容的长度变大,则是添加字;若文本输入框中文本内容的长度变小,则是删除字。

由上述描述可知,基于文本输入框中文本内容的长度变化来判断是添加字、替换字还是删除字,不仅简单快捷,而且准确可靠。

实施例一

请参照图1,一种基于unity的字编辑方法,包括步骤:

s1、创建对字进行编辑的文本编辑框预制体以及存储每一个字及所述字对应的属性信息的字表,每接收到输入文本输入框的字时,将所述字添加入所述字表;

根据文本输入框中文本内容的长度的改变判断是添加字、替换字还是删除字,若是添加字或替换字,则执行步骤s2;若是删除字,则执行步骤s4;

其中,所述根据文本输入框中文本内容的长度的改变判断是添加字、替换字还是删除字包括:

若文本输入框中文本内容的长度不变,则是替换字;若文本输入框中文本内容的长度变大,则是添加字;若文本输入框中文本内容的长度变小,则是删除字;

s2、接收通过文本编辑框对输入文本输入框中的字进行编辑的编辑信息,根据所述编辑信息对所述字表中对应的字的属性进行修改,并同步显示属性修改后的字;

s3、将所述属性修改后的字填入文本编辑框中对应的位置;

具体的,判断所述属性修改后的字是替换的字还是添加的字,若是替换的字,则将所述属性修改后的字替换文本编辑框中对应的字;若是添加的字,则将所述属性修改后的字填入文本输入框中光标所在的位置之后;

s4、接收删除文本输入框中的字的请求,根据所述请求,删除文本输入框中对应的字,同时在所述字表中删除存储的对应的字及其属性信息。

实施例二

请参照图2,一种基于unity的字编辑终端1,包括存储器2、处理器3以及存储在所述存储器2上并可在所述处理器3上运行的计算机程序,所述处理器3执行所述计算机程序时实现以下步骤:

s1、创建对字进行编辑的文本编辑框预制体以及存储每一个字及所述字对应的属性信息的字表,每接收到输入文本输入框的字时,将所述字添加入所述字表;

根据文本输入框中文本内容的长度的改变判断是添加字、替换字还是删除字,若是添加字或替换字,则执行步骤s2;若是删除字,则执行步骤s4;

其中,所述根据文本输入框中文本内容的长度的改变判断是添加字、替换字还是删除字包括:

若文本输入框中文本内容的长度不变,则是替换字;若文本输入框中文本内容的长度变大,则是添加字;若文本输入框中文本内容的长度变小,则是删除字;

s2、接收通过文本编辑框对输入文本输入框中的字进行编辑的编辑信息,根据所述编辑信息对所述字表中对应的字的属性进行修改,并同步显示属性修改后的字;

s3、将所述属性修改后的字填入文本编辑框中对应的位置;

具体的,判断所述属性修改后的字是替换的字还是添加的字,若是替换的字,则将所述属性修改后的字替换文本编辑框中对应的字;若是添加的字,则将所述属性修改后的字填入文本输入框中光标所在的位置之后;

s4、接收删除文本输入框中的字的请求,根据所述请求,删除文本输入框中对应的字,同时在所述字表中删除存储的对应的字及其属性信息。

实施例三

将上述基于unity的字编辑方法应用于具体的场景:

s1、创建对字进行编辑的文本编辑框预制体以及存储每一个字及所述字对应的属性信息的字表,每接收到输入文本输入框的字时,将所述字添加入所述字表;

可以定义一个自定义类fontinfo,用来存储文字的信息,比如颜色、字体、是否加粗、是否斜体等;

封装一个fontclass类,里面包含整个字编辑所包含的信息:如一个list<fontinfo>集合,即字表,用来存储各个字及字对应的属性信息、字背景框、图片集合(用来保存图片地址和图片对应的信息,比如图片大小、宽高等)、对齐方式、展示效果等,其中所述展示效果包括涟漪出现、淡入淡出、由小变大等;

定义一个fonteditor类,用来对字的状态进行修改,如文字的大小、文字的颜色、文字描边等;

根据文本输入框中文本内容的长度的改变判断是添加字、替换字还是删除字,若是添加字或替换字,则执行步骤s2;若是删除字,则执行步骤s4;

具体的,可以通过在文本输入框中添加一个监听文本输入框中的文本长度变化的fontchange方法,在该方法中,通过判断文本输入框中的文本内容的长度改变情况来判断是添加字、替换字还是删除字:若文本输入框中文本内容的长度不变,则是替换字;若文本输入框中文本内容的长度变大,则是添加字;若文本输入框中文本内容的长度变小,则是删除字;

s2、接收通过文本编辑框对输入文本输入框中的字进行编辑的编辑信息,根据所述编辑信息对所述字表中对应的字的属性进行修改,并同步显示属性修改后的字;

s3、将所述属性修改后的字填入文本编辑框中对应的位置;

具体的,判断所述属性修改后的字是替换的字还是添加的字,若是替换的字,则将所述属性修改后的字替换文本编辑框中对应的字;若是添加的字,则将所述属性修改后的字填入文本输入框中光标所在的位置之后;

s4、接收删除文本输入框中的字的请求,根据所述请求,删除文本输入框中对应的字,同时在所述字表中删除存储的对应的字及其属性信息;

如果是添加字,判断是否是第一个字(因为文本输入框中没有内容时计算的位置和有内容时计算的位置是不一样的),若是,则在fontinfo集合中的第一个位置插入添加的字信息,并且根据文本编辑框上的信息给该字的属性进行赋值,如文字自豪、文字颜色等;如果不是第一个字,则根据文本输入框返回的光标位置解析富文本后得到应该插入的位置,根据所述位置,在fontinfo集合中相应的位置将字信息插入;

如果是选取多个字进行删除或者替换,则根据文本输入框返回的光标的起始位置和结束位置,计算出fontinfo集合中对应的位置,如果是删除字,则调用list的remove(删除集合内容方法)清除集合里对应位置的内容,如果是替换,则在做完删除操作后,进行添加操作;

如果是选取多个字进行字属性的修改,比如颜色或者字号大小修改等操作,则根据文本输入框返回的光标的启示位置和结束位置,计算出fontinfo集合中对应的位置,然后修改该集合中对应位置的字的属性;

在fontinfo集合中对应的字进行属性修改后,将其序列化成富文本,unity中支持在同一个文本输入框中用富文本表现出不同文字的效果;

最后将序列化得到的富文本内容填入文本编辑框中对应的位置,如果是替换,则将序列化得到的富文本内容替换文本编辑框中对应的字;若是添加的字,则将序列化得到的富文本内容填入文本输入框中光标所在的位置之后。

综上所述,本发明提供的一种基于unity的字编辑方法及终端,通过创建对字进行编辑的文本编辑框预制体以及存储每一个字及所述字对应的属性信息的字表,每接收到输入文本输入框的字时,将所述字添加入所述字表,根据对文本输入框中的字的编辑信息,对字表中对应的字的属性进行修改,并同步显示属性修改后的字,能够在unity中实现对单个字的编辑,并且在编辑过程中能够同步显示编辑后的结果,实现一种所见即所得的效果,灵活性强,用户体验好。

以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

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