CN106528130A - 一种编辑按钮适配方法及装置 - Google Patents

一种编辑按钮适配方法及装置 Download PDF

Info

Publication number
CN106528130A
CN106528130A CN201610950917.7A CN201610950917A CN106528130A CN 106528130 A CN106528130 A CN 106528130A CN 201610950917 A CN201610950917 A CN 201610950917A CN 106528130 A CN106528130 A CN 106528130A
Authority
CN
China
Prior art keywords
edit button
editor
display object
paster
viewing area
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
CN201610950917.7A
Other languages
English (en)
Other versions
CN106528130B (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 CN201610950917.7A priority Critical patent/CN106528130B/zh
Publication of CN106528130A publication Critical patent/CN106528130A/zh
Application granted granted Critical
Publication of CN106528130B publication Critical patent/CN106528130B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请提供了一种编辑按钮适配方法及装置,编辑按钮适配方法包括:展示显示区,显示区显示有至少一个显示对象;接收显示对象的编辑操作请求,并响应编辑操作请求,对显示对象进行编辑;检测编辑后的显示对象的编辑按钮是否超出显示区的边界;若检测结果为编辑后的显示对象的编辑按钮超出显示区的边界,则在编辑后的显示对象在所述显示区内的显示范围内,重新绘制显示对象的编辑按钮。在本申请中,通过以上方式将显示对象的编辑按钮自适应到显示区内,保证显示对象的编辑按钮处于显示区内,并能够被用户正常使用,从而避免编辑按钮无法被使用的情况发生。

Description

一种编辑按钮适配方法及装置
技术领域
本申请涉及软件领域,特别涉及一种编辑按钮适配方法及装置。
背景技术
为了满足用户操作的便利化或个性化,在图形或文档编辑界面,允许用户对显示对象进行一些编辑动作(如删除、旋转或缩放)。其中,为方便用户对显示对象进行编辑动作,常在显示对象上设置编辑按钮,用户通过编辑按钮对显示对象进行不同的操作。
但是,当用户在编辑显示对象过程中,显示对象因为被移动、放大或被旋转而全部或部分处于显示区之外时,编辑按钮也会随之被移出到显示区外,导致编辑按钮无法被使用。
发明内容
为解决上述技术问题,本申请实施例提供一种编辑按钮适配方法及装置,以达到将显示对象的编辑按钮自适应到显示区内,保证显示对象的编辑按钮处于显示区内,并能够被用户正常使用,从而避免编辑按钮无法被使用的情况发生的目的,技术方案如下:
一种编辑按钮适配方法,包括:
展示显示区,所述显示区显示有至少一个显示对象;
接收所述显示对象的编辑操作请求,并响应所述编辑操作请求,对所述显示对象进行编辑;
检测编辑后的显示对象的编辑按钮是否超出所述显示区的边界;
若检测结果为所述编辑后的显示对象的编辑按钮超出所述显示区的边界,则在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮。
一种编辑按钮适配装置,包括:
展示模块,用于展示显示区,所述显示区显示有至少一个显示对象;
编辑模块,用于接收所述显示对象的编辑操作请求,并响应所述编辑操作请求,对所述显示对象进行编辑;
检测模块,用于检测编辑后的显示对象的编辑按钮是否超出所述显示区的边界,若检测结果为所述编辑后的显示对象的编辑按钮超出所述显示区的边界,则执行绘制模块在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮。
与现有技术相比,本申请的有益效果为:
在本申请中,通过展示显示区,所述显示区显示有至少一个显示对象;接收所述显示对象的编辑操作请求,并响应所述编辑操作请求,对所述显示对象进行编辑;检测编辑后的显示对象的编辑按钮是否超出所述显示区的边界;若检测结果为所述编辑后的显示对象的编辑按钮超出所述显示区的边界,则在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮,将显示对象的编辑按钮自适应到显示区内,保证显示对象的编辑按钮处于显示区内,并能够被用户正常使用,从而避免编辑按钮无法被使用的情况发生。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请提供的编辑按钮适配方法的一种流程图;
图2(a)是编辑前的显示对象对应的显示区的一种示意图,图2(b)是编辑后的显示对象对应的显示区的一种示意图;
图3是本申请提供的编辑按钮适配方法的一种子流程图;
图4是本申请提供的旋转坐标系的角度关系示意图;
图5是本申请提供的编辑按钮适配方法的另一种子流程图;
图6是本申请提供的编辑按钮适配方法的另一种流程图;
图7是本申请提供的贴纸编辑界面的一种示意图;
图8(a)是选择界面的一种示意图,图8(b)是贴纸编辑界面的一种示意图,图8(c)是发布界面的一种示意图;
图9(a)是编辑区的一种示意图,图9(b)是对贴纸进行编辑的一种操作示意图;
图10是本申请提供的编辑区所在坐标系的一种示意图;
图11(a)是贴纸在编辑区的显示范围在编辑区的坐标系下的一种坐标示意图,图11(b)是编辑按钮与贴纸在编辑区的显示范围的位置关系示意图;
图12(a)是贴纸的编辑按钮的左上顶点的坐标(xlt,ylt)对应的实数点的一种范围示意图,图12(b)是贴纸的编辑按钮的左上顶点的坐标(xlt,ylt)对应的实数点的另一种范围示意图;
图13是本申请提供的编辑按钮适配装置的一种逻辑结构示意图;
图14是本申请提供的编辑按钮适配设备的硬件结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例一
请参见图1,其示出了本申请提供的编辑按钮适配方法的一种流程图,可以包括以下步骤:
步骤S101:展示显示区,所述显示区显示有至少一个显示对象。
步骤S102:接收所述显示对象的编辑操作请求,并响应所述编辑操作请求,对所述显示对象进行编辑。
步骤S103:检测编辑后的显示对象的编辑按钮是否超出所述显示区的边界。
若检测结果为编辑后的显示对象的编辑按钮超出所述显示区的边界,则执行步骤S104。
步骤S104:在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮。
在本申请中,通过展示显示区,所述显示区显示有至少一个显示对象;接收所述显示对象的编辑操作请求,并响应所述编辑操作请求,对所述显示对象进行编辑;检测编辑后的显示对象的编辑按钮是否超出所述显示区的边界;若检测结果为所述编辑后的显示对象的编辑按钮超出所述显示区的边界,则在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮,将显示对象的编辑按钮自适应到显示区内,保证显示对象的编辑按钮处于显示区内,并能够被用户正常使用,从而避免编辑按钮无法被使用的情况发生。
现举例对执行步骤S101至步骤S104之后,显示对象的编辑按钮自适应至显示区内的过程进行说明,如图2(a)所示,显示区的原始状态为:显示区显示有一个显示对象即包含文字“机智如我”的图片,且包含文字“机智如我”的图片的其中一个编辑按钮为左上角的删除按钮。在接收显示对象的向左平移的操作请求后,响应向左平移的操作请求,对显示对象即包含文字“机智如我”的图片进行向左平移的编辑动作,在完成向左平移的编辑动作后,确定编辑后的显示对象在显示区内的显示范围,检测向左平移后的显示对象左上角的删除按钮是否超出显示区的边界,若检测结果为向左平移后的显示对象左上角的删除按钮超出显示区的边界,如图2(b)所示,则在向左平移后的显示对象在显示区内的显示范围内,重新绘制显示对象的删除按钮。
在本实施例中,检测编辑后的显示对象的编辑按钮是否超出所述显示区的边界的过程请参见图3,可以包括以下步骤:
步骤S1031:获取编辑后的显示对象的编辑按钮的当前坐标。
在本实施例中,获取编辑后的显示对象的编辑按钮的当前坐标具体可以但不局限于为以下过程:
获取编辑前的显示对象的编辑按钮的原始坐标;
检测显示对象在编辑前、后的平移距离;
根据编辑前的显示对象的编辑按钮的原始坐标和显示对象在编辑前、后的平移距离,获取编辑后的显示对象的编辑按钮的当前坐标。
其中,在编辑操作请求为移动操作请求时,直接在显示区的坐标系下获取编辑后的显示对象的编辑按钮的当前坐标即可。
当然,在编辑操作请求为旋转操作请求时,响应旋转操作请求,会对显示对象进行旋转操作。由于对显示对象进行旋转操作是通过旋转显示对象坐标系实现的,因此显示对象被旋转后,显示对象的坐标系旋转后,与编辑区的坐标系不在同一个坐标系,这种情况下,不能直接获取编辑后的显示对象的编辑按钮的当前坐标,而是首先需要保证编辑后的显示对象的编辑按钮的当前坐标的坐标系与编辑区的坐标系相同,对应的获取编辑后的显示对象的编辑按钮的当前坐标的具体过程如下:
确定所述编辑后的显示对象的坐标系;
获取所述编辑后的显示对象的编辑按钮在所确定的坐标系下的坐标;
将所获取的坐标转换为在所述显示区的坐标系下的坐标,得到所述编辑后的显示对象的编辑按钮的当前坐标。
其中,将所获取的坐标转换为在所述显示区的坐标系下的坐标具体可以利用通过矩阵类Matrix的mapRect方法进行坐标的转换。
当然,也可以利用直角坐标系旋转公式将所获取的坐标转换为在所述显示区的坐标系下的坐标。具体的,直角坐标系旋转公式为:x'=x*cos(n)+y*sin(n)、y'=-x*sin(n)+y*cos(n),n是旋转的角度,即将原坐标系旋转角度n后,形成新的坐标系,x'和y'为新的坐标系下点的坐标,x和y为该点在原来坐标系下的坐标。在本实施例中,原坐标系即编辑后的显示对象的坐标系,新的坐标系即所述显示区的坐标系。其中,原坐标系和新的坐标系及两者之间的角度关系可以参见图4。
步骤S1032:判断所述编辑后的显示对象的编辑按钮的当前坐标,是否在预设坐标取值区间内。
在本实施例中,编辑后的显示对象的编辑按钮若要完整的显示在显示区内,可以通过限定编辑后的显示对象的编辑按钮的坐标的范围来实现,具体实现过程为:针对编辑后的显示对象的编辑按钮的坐标,设定一个保证编辑后的显示对象的编辑按钮能够完整的显示在显示区内的坐标取值区间即预设坐标取值区间。只要编辑后的显示对象的编辑按钮的当前坐标在预设坐标取值区间内,则说明编辑后的显示对象的编辑按钮未超出显示区的边界;若编辑后的显示对象的编辑按钮的当前坐标不在预设坐标取值区间内,则说明编辑后的显示对象的编辑按钮超出了显示区的边界。
在本实施例中,由于显示对象和显示区均为平面对象,因此编辑后的显示对象的编辑按钮的当前坐标为平面坐标,因此判断编辑后的显示对象的编辑按钮的当前坐标,是否在预设坐标取值区间内具体则为:判断所述编辑后的显示对象的编辑按钮的当前坐标中的横坐标值是否在预设横坐标取值区间内,且所述编辑后的显示对象的编辑按钮的当前坐标中的纵坐标值是否在预设纵坐标取值区间内。
但是,在本实施例中,并不限制显示对象和显示区仅为平面对象,在技术支持的情况下,显示对象和显示区可以其他类型的对象(如三维对象)。
在判断所述编辑后的显示对象的编辑按钮的当前坐标,是否在预设坐标取值区间内具体为:判断所述编辑后的显示对象的编辑按钮的当前坐标中的横坐标值是否在预设横坐标取值区间内,且所述编辑后的显示对象的编辑按钮的当前坐标中的纵坐标值是否在预设纵坐标取值区间内时,若检测结果为所述编辑后的显示对象的编辑按钮超出所述显示区的边界,则在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮具体可以包括:
若所述编辑后的显示对象的编辑按钮的当前坐标中的横坐标值未在预设横坐标取值区间内;
和/或,所述编辑后的显示对象的编辑按钮的当前坐标中的纵坐标值未在预设纵坐标取值区间内,则在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮。
其中,若所述编辑后的显示对象的编辑按钮的当前坐标中的横坐标值未在预设横坐标取值区间内;和/或,所述编辑后的显示对象的编辑按钮的当前坐标中的纵坐标值未在预设纵坐标取值区间内,说明编辑后的显示对象的编辑按钮的当前坐标中的横坐标值和纵坐标值中的任意一个坐标值未在其对应的坐标取值区间内,则说明编辑后的显示对象的编辑按钮超出了显示区的边界,则需要在编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮。
在上述方法步骤中,在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮的过程具体可以参见图5,可以包括以下步骤:
步骤S501:在所述编辑后的显示对象在所述显示区内的显示范围内选定一点作为所述显示对象的编辑按钮的中心坐标。
步骤S502:以所述显示对象的编辑按钮的中心坐标为基准,绘制与所述显示对象的编辑按钮匹配的按钮图形。
步骤S503:将所绘制的按钮图形,与所述显示对象的编辑按钮所对应的功能函数相关联。
在本实施例中,通过执行步骤S501至步骤S503,完成对显示对象的编辑按钮的重新绘制,保证重新绘制的显示对象的编辑按钮的形状和实现功能与被移出显示区的编辑按钮的形状和实现功能相同。
实施例二
在本实施例中,上述显示对象具体可以为文档页面(如word页面或txt页面),相应的,上述显示区为文档页面所在的显示桌面。文档页面的编辑按钮(如最小化按钮、最大化/还原按钮、关闭按钮)在被移出显示桌面时,可以通过执行上述方法步骤,在不拖动文档页面的前提下,实现文档页面的编辑按钮自适应到文档页面在显示桌面的显示范围内。
当然,上述显示对象具体可以但不局限于为贴纸。相应的,上述显示区为贴纸编辑界面的编辑区。如图6所示,其示出了贴纸的编辑按钮适配方法的一种流程图,可以包括以下步骤:
步骤S601:展示贴纸编辑界面的编辑区,所述编辑区显示有至少一个贴纸。
步骤S602:接收所述贴纸的编辑操作请求,并响应所述编辑操作请求,对所述贴纸进行编辑。
步骤S603:检测编辑后的贴纸的编辑按钮是否超出所述编辑区的边界。
若检测结果为所述编辑后的贴纸的编辑按钮超出所述编辑区的边界,则执行步骤S604。
步骤S604:在所述编辑后的贴纸在所述编辑区内的显示范围内,重新绘制所述贴纸的编辑按钮。
由于贴纸是对实施例一中的显示对象的一种具体限定,因此实施例一中的步骤S101至步骤S104的具体实现过程同样适用于贴纸,即步骤S601至步骤S604的具体实现过程与实施例一中图1示出的步骤S101至步骤S104的具体实现过程相同,在此不再赘述。
在本实施例中,贴纸具体可以为:表情图片、气泡(即一种用来表示人物对话的可输入文字的特殊贴纸)或字体(即系统提供不同的字体供用户选择来输入文字,属于一种特殊类型的贴纸)。
在贴纸编辑界面上可以对贴纸和主图(即用户预要发布的原图,作为背景图)进行合成,实现用户发图的个性化要求。其中,贴纸编辑界面可以参见图7,如图7所示,贴纸编辑界面包括:其他操作区:可点击切换编辑区或者增加一张图片;贴纸编辑区域(即编辑区):即为添加主图及用户编辑贴纸的区域。编辑界面为每张主图生成一个编辑区,可左右滑动或点击操作区的缩略图切换不同编辑区;贴图(即贴纸)选择区域:装载不同类型的贴纸、气泡或字体,用户可点击添加到编辑区域;贴图类型。
在贴纸编辑界面上对贴纸和主图进行合成的过程如下:用户从选择界面(如图8(a))的相册中选择一张或者多张图片进入编辑界面(如图8(b)),在编辑界面中可点击表情图片、气泡或者字体添加到主图中进行编辑,同时也可以点击标题栏上的“加号”按钮添加更多主图,编辑完成时,点继续按钮开始合成图片,合成后的图片可以通过发布界面(如图8(c))进行发布。
其中,在编辑区对贴纸进行编辑的操作具体可以为:移动、放大缩小、旋转。在编辑区对贴纸进行编辑的过程具体可以为:贴纸在编辑区的显示范围(如图9(a)所示的黑色矩形区域的左上顶点)上有“删除”按钮,单击该按钮可将贴纸删除;贴纸在编辑区的显示范围的右下顶点有“变形”按钮,用户单指按住该按钮时做顺时针或逆时针旋转可将贴纸按同方向旋转;用户单指按钮“变形”按钮时向贴纸中心内移动可将贴纸按移动距离比例缩小;用户单指按住“变形”按钮时沿贴纸中心向外移动可将贴纸按移动距离比例放大;用户单指按住贴纸在编辑区的显示范围内的贴纸并移动手指时,贴纸将跟随手指移动位置移动;双指按在贴纸内并同时向内移动手指可将贴纸按移动比例缩小;双指按在贴纸内并同时向外移动手指可将贴纸按移动比例放大。双指操作贴纸缩小或放大的操作示意图请参见图9(b)。
通过执行上述方法步骤,无论对贴纸进行何种编辑,均可以使贴纸的编辑按钮能够自适应到贴纸编辑界面的编辑区。
其中,在显示对象包括:贴纸;所述显示区为所述贴纸编辑界面的编辑区时,上述预设横坐标取值区间为[0,W-w1],所述预设纵坐标取值区间为[0,H-w1],所述W为所述编辑区的宽度值,所述H为所述编辑区的高度值,所述w1为所述贴纸的编辑按钮在所述编辑区内的显示范围的边长,所述w1大于0且小于W且小于H,且所述贴纸的编辑按钮在所述编辑区内的显示范围为正方形区域,所述编辑区为矩形区域,其中,矩形区域具体可以为长方形或正方形。
相应的,编辑后的显示对象的编辑按钮的当前坐标限定为编辑后的贴纸的编辑按钮在所述编辑区内的显示范围的左上顶点的当前坐标。
在上述预设横坐标取值区间为[0,W-w1],所述预设纵坐标取值区间为[0,H-w1]时,上述检测编辑后的显示对象的编辑按钮是否超出所述显示区的边界具体则为:判断编辑后的贴纸的编辑按钮在所述编辑区内的显示范围的左上顶点的当前坐标中的横坐标值是否在[0,W-w1]内,且编辑后的贴纸的编辑按钮在所述编辑区内的显示范围的左上顶点的当前坐标中的纵坐标值是否在[0,H-w1]内。
若编辑后的贴纸的编辑按钮在所述编辑区内的显示范围的左上顶点的当前坐标中的横坐标值未在[0,W-w1]内,和/或,编辑后的贴纸的编辑按钮在所述编辑区内的显示范围的左上顶点的当前坐标中的纵坐标值未在[0,H-w1]内,说明编辑后的贴纸的编辑按钮超出了编辑区的边界,则在编辑后的贴纸在编辑区内的显示范围内,重新绘制贴纸的编辑按钮。
在本实施例中,贴纸的编辑按钮具体为删除按钮和/或旋转按钮和/或缩放按钮。删除按钮、旋转按钮和缩放按钮分别设置在贴纸在编辑区内的显示范围的不同位置但需要保证各个按钮之间不重叠,具体可以设置在贴纸在编辑区内的显示范围的不同顶点或不同边上或相同边上的不同位置。其中,旋转按钮和缩放按钮可以集成为一个按钮,同时具备旋转和缩放两种功能。
在本实施例中,预设横坐标取值区间为[0,W-w1],所述预设纵坐标取值区间为[0,H-w1],及编辑后的显示对象的编辑按钮的当前坐标限定为编辑后的贴纸的编辑按钮在所述编辑区内的显示范围的左上顶点的当前坐标的设置原理如下:
(1)以编辑区所在坐标系为正坐标系,记编辑区的宽度值为W,高度值为H,编辑区为矩形区域,以所述编辑区的左上顶点为原点,以所述原点为基准向右方向为x轴正方向,以所述原点为基准向下方向为y轴正方向,如图10所示,编辑区的四个顶点的坐标分别为:(0,0)、(W,0)、(0,H)、(W,H)。
(2)对贴纸的某一个编辑按钮的坐标的获取:
若贴纸包括多个编辑按钮,但贴纸的各个编辑按钮的坐标的获取过程相同,因此仅对贴纸的某一个编辑按钮的坐标的获取过程进行说明,在本实施例中,以贴纸的左上顶点(即贴纸在编辑区内的显示范围内的左上顶点)的编辑按钮为例,如图11(a)所示,黑色圆点1和黑色圆点2均为编辑按钮,黑色圆点1为贴纸的左上顶点的编辑按钮,黑色圆点1所在的矩形区域为贴纸在编辑区内的显示范围,贴纸在编辑区内的显示范围的四个顶点的坐标分别记为(x1,y),(x2,y),(x1,y0),(x2,y0)。
如图11(b)所示,黑色圆点1实为黑色虚线矩形(即贴纸的编辑按钮在编辑区的显示范围)的内切圆,黑色虚线矩形以贴纸在编辑区的显示范围的相应顶点为中心进行绘制。记黑色虚线矩形为宽高皆为w1的正方形,则:贴纸的左上顶点的编辑按钮(即贴纸在编辑区的显示范围的左上顶点处的编辑按钮)的坐标即贴纸在编辑区的显示范围的左上顶点的黑色虚线矩形的四个顶点坐标的计算方法为:左上按钮黑色虚线矩形的四点坐标计算方法为:
根据贴纸在编辑区的显示范围的左上顶点坐标(x1,y)及黑色虚线矩形边距w1,确定左上按钮黑色虚线矩形的左上顶点坐标(xlt,ylt),再根据边距w1确定左上按钮黑色虚线矩形的其他三点坐标,具体如下:
左上顶点坐标计算公式:xlt=x1-w1/2,ylt=y-w1/2
右上顶点坐标计算公式:(xlt+w1,ylt)
左下顶点坐标计算公式:(xlt,ylt+w1)
右下顶点坐标计算公式:(xlt+w1,ylt+w1)
(3)根据编辑区的大小和贴纸在编辑区的显示范围与编辑区的大小关系,确定贴纸在编辑区的显示范围的最小坐标为(0,0),最大坐标为(W,H)。根据贴纸在编辑区的显示范围的最小坐标为(0,0),最大坐标为(W,H),及左上顶点坐标计算公式:xlt=x1-w1/2,ylt=y-w1/2,计算xlt的最大取值区间为[-w1/2,W-w1/2];ylt的最大取值区间为[-w1/2,H-w1/2]。在xlt的最大取值区间为[-w1/2,W-w1/2];ylt的最大取值区间为[-w1/2,H-w1/2]时,贴纸的编辑按钮的左上顶点的坐标(xlt,ylt)对应的实数点的范围为图12(a)所示的黑色虚线矩形。
如图12(a)所示,依据所述xltxlt的最大取值区间为[-w1/2,W-w1/2]以及所述yltylt的最大取值区间为[-w1/2,H-w1/2],确定当贴纸的编辑按钮的左上顶点的坐标(xlt,ylt)出现在-w1/2<=xlt<0及W-w1<xlt<=W-w1/2;或者-w1/2<=ylt<0及H-w1<ylt<=H-w1/2时,贴纸的左上顶点的按钮将会部分处于编辑区外。为确保贴纸的左上顶点的按钮全部绘制在编辑区内,则贴纸的编辑按钮的左上顶点的坐标(xlt,ylt)对应的实数点应当全部包含在图12(b)所示的黑色虚线矩形内。
如图12(b)所示的黑线虚线矩形,将xlt的取值区间限定为[0,W-w1],ylt的取值区间限定为[0,H-w1],即在所述xlt的最大取值区间[-w1/2,W-w1/2]中,排除所述xlt在所述待绘制编辑按钮处于所述编辑区外时对应的取值区间-w1/2<=xlt<0及W-w1<xlt<=W-w1/2,得到所述预设横坐标取值区间为[0,W-w1];在所述ylt的最大取值区间[-w1/2,H-w1/2]中,排除所述ylt在所述待绘制编辑按钮处于所述编辑区外时对应的取值区间-w1/2<=ylt<0及H-w1<ylt<=H-w1/2,得到所述预设纵坐标取值区间为[0,H-w1]。
同理可得贴纸的其他编辑按钮的左上顶点的坐标的取值区间也限定为[0,W-w1]和[0,H-w1]。
在本实施例中,在对贴纸进行编辑的过程中,为保证贴纸不被全部移出编辑区且仍能通过编辑按钮进行相应操作,还可以执行以下操作:
在检测到所述贴纸在所述编辑区的显示范围的边距为所述贴纸的编辑按钮在所述显示区内的显示范围的边长(即w1)时,控制所述贴纸处于固定状态;
或,在检测到所述贴纸在所述编辑区的显示范围的边距为2倍的所述贴纸的编辑按钮在所述显示区内的显示范围的边长(即2w1)时,控制所述贴纸处于固定状态。
其中,在检测到所述贴纸在所述编辑区的显示范围的边距为所述贴纸的编辑按钮在所述显示区内的显示范围的边长(即w1)时,控制贴纸处于固定状态,贴纸无法再移动,即将贴纸在编辑区的显示范围的最小边距设定为w1,当贴纸在编辑区的显示范围的边距到达w1时,贴纸将不能再被移动。将贴纸在编辑区的显示范围的最小边距设定为w1,允许贴纸上最多包括两个编辑按钮(如左上顶点的编辑按钮和右下顶点的编辑按钮)。不过在将贴纸在编辑区的显示范围的最小边距设定为w1时,在产品体验上存在一些问题如当贴纸在编辑区的显示范围的面积大小为w1*w1时,贴纸在编辑区的显示范围基本被编辑按钮占据,手指很难触摸到非编辑按钮的区域,即很难通过手指按到贴纸在编辑区的显示范围上移动贴纸。以及,在某一个编辑按钮超出编辑区的编辑后,将编辑按钮自适应到编辑区时有可能出现编辑按钮重叠。
为了解决上述产品体验问题及方便产品的扩展,对贴纸在编辑区的显示范围的最小边距w1进行改进,具体改进方式为:将贴纸在编辑区的显示范围的最小边距设定为2w1。
在将贴纸在编辑区的显示范围的最小边距设定为2w1时,可以当贴纸的四个顶点均有编辑按钮时,让能保证贴纸在编辑区的显示范围的每个边上都能显示2个编辑按钮,且任意两个编辑按钮之间不会重叠。由于任意两个编辑按钮之间不会重叠即各个编辑按钮相互独立,方便用户触摸非编辑按钮的区域,减少编辑按钮误触。
实施例三
与上述方法实施例相对应,本实施例提供了一种编辑按钮适配装置,请参见图13,编辑按钮适配装置包括:展示模块131、编辑模块132、检测模块133和绘制模块134。
展示模块131,用于展示显示区,所述显示区显示有至少一个显示对象。
编辑模块132,用于接收所述显示对象的编辑操作请求,并响应所述编辑操作请求,对所述显示对象进行编辑。
检测模块133,用于检测编辑后的显示对象的编辑按钮是否超出所述显示区的边界,若检测结果为所述编辑后的显示对象的编辑按钮超出所述显示区的边界,则执行绘制模块134在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮。
在本实施例中,检测模块133具体可以包括:获取单元和判断单元。
获取单元,用于获取所述编辑后的显示对象的编辑按钮的当前坐标。
在所述编辑操作请求为旋转操作请求时,所述获取单元可以包括:确定子单元、获取子单元和转换子单元。
确定子单元,用于确定所述编辑后的显示对象的坐标系。
获取子单元,用于获取所述编辑后的显示对象的编辑按钮在所确定的坐标系下的坐标。
转换子单元,用于将所获取的坐标转换为在所述显示区的坐标系下的坐标,得到所述编辑后的显示对象的编辑按钮的当前坐标。
判断单元,用于判断所述编辑后的显示对象的编辑按钮的当前坐标,是否在预设坐标取值区间内。
其中,判断单元具体可以包括:判断子单元,用于判断所述编辑后的显示对象的编辑按钮的当前坐标中的横坐标值是否在预设横坐标取值区间内,且所述编辑后的显示对象的编辑按钮的当前坐标中的纵坐标值是否在预设纵坐标取值区间内。
在上述编辑按钮适配装置中,绘制模块134具体可以包括:第一绘制单元,用于若所述编辑后的显示对象的编辑按钮的当前坐标中的横坐标值未在预设横坐标取值区间内,和/或,所述编辑后的显示对象的编辑按钮的当前坐标中的纵坐标值未在预设纵坐标取值区间内,则在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮。
在上述编辑按钮适配装置中,绘制模块134具体可以包括:选定单元、第二绘制单元和关联单元。
选定单元,用于在所述编辑后的显示对象在所述显示区内的显示范围内选定一点作为所述显示对象的编辑按钮的中心坐标。
第二绘制单元,用于以所述显示对象的编辑按钮的中心坐标为基准,绘制与所述显示对象的编辑按钮匹配的按钮图形。
关联单元,用于将所绘制的按钮图形,与所述显示对象的编辑按钮所对应的功能函数相关联。
需要说明的是,选定单元、第二绘制单元和关联单元可以包括在上述第一绘制单元中,用于实现在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮的功能。
在上述编辑按钮适配装置中,所述显示对象包括:贴纸;所述显示区为贴纸编辑界面的编辑区。
与显示对象包括:贴纸;所述显示区为贴纸编辑界面的编辑区相对应,所述预设横坐标取值区间为[0,W-w1],所述预设纵坐标取值区间为[0,H-w1],所述W为所述编辑区的宽度值,所述H为所述编辑区的高度值,所述w1为所述贴纸的编辑按钮在所述编辑区内的显示范围的边长,所述w1大于0且小于W且小于H,且所述贴纸的编辑按钮在所述编辑区内的显示范围为正方形区域,所述编辑区为矩形区域;
所述编辑后的显示对象的编辑按钮的当前坐标为所述编辑后的贴纸的编辑按钮在所述编辑区内的显示范围的左上顶点的当前坐标。
在本实施例中,上述编辑按钮适配装置还包括:第一控制模块或第二控制模块。
第一控制模块,用于在检测到所述贴纸在所述编辑区的显示范围的边距为所述贴纸的编辑按钮在所述显示区内的显示范围的边长时,控制所述贴纸处于固定状态。
第二控制模块,用于在检测到所述贴纸在所述编辑区的显示范围的边距为2倍的所述贴纸的编辑按钮在所述显示区内的显示范围的边长时,控制所述贴纸处于固定状态。
本发明实施例还提供了一种编辑按钮适配设备,该编辑按钮适配设备可以包括上述编辑按钮适配装置,请参见图14,其示出了编辑按钮适配设备的硬件结构,编辑按钮适配设备可以包括:处理器1,通信接口2,存储器3和通信总线4;
其中处理器1、通信接口2、存储器3通过通信总线4完成相互间的通信;
可选的,通信接口2可以为通信模块的接口,如GSM模块的接口;
处理器1,用于执行程序;
存储器3,用于存放程序;
程序可以包括程序代码,所述程序代码包括计算机操作指令;
处理器1可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。
存储器3可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
其中,程序可具体用于:展示显示区,所述显示区显示有至少一个显示对象;接收所述显示对象的编辑操作请求,并响应所述编辑操作请求,对所述显示对象进行编辑;检测编辑后的显示对象的编辑按钮是否超出所述显示区的边界;若检测结果为所述编辑后的显示对象的编辑按钮超出所述显示区的边界,则在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的一种编辑按钮适配方法及装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (18)

1.一种编辑按钮适配方法,其特征在于,包括:
展示显示区,所述显示区显示有至少一个显示对象;
接收所述显示对象的编辑操作请求,并响应所述编辑操作请求,对所述显示对象进行编辑;
检测编辑后的显示对象的编辑按钮是否超出所述显示区的边界;
若检测结果为所述编辑后的显示对象的编辑按钮超出所述显示区的边界,则在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮。
2.根据权利要求1所述的方法,其特征在于,检测所述编辑后的显示对象的编辑按钮是否超出所述显示区的边界的过程,包括:
获取所述编辑后的显示对象的编辑按钮的当前坐标;
判断所述编辑后的显示对象的编辑按钮的当前坐标,是否在预设坐标取值区间内。
3.根据权利要求2所述的方法,其特征在于,判断所述编辑后的显示对象的编辑按钮的当前坐标,是否在预设坐标取值区间内包括:
判断所述编辑后的显示对象的编辑按钮的当前坐标中的横坐标值是否在预设横坐标取值区间内,且所述编辑后的显示对象的编辑按钮的当前坐标中的纵坐标值是否在预设纵坐标取值区间内。
4.根据权利要求3所述的方法,其特征在于,若检测结果为所述编辑后的显示对象的编辑按钮超出所述显示区的边界,则在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮包括:
若所述编辑后的显示对象的编辑按钮的当前坐标中的横坐标值未在预设横坐标取值区间内,和/或,所述编辑后的显示对象的编辑按钮的当前坐标中的纵坐标值未在预设纵坐标取值区间内,则在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮。
5.根据权利要求2所述的方法,其特征在于,在所述编辑操作请求为旋转操作请求时,所述获取所述编辑后的显示对象的编辑按钮的当前坐标包括:
确定所述编辑后的显示对象的坐标系;
获取所述编辑后的显示对象的编辑按钮在所确定的坐标系下的坐标;
将所获取的坐标转换为在所述显示区的坐标系下的坐标,得到所述编辑后的显示对象的编辑按钮的当前坐标。
6.根据权利要求1-5任意一项所述的方法,其特征在于,在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮的过程,包括:
在所述编辑后的显示对象在所述显示区内的显示范围内选定一点作为所述显示对象的编辑按钮的中心坐标;
以所述显示对象的编辑按钮的中心坐标为基准,绘制与所述显示对象的编辑按钮匹配的按钮图形;
将所绘制的按钮图形,与所述显示对象的编辑按钮所对应的功能函数相关联。
7.根据权利要求6所述的方法,其特征在于,所述显示对象包括:贴纸;
所述显示区为贴纸编辑界面的编辑区。
8.根据权利要求7所述的方法,其特征在于,所述预设横坐标取值区间为[0,W-w1],所述预设纵坐标取值区间为[0,H-w1],所述W为所述编辑区的宽度值,所述H为所述编辑区的高度值,所述w1为所述贴纸的编辑按钮在所述编辑区内的显示范围的边长,所述w1大于0且小于W且小于H,且所述贴纸的编辑按钮在所述编辑区内的显示范围为正方形区域,所述编辑区为矩形区域;
所述编辑后的显示对象的编辑按钮的当前坐标为所述编辑后的贴纸的编辑按钮在所述编辑区内的显示范围的左上顶点的当前坐标。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:在检测到所述贴纸在所述编辑区的显示范围的边距为所述贴纸的编辑按钮在所述显示区内的显示范围的边长时,控制所述贴纸处于固定状态;
或,在检测到所述贴纸在所述编辑区的显示范围的边距为2倍的所述贴纸的编辑按钮在所述显示区内的显示范围的边长时,控制所述贴纸处于固定状态。
10.一种编辑按钮适配装置,其特征在于,包括:
展示模块,用于展示显示区,所述显示区显示有至少一个显示对象;
编辑模块,用于接收所述显示对象的编辑操作请求,并响应所述编辑操作请求,对所述显示对象进行编辑;
检测模块,用于检测编辑后的显示对象的编辑按钮是否超出所述显示区的边界,若检测结果为所述编辑后的显示对象的编辑按钮超出所述显示区的边界,则执行绘制模块在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮。
11.根据权利要求10所述的装置,其特征在于,所述检测模块包括:
获取单元,用于获取所述编辑后的显示对象的编辑按钮的当前坐标;
判断单元,用于判断所述编辑后的显示对象的编辑按钮的当前坐标,是否在预设坐标取值区间内。
12.根据权利要求11所述的装置,其特征在于,所述判断单元包括:
判断子单元,用于判断所述编辑后的显示对象的编辑按钮的当前坐标中的横坐标值是否在预设横坐标取值区间内,且所述编辑后的显示对象的编辑按钮的当前坐标中的纵坐标值是否在预设纵坐标取值区间内。
13.根据权利要求12所述的装置,其特征在于,所述绘制模块包括:
第一绘制单元,用于若所述编辑后的显示对象的编辑按钮的当前坐标中的横坐标值未在预设横坐标取值区间内,和/或,所述编辑后的显示对象的编辑按钮的当前坐标中的纵坐标值未在预设纵坐标取值区间内,则在所述编辑后的显示对象在所述显示区内的显示范围内,重新绘制所述显示对象的编辑按钮。
14.根据权利要求11所述的装置,其特征在于,在所述编辑操作请求为旋转操作请求时,所述获取单元包括:
确定子单元,用于确定所述编辑后的显示对象的坐标系;
获取子单元,用于获取所述编辑后的显示对象的编辑按钮在所确定的坐标系下的坐标;
转换子单元,用于将所获取的坐标转换为在所述显示区的坐标系下的坐标,得到所述编辑后的显示对象的编辑按钮的当前坐标。
15.根据权利要求10-14任意一项所述的装置,其特征在于,所述绘制模块包括:
选定单元,用于在所述编辑后的显示对象在所述显示区内的显示范围内选定一点作为所述显示对象的编辑按钮的中心坐标;
第二绘制单元,用于以所述显示对象的编辑按钮的中心坐标为基准,绘制与所述显示对象的编辑按钮匹配的按钮图形;
关联单元,用于将所绘制的按钮图形,与所述显示对象的编辑按钮所对应的功能函数相关联。
16.根据权利要求15所述的装置,其特征在于,所述显示对象包括:贴纸;
所述显示区为贴纸编辑界面的编辑区。
17.根据权利要求16所述的装置,其特征在于,所述预设横坐标取值区间为[0,W-w1],所述预设纵坐标取值区间为[0,H-w1],所述W为所述编辑区的宽度值,所述H为所述编辑区的高度值,所述w1为所述贴纸的编辑按钮在所述编辑区内的显示范围的边长,所述w1大于0且小于W且小于H,且所述贴纸的编辑按钮在所述编辑区内的显示范围为正方形区域,所述编辑区为矩形区域;
所述编辑后的显示对象的编辑按钮的当前坐标为所述编辑后的贴纸的编辑按钮在所述编辑区内的显示范围的左上顶点的当前坐标。
18.根据权利要求17所述的装置,其特征在于,还包括:
第一控制模块,用于在检测到所述贴纸在所述编辑区的显示范围的边距为所述贴纸的编辑按钮在所述显示区内的显示范围的边长时,控制所述贴纸处于固定状态;
或,第二控制模块,用于在检测到所述贴纸在所述编辑区的显示范围的边距为2倍的所述贴纸的编辑按钮在所述显示区内的显示范围的边长时,控制所述贴纸处于固定状态。
CN201610950917.7A 2016-10-26 2016-10-26 一种编辑按钮适配方法及装置 Active CN106528130B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610950917.7A CN106528130B (zh) 2016-10-26 2016-10-26 一种编辑按钮适配方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610950917.7A CN106528130B (zh) 2016-10-26 2016-10-26 一种编辑按钮适配方法及装置

Publications (2)

Publication Number Publication Date
CN106528130A true CN106528130A (zh) 2017-03-22
CN106528130B CN106528130B (zh) 2019-10-18

Family

ID=58325226

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610950917.7A Active CN106528130B (zh) 2016-10-26 2016-10-26 一种编辑按钮适配方法及装置

Country Status (1)

Country Link
CN (1) CN106528130B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111782202A (zh) * 2020-06-30 2020-10-16 京东数字科技控股有限公司 一种应用数据的编辑方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101741969A (zh) * 2008-11-07 2010-06-16 康佳集团股份有限公司 管理手机显示界面上多个控件的方法及其控件管理器
CN102012813A (zh) * 2010-11-24 2011-04-13 康佳集团股份有限公司 一种滑动条控件的实现方法
CN103618955A (zh) * 2013-11-08 2014-03-05 天津三星电子有限公司 电视机界面配置的实现方法及系统
CN105022618A (zh) * 2014-04-25 2015-11-04 Tcl集团股份有限公司 一种图形界面轮盘控件的实现方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101741969A (zh) * 2008-11-07 2010-06-16 康佳集团股份有限公司 管理手机显示界面上多个控件的方法及其控件管理器
CN102012813A (zh) * 2010-11-24 2011-04-13 康佳集团股份有限公司 一种滑动条控件的实现方法
CN103618955A (zh) * 2013-11-08 2014-03-05 天津三星电子有限公司 电视机界面配置的实现方法及系统
CN105022618A (zh) * 2014-04-25 2015-11-04 Tcl集团股份有限公司 一种图形界面轮盘控件的实现方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111782202A (zh) * 2020-06-30 2020-10-16 京东数字科技控股有限公司 一种应用数据的编辑方法和装置

Also Published As

Publication number Publication date
CN106528130B (zh) 2019-10-18

Similar Documents

Publication Publication Date Title
US9146660B2 (en) Multi-function affine tool for computer-aided design
EP2852882B1 (en) Method and apparatus of controlling user interface using touch screen
JP5492257B2 (ja) 電子機器、制御方法及びプログラム
WO2016145832A1 (zh) 终端的操作方法及装置
WO2015081898A1 (zh) 一种对桌面对象进行排序的方法及系统
JP6313395B1 (ja) 描画処理方法、描画処理プログラム及び描画処理装置
US20020149605A1 (en) System and method for manipulating an image on a screen
CN102298504A (zh) 一种放大显示方法和系统
WO2013028427A1 (en) Method of creating a snap point in a computer-aided design system
WO2013044735A1 (zh) 一种浏览器及浏览网页的方法
US20200326829A1 (en) Generating contextual guides
CN108681453A (zh) 地图引擎的实现方法及装置
JP2015018432A (ja) ジェスチャ入力装置
US11275501B2 (en) Creating tables using gestures
CN106648330A (zh) 人机交互的方法及装置
CN103885709B (zh) 用于便携式移动终端的网页缩放和浏览方法
CN104166508B (zh) 一种触控实现方法及装置
CN105988700B (zh) 终端屏幕显示方法及装置
CN106528130A (zh) 一种编辑按钮适配方法及装置
JP6695402B2 (ja) 表示システム、及び表示プログラム
JP6863918B2 (ja) 制御プログラム、制御方法及び情報処理装置
CN108845776B (zh) 一种控制方法和装置、存储介质
CN112558844A (zh) 一种基于平板电脑的医疗影像阅片方法及系统
US20210349625A1 (en) Using a touch input tool to modify content rendered on touchscreen displays
JP4130128B2 (ja) 図形表示方法及び図形処理装置

Legal Events

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