CN113157192B - 白板编辑方法、装置、电子设备及存储介质 - Google Patents
白板编辑方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113157192B CN113157192B CN202110272431.3A CN202110272431A CN113157192B CN 113157192 B CN113157192 B CN 113157192B CN 202110272431 A CN202110272431 A CN 202110272431A CN 113157192 B CN113157192 B CN 113157192B
- Authority
- CN
- China
- Prior art keywords
- editing
- whiteboard
- instructions
- instruction
- conflict
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000004891 communication Methods 0.000 claims description 41
- 239000011159 matrix material Substances 0.000 claims description 33
- 238000012545 processing Methods 0.000 claims description 18
- 238000004422 calculation algorithm Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 230000000694 effects Effects 0.000 abstract description 7
- 230000008569 process Effects 0.000 description 12
- 238000012217 deletion Methods 0.000 description 10
- 230000037430 deletion Effects 0.000 description 10
- 238000003780 insertion Methods 0.000 description 9
- 230000037431 insertion Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000002452 interceptive effect Effects 0.000 description 5
- 239000003086 colorant Substances 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 101000929942 Megasphaera elsdenii Acyl-CoA dehydrogenase, short-chain specific Proteins 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/147—Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- User Interface Of Digital Computer (AREA)
- Drawing Aids And Blackboards (AREA)
Abstract
本申请提供一种白板编辑方法、装置、电子设备及存储介质,该方法包括:对于在预设时长间隔内接收到的多个不同客户端发送的白板编辑指令,依据各白板编辑指令对应的编辑区域确定该多个白板编辑指令之间是否存在冲突;当该多个白板编辑指令之间存在冲突时,确定该多个白板编辑指令的冲突区域;对所述多个白板编辑指令中针对所述冲突区域的编辑指令进行更新,并对更新后的白板编辑指令进行下发,以使客户端基于接收到的更新后的白板编辑指令进行白板编辑。该方法可以优化多端冲突情况下的白板编辑效果。
Description
技术领域
本申请涉及电子白板互动管理技术领域,尤其涉及一种白板编辑方法、装置、电子设备及存储介质。
背景技术
电子白板是一种汇集了电子技术、软件技术等多种高科技手段的高新技术产品。
交互式电子白板可以与电脑进行信息通讯,将电子白板连接到计算机,并利用投影机将计算机上的内容投影到电子白板屏幕上,此功能一般需要一个专用的白板软件(可以称为白板客户端或客户端)支持。
目前,交互式电子白板可以支持多人协作编辑(可以称为多人协作白板场景),即多个客户端通过服务器建立连接,该多个客户端中任一客户端的白板编辑会同步给其他客户端。
然而实践发现,在上述多人协作白板场景中,通过不同客户端编辑的内容可能会产生冲突。例如,不同用户通过不同客户端同步对电子白板屏幕的同一区域进行操作,如用户A需要对区域a进行擦除,而用户B需要对区域a进行覆盖绘制。
如何在多端冲突的情况下实现白板编辑成为一个亟待解决的技术问题。
发明内容
有鉴于此,本申请提供一种白板编辑方法、装置、电子设备及存储介质。
根据本申请实施例的第一方面,提供一种白板编辑方法,包括:
对于在预设时长间隔内接收到的多个不同客户端发送的白板编辑指令,依据各白板编辑指令对应的编辑区域确定该多个白板编辑指令之间是否存在冲突;
当该多个白板编辑指令之间存在冲突时,确定该多个白板编辑指令的冲突区域;
对所述多个白板编辑指令中针对所述冲突区域的编辑指令进行更新,并对更新后的白板编辑指令进行下发,以使客户端基于接收到的更新后的白板编辑指令进行白板编辑;其中,所述多个不同客户端基于接收到的更新后的白板编辑指令进行编辑后的电子白板屏幕显示的编辑结果相同。
根据本申请实施例的第二方面,提供一种白板编辑装置,包括:
确定单元,用于对于在预设时长间隔内接收到的多个不同客户端发送的白板编辑指令,依据各白板编辑指令对应的编辑区域确定该多个白板编辑指令之间是否存在冲突;
所述确定单元,还用于当该多个白板编辑指令之间存在冲突时,确定该多个白板编辑指令的冲突区域;
处理单元,用于对所述多个白板编辑指令中针对所述冲突区域的编辑指令进行更新,并对更新后的白板编辑指令进行下发,以使客户端基于接收到的更新后的白板编辑指令进行白板编辑;其中,所述多个不同客户端基于接收到的更新后的白板编辑指令进行编辑后的电子白板屏幕显示的编辑结果相同。
根据本申请实施例的第三方面,提供一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第一方面的白板编辑方法。
根据本申请实施例的第四方面,提供一种机器可读存储介质,机器可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现第一方面的白板编辑方法。
本申请实施例的白板编辑方法,对于在预设时长间隔内接收到的多个不同客户端发送的白板编辑指令,当确定该多个白板编辑指令之间存在冲突时,确定该多个白板编辑指令的冲突区域,进而,对该多个白板编辑指令中针对冲突区域的编辑指令进行更新,并对更新后的白板编辑指令进行下发,保证了不同客户端基于接收到的更新后的白板编辑指令进行编辑后的电子白板屏幕显示的编辑结果相同,避免了多端冲突的情况下白板编辑结果不一致,优化了多端冲突情况下的白板编辑效果。
附图说明
图1是本申请一示例性实施例提供的一种白板编辑方法的流程示意图;
图2是本申请一示例性实施例提供的一种多白板协同编辑的系统架构示意图;
图3A和图3B是本申请示例性实施例提供的白板编辑结果的示意图;
图4是本申请一示例性实施例提供的一种白板编辑装置的结构示意图;
图5是本申请一示例性实施例提供的一种电子设备的硬件结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
为了使本领域技术人员更好地理解本申请实施例提供的技术方案,并使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例中技术方案作进一步详细的说明。
请参见图1,为本申请实施例提供的一种白板编辑方法的流程示意图,其中,该白板编辑方法可以应用于交互式电子白板系统的后台服务器,如图1所示,该白板编辑方法可以包括以下步骤:
需要说明的是,本申请实施例中各步骤的序号大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
步骤S100、对于在预设时长间隔内接收到的多个不同客户端发送的白板编辑指令,依据各白板编辑指令对应的编辑区域确定该多个白板编辑指令之间是否存在冲突。
本申请实施例中,为了优化多端冲突情况下的白板编辑效果,对于在预设时长间隔(可以根据实际场景设定,如100ms或200ms等)内接收到的多个不同客户端发送的白板编辑指令(该多个白板编辑指令可以理解为该多个不同客户端同时发送的白板编辑指令),可以分别确定各白板编辑指令对应的编辑区域(电子白板屏幕中的区域),并依据各白板编辑指令对应的编辑区域确定该多个白板编辑指令之间是否存在冲突。
示例性的,白板编辑指令可以包括但不限于覆盖指令、擦除指令或插入指令。
在一个示例中,步骤S100中,依据各白板编辑指令对应的编辑区域确定该多个白板编辑指令之间是否存在冲突,可以包括:
当多个白板编辑指令中至少两个白板编辑指令对应的编辑区域存在重叠区域,且至少两个白板编辑指令中针对该重叠区域的编辑结果不同时,确定该多个白板编辑指令之间存在冲突。
示例性的,当确定各白板编辑指令对应的编辑区域时,可以确定各白板编辑指令对应的编辑区域是否存在重叠区域。
若存在至少两个白板编辑指令对应的编辑区域存在重叠区域,则可以进一步确定该至少两个白板编辑指令中针对该重叠区域的编辑结果是否相同,若不同,则确定该至少两个白板编辑指令之间存在冲突,从而可以确定上述多个不同客户端发送的白板编辑指令之间存在冲突。
例如,假设白板编辑指令A中针对区域a的编辑指令为覆盖指令,而白板编辑指令B中针对区域a的编辑指令为删除指令,则可以确定白板编辑指令A与白板编辑指令B之间存在冲突。
又例如,假设白板编辑指令A和白板编辑指令B中针对区域a的编辑指令均为覆盖指令,但绘制的内容不同,则可以确定白板编辑指令A与白板编辑指令B之间存在冲突。
需要说明的是,在本申请实施例中,当各白板编辑指令对应的编辑区域之间均不存在重叠区域,或存在重叠区域,但不同白板编辑指令针对重叠区域的编辑结果相同时,可以确定该多个白板编辑指令之间不存在冲突。
示例性的,当确定该多个白板编辑指令之间不存在冲突时,可以按照常规白板编辑方案进行处理,如分别将各白板编辑指令发送给非来源客户端。
示例性的,对于该多个白板编辑指令中的任一白板编辑指令,发送该白板编辑指令的客户端为来源客户端,发送该白板编辑指令之外的其它白板编辑指令的客户端为非来源客户端。
举例来说,假设客户端1发送白板编辑指令A,客户端2发送白板编辑指令2,客户端3发送白板编辑指令C,则对于白板编辑指令A,客户端1为来源客户端,客户端2和客户端3为非来源客户端;对于白板编辑指令B,客户端2为来源客户端,客户端1和客户端3为非来源客户端;对于白板编辑指令C,客户端3为来源客户端,客户端1和客户端2为非来源客户端。
步骤S110、当该多个白板编辑指令之间存在冲突时,确定该多个白板编辑指令的冲突区域。
步骤S120、对多个白板编辑指令中针对冲突区域的编辑指令进行更新,并对更新后的白板编辑指令进行下发,以使客户端基于接收到的更新后的白板编辑指令进行白板编辑;其中,该多个不同客户端基于接收到的更新后的白板编辑指令进行编辑后的电子白板屏幕显示的编辑结果相同。
本申请实施例中,当确定步骤S100中接收到的多个白板编辑指令之间存在冲突时,可以确定该多个白板编辑指令的冲突区域,并对该多个白板编辑指令中针对冲突区域的编辑指令进行更新,以得到更新后的白板编辑指令。
当完成白板编辑指令的更新时,可以将更新后的白板编辑指令发送至非来源客户端,以使各客户端基于接收到的更新后的白板编辑指令进行白板编辑。
示例性的,不同客户端基于接收到的更新后的白板编辑指令进行编辑后的电子白板屏幕显示的编辑结果相同。
可见,在图1所示方法流程中,对于在预设时长间隔内接收到的多个不同客户端发送的白板编辑指令,当确定该多个白板编辑指令之间存在冲突时,确定该多个白板编辑指令的冲突区域,进而,对该多个白板编辑指令中针对冲突区域的编辑指令进行更新,并对更新后的白板编辑指令进行下发,保证了不同客户端基于接收到的更新后的白板编辑指令进行编辑后的电子白板屏幕显示的编辑结果相同,避免了多端冲突的情况下白板编辑结果不一致,优化了多端冲突情况下的白板编辑效果。
在一些实施例中,步骤S110中,确定该多个白板编辑指令的冲突区域,可以包括:
对于任意两个存在冲突的白板编辑指令,依据该两个白板编辑指令对应的绘制笔迹,确定该两个白板编辑指令的冲突区域。
示例性的,当确定多个白板编辑指令之间存在冲突时,对于任意两个存在冲突的白板编辑指令,可以分别确定该两个白板编辑指令对应的绘制笔迹。
例如,对于绘制宽度为w,长度为l的线条的覆盖指令,假设其起始点为(x0,y0),则绘制笔迹可以覆盖以横坐标在x0~(x0+l-1)范围,纵坐标在y0~(y0+w-1)范围内的像素点。
当确定了该两个白板编辑指令对应的绘制笔迹时,可以依据该两个白板编辑指令对应的绘制笔迹确定该两个白板编辑指令的冲突区域。
在一个示例中,依据该两个白板编辑指令对应的绘制笔迹,确定该两个白板编辑指令的冲突区域,可以包括:
对于该两个白板编辑指令中的任一白板编辑指令,依据该白板编辑指令对应的绘制笔迹,对该绘制笔迹经过的目标矩阵中的位置的值进行更新;该目标矩阵中各位置分别与白板屏幕的像素位置一一对应;
将目标矩阵中目标位置构成的区域确定为冲突区域,目标位置为目标矩阵中值发生了两次更新的位置。
示例性的,考虑到对于存在冲突的两个白板编辑指令,该两个白板编辑指令对应的绘制笔迹均经过的位置,即为存在冲突的位置,由存在冲突的位置构成的区域即为该两个白板编辑指令的冲突区域。
相应地,对于存在冲突的两个白板编辑指令中的任一白板编辑指令,可以依据该白板编辑指令对应的绘制轨迹,对该绘制笔迹经过的目标矩阵中的位置的值进行更新,例如,将目标矩阵中该位置的值+1,进而,可以将目标矩阵中值发生了两次更新的位置(本文中称为目标位置),如减去原始值的差为2的位置,构成的区域确定为该两个白板编辑指令的冲突区域。
在一些实施例中,步骤S120中,对多个白板编辑指令中针对冲突区域的编辑指令进行更新,可以包括:
依据多个白板编辑指令中各白板编辑指令对应的冲突区域编辑结果,确定目标编辑结果;其中,一个白板编辑指令对应的冲突区域编辑结果为单独执行该白板编辑指令之后冲突区域的编辑结果;
依据目标编辑结果分别对多个白板编辑指令中针对冲突区域的编辑指令进行更新,以使依据更新后的白板编辑指令对冲突区域进行编辑之后冲突区域的编辑结果为目标编辑结果。
示例性的,对于存在冲突的多个白板编辑指令,可以分别确定单独执行各白板编辑指令之后冲突区域的编辑结果(本文中称为各白板编辑指令对应的冲突区域编辑结果),并依据该多个白板编辑指令中各白板编辑指令对应的冲突区域编辑结果,确定冲突区域最终的编辑结果(本文中称为目标编辑结果)。
当确定了目标编辑结果时,可以依据该目标编辑结果分别对该多个白板编辑指令中针对冲突区域的编辑指令进行更新,以使依据更新后的白板编辑指令对冲突区域进行编辑之后冲突区域的编辑结果为目标编辑结果。
举例来说,以发生冲突的多个白板编辑指令为两个覆盖指令为例,其中一个白板编辑指令对应的冲突区域的编辑结果为将冲突区域内各像素点的像素值置为红色对应的像素值,另一个白板编辑指令对应的冲突区域的编辑结果为将冲突区域内各像素点的像素值置为蓝色对应的像素值,则目标编辑结果可以为将冲突区域内各像素点的像素值置为红色和蓝色之外的其他颜色对应的像素值,以便保证不同客户端的最终的编辑结果一致,并优化显示效果。
在一个示例中,对于存在冲突的多个白板编辑指令对应的冲突区域编辑结果为将冲突区域编辑为不同颜色的场景,可以将各白板编辑指令对应的冲突区域编辑结果的均值(即对应的颜色的均值)确定为目标编辑结果。
在一些实施例中,步骤S120中,对多个白板编辑指令中针对冲突区域的编辑指令进行更新,并对更新后的白板编辑指令进行下发,可以包括:
依据第一编辑结果对第二白板编辑指令中针对冲突区域的编辑指令进行更新,并将更新后的第二白板编辑指令下发至第一客户端,第一编辑结果为单独执行第一白板编辑指令之后冲突区域的编辑结果,第一白板编辑指令为多个白板编辑指令中由第一客户端发送的白板编辑指令,第一客户端为多个不同客户端中的任一客户端,第二白板编辑指令为与第一白板编辑指令存在冲突的其他白板编辑指令。
示例性的,以针对上述多个客户端中的任一客户端(本文中称为第一客户端)的处理为例。
当确定了各白板编辑指令的冲突区域时,可以先确定单独执行第一客户端发送的白板编辑指令(上述多个白板编辑指令中的其中一个,本文中称为第一白板编辑指令)之后冲突区域的编辑结果(本文中称为第一编辑结果),并依据该第一编辑结果对与第一白板编辑指令存在冲突的其他白板编辑指令(本文中称为第二白板编辑指令)进行更新,将更新后的第二白板编辑指令下发至第一客户端。
在一个示例中,上述依据第一编辑结果对第二白板编辑指令中针对冲突区域的编辑指令进行更新,可以包括:
依据第一编辑结果和第二编辑结果,对第二白板编辑指令中针对所述冲突区域的编辑指令进行更新,以使在第一编辑结果的基础上,依据更新后的第二白板编辑指令对冲突区域进行编辑时冲突区域的编辑结果为第二编辑结果,第二编辑结果为按照优先级顺序依次执行第一白板编辑指令和第二白板编辑指令之后冲突区域的编辑结果。
示例性的,对于存在冲突的第一白板编辑指令和第二白板编辑指令,可以确定按照优先级顺序依次执行第一白板编辑指令和第二白板编辑指令之后冲突区域的编辑结果(本文中称为第二编辑结果)。
示例性的,存在的冲突的多个白板编辑指令的优先级高低可以依据白板编辑指令的指令类型确定。
例如,指令类型为插入类型的白板编辑指令的优先级低于指令类型为删除类型的白板编辑指令的优先级;删除类型的白板编辑指令的优先级低于覆盖类型的白板编辑指令的优先级。
示例性的,对于指令类型相同的存在冲突的白板编辑指令,可以进一步按照其他策略确定的优先级。
例如,对于指令类型相同的存在冲突的白板编辑指令,触发指令的时间越早,优先级越低,即优先执行触发时间早的白板编辑指令。
示例性的,为了尽可能保留高优先级的编辑指令的编辑结果,当确定了存在冲突的多个白板编辑指令的优先级时,可以按照优先级从低到高的顺序,依次执行各白板编辑指令,以确定该存在冲突的多个白板编辑指令对应的冲突区域的编辑结果(即按照优先级从低到高的顺序执行该存在冲突的多个白板编辑指令之后冲突区域的编辑结果)。
相应地,当确定了第一编辑结果和第二编辑结果时,可以依据该第一编辑结果和第二编辑结果对第二白板编辑指令中针对冲突区域的编辑指令进行更新,以使在第一编辑结果的基础上,依据更新后的第二白板编辑指令对冲突区域进行编辑时冲突区域的编辑结果为第二编辑结果。
在一个示例中,依据第一编辑结果和第二编辑结果,对第二白板编辑指令中针对冲突区域的编辑指令进行更新,可以包括:
依据第一编辑结果和第二编辑结果,采用编辑距离算法,对第二白板编辑指令中针对冲突区域的编辑指令进行更新。
示例性的,为了提高编辑效率,在依据第一编辑结果和第二编辑结果,对第二白板编辑指令中针对冲突区域的编辑指令进行更新时,可以采用编辑距离算法,对第二白板编辑指令中针对冲突区域的编辑指令进行更新。
举例来说,假设第一白板编辑指令为删除冲突区域内的字母(假设为C),第二白板编辑指令为在冲突区域覆盖另一字母(假设为E),则目标编辑结果应为在冲突区域内绘制E(删除C之后,绘制E),对于第二客户端,其执行完第二白板编辑指令之后,冲突区域为字母C之上覆盖了字母E,为了实现字母C的删除,可以先将冲突区域内的字母C和字母E均删除,然后,再重新绘制字母E,但是这样的编辑效率较差,为了提高编辑效率,可以确定字母C之上覆盖字母E的编辑结果,与冲突区域中绘制字母E的编辑结果之间的编辑距离,将字母C之上覆盖字母E,相对于字母E多出的部分,并将发送给第二客户端的白板编辑指令更新为将该多出的部分删除的编辑指令。
为了使本领域技术人员更好地理解本申请实施例提供的技术方案,下面结合具体应用场景对本申请实施例提供的技术方案进行说明。
以基于交互式电子白板的远程教学场景为例,例如,针对指定区域薄弱学校和教学点缺少师资、开不出开不足开不好规定课程的问题,采用网上专门开课或同步上课、利用互联网按照教学进度推送适合的优质教育资源等形式,帮助其开齐开足开好规定课程,促进教育公平和均衡发展。
请参见图2,为本申请实施例提供的一种多白板协同编辑的系统架构示意图,如图2所示,该系统架构中可以包括客户端和通信服务端。
示例性的,客户端可以为白板客户端,通信服务端可以为远程教学后台服务端。
示例性的,白板编辑指令可以包括插入指令、删除指令以及覆盖(绘制)指令。
以两个客户端协同编辑为例,两个客户端的冲突有9种可能,其可以如表1所示:
表1
客户端A | 客户端B |
插入 | 插入 |
插入 | 删除 |
插入 | 覆盖 |
删除 | 插入 |
删除 | 删除 |
删除 | 覆盖 |
覆盖 | 插入 |
覆盖 | 删除 |
覆盖 | 覆盖 |
需要说明的是,客户端A的白板编辑指令为白板编辑指令1,客户端B的白板编辑指令为白板编辑指令2的处理策略可以与客户端A的白板编辑指令为白板编辑指令2,客户端B的白板编辑指令为白板编辑指令1的处理策略类似。
下面结合部分具体的冲突情况对本申请实施例提供的方案进行举例说明。
一、客户端A的白板编辑指令1和客户端B的白板编辑指令2均为覆盖指令
1.1、主讲老师登录客户端,创建远程教学课堂(可以称为专递课堂),邀请其他老师加入。其他老师收到请求后加入远程教学课堂。其他老师能够实时看到主讲老师的屏幕。
1.2、主讲老师在白板客户端上开启允许其他老师操作。主讲老师与其他老师在各自白板上的操作会实时同步到对方。
比如:主讲老师在主讲教室白板上绘制,比如从左向右绘制宽度为5像素长度为200像素的红色线条(对应白板编辑指令1)。
其他老师在听课教室白板上绘制,比如在白板上从上到下绘制宽度为5像素蓝色的线条(对应白板编辑指令2)。
1.3、通信服务端(也可以称为后台服务)在预设时长间隔内收到白板编辑指令1和白板编辑指令2。
1.4、通信服务端判断白板编辑指令1和白板编辑指令2之间是否存在冲突。
示例性的,通信服务端络根据白板宽高构造一个二维矩阵(即上述目标矩阵),该二维矩阵中各位置的初始值均为0。
通信服务端依据接收到的白板编辑指令将客户端的绘制笔迹转换成点,每一个点都对应二维矩阵上一个位置,并给对应的二维矩阵中的位置加1。
当依据白板编辑指令1和白板编辑指令2,均按照上述方式处理后,检查该二维矩阵中值为2的点,这些点组成的区域就是白板编辑指令1和白板编辑指令2的冲突区域。
对主讲教室,针对冲突区域按行分解,分解为以下指令:
覆盖:cover(开始x坐标,开始y坐标,颜色,结束x坐标,结束y坐标)
cover(29,29,RGB(255,0,0),33,29)
cover(29,30,RGB(255,0,0),33,30)
cover(29,31,RGB(255,0,0),33,31)
cover(29,32,RGB(255,0,0),33,32)
cover(29,33,RGB(255,0,0),33,33)
对听课教室,针对冲突区域按行分解,分解为以下指令:
cover(29,29,RGB(0,0,255),33,29)
cover(29,30,RGB(0,0,255),33,30)
cover(29,31,RGB(0,0,255),33,31)
cover(29,32,RGB(0,0,255),33,32)
cover(29,33,RGB(0,0,255),33,33)
1.5、对针对冲突区域的编辑指令进行更新。
示例性的,考虑到每一种颜色对应的像素值都是由红绿蓝三种BYTE值组成的整型,可以对整型数据进行处理。
对于冲突区域,可以使用白板编辑指令1对应的颜色(即红色)和白板编辑指令2对应的颜色(即蓝色)的均值替代红色和蓝色。
1.6、针对冲突区域的像素值,既不使用主讲教室的画笔线条和颜色,也不使用听课教室的画笔线条和颜色,冲突位置使用颜色的均值,同时保留两个客户端的操作。
1.7、此时,通信服务端的白板显示与两个教室的白板显示不一致。
通信服务端可以分别对主讲教室白板冲突区域的每一行,使用编辑距离算法,生成以下指令:
cover(29,29,RGB(128,0,128),33,29)
cover(29,30,RGB(128,0,128),33,30)
cover(29,31,RGB(128,0,128),33,31)
cover(29,32,RGB(128,0,128),33,32)
cover(29,33,RGB(128,0,128),33,33)
也可以将上述指令合成一条,并将该指令发给主讲教室
cover(29,29-33,RGB(128,0,128),33,29-33)
通信服务端对听课教室处理方式同上。
1.8、通信服务端对该专递课堂保存的指令包括:主讲教室的覆盖指令(即上述白板编辑指令1)、听课教室的覆盖指令(即上述白板编辑指令2),以及补发指令(即更新后的白板编辑指令),以便客户端因网络离线,没有收到通信服务端的指令时,可以从通信服务端再次获取。
二、客户端A的白板编辑指令3为删除指令,客户端B的白板编辑指令4为覆盖指令
2.1、主讲老师登录客户端,创建远程教学课堂(可以称为专递课堂),邀请其他老师加入。其他老师收到请求后加入远程教学课堂。其他老师能够实时看到主讲老师的屏幕。
2.2、主讲老师在白板客户端上开启允许其他老师操作。主讲老师与其他老师在各自白板上的操作会实时同步到对方。
假设当前白板显示“ABCD”,其示意图如图3A所示。
主讲教室使用橡皮擦将C删除(对应白板编辑指令3),从讲教室在C区域上绘制E(对应白板编辑指令4)。
2.3、通信服务端在预设时长间隔内接收到白板编辑指令3和白板编辑指令4。
2.4、通信服务端判断白板编辑指令3和白板编辑指令4之间是否存在冲突。
示例性的,通信服务端根据白板宽高构造一个二维矩阵(即上述目标矩阵),该二维矩阵中各位置的初始值均为0。
通信服务端依据接收到的白板编辑指令将客户端的绘制笔迹转换成点,每一个点都对应二维矩阵上一个位置,并给对应的二维矩阵中的位置加1。
当依据白板编辑指令3和白板编辑指令4,均按照上述方式处理后,检查该二维矩阵中值为2的点,这些点组成的区域就是白板编辑指令3和白板编辑指令4的冲突区域。
主讲教师指令如下:
删除:remove(rectangle(开始x坐标,开始y坐标,宽度,高度))
remove(rectangle(38,16,20,24))
对主讲教室,针对冲突区域按行分解,分解为以下指令:
remove(开始x坐标,开始y坐标,结束x坐标,结束y坐标)
remove(38,16,57,16)
remove(38,17,57,16)
remove(38,18,57,16)
remove(38,19,57,16)
remove(38,20,57,16)
remove(38,21,57,16)
…
remove(38,39,57,16)
听课教师指令如下:
对听课教室,针对冲突区域按行分解,分解为以下指令:
cover(43,18,RGB(0,0,0),43,18)
cover(44,18,RGB(0,0,0),44,18)
…
2.5、对针对冲突区域的编辑指令进行更新。
对于冲突区域,可以先响应删除指令,再响应覆盖指令。
2.6、针对冲突位置的像素,先处理主讲教室的删除指令,再处理听课教室的覆盖指令,其编辑结果示意图可以如图3B所示。
2.7、此时,通信服务端的白板显示与两个教室的白板显示不一致。
通信服务端可以根据冲突区域对主讲教室追加发送绘制E指令。
通信服务端可以根据冲突区域,针对听课教室,使用编辑距离算法,发送删除指令,删除字母C之上叠加字母E,相对于字母E多出的部分。
2.8、通信服务端对该专递课堂保存的指令包括:主讲教室的删除指令(即上述白板编辑指令3)、听课教室的覆盖指令(即上述白板编辑指令4),以及补发指令(即更新后的白板编辑指令),以便客户端因网络离线,没有收到通信服务端的指令时,可以从通信服务端再次获取。
三、插入指令说明
在白板上支持这样一种操作:用户可以圈定某个区域,对该区域进行拖动,针对该操作分为两种操作:插入和覆盖;
插入:插入的过程中,白板客户端实现动态效果,圈定区域移动过程中,经过的目标区域会主动后移,留出插入区域。在圈定区域经过后,之前的区域会回到原来的位置,用户确定放置区域后,离开触屏,该位置就是放置位置,客户端然后发送插入指令给通信服务端。
覆盖:复制的过程,客户端实现动态效果:圈定区域移动过程中与目标区域叠加显示,覆盖区域在目标区域之上,用户确定放置区域后,客户端给通信服务端发送覆盖指令。
以发生冲突的两个插入指令为例,如图3A所示,假设白板当前显示“ABCD”,客户端A请求将“A”插入C之后(对应白板编辑指令5),客户端B请求将“B”插入C之后(对应白板编辑指令6)。
由于主讲教室和听课教室发生的白板编辑指令均为插入类型的指令,且插入区域存在冲突,通信服务端可以先执行主讲教室的插入指令,后执行听课教室的插入指令,最终编辑结果为“CBAD”。
由于客户端A执行完白板编辑指令5之后,主讲教室的白板显示“BCAD”,为了使主讲教室的白板显示“CBAD”,通信服务端可以向客户端A追加“将B插入到C之后”的插入指令。
由于客户端B执行完白板编辑指令6之后,听课教室的白板显示“ACBD”,为了使听课教室的白板显示“CBAD”,通信服务端可以向客户端B追加“将A插入到B之后”的插入指令。
上述处理的具体实现流程可以参见一和二中的相关描述,本申请实施例在此不做赘述。
以上对本申请提供的方法进行了描述。下面对本申请提供的装置进行描述:
请参见图4,为本申请实施例提供的一种白板编辑装置的结构示意图,如图4所示,该白板编辑装置可以包括:
确定单元410,用于对于在预设时长间隔内接收到的多个不同客户端发送的白板编辑指令,依据各白板编辑指令对应的编辑区域确定该多个白板编辑指令之间是否存在冲突;
所述确定单元410,还用于当该多个白板编辑指令之间存在冲突时,确定该多个白板编辑指令的冲突区域;
处理单元420,用于对所述多个白板编辑指令中针对所述冲突区域的编辑指令进行更新,并对更新后的白板编辑指令进行下发,以使客户端基于接收到的更新后的白板编辑指令进行白板编辑;其中,所述多个不同客户端基于接收到的更新后的白板编辑指令进行编辑后的电子白板屏幕显示的编辑结果相同。
在一些实施例中,所述确定单元410依据该各白板编辑指令对应的编辑区域确定该多个白板编辑指令之间是否存在冲突,包括:
当所述多个白板编辑指令中至少两个白板编辑指令对应的编辑区域存在重叠区域,且所述至少两个白板编辑指令中针对该重叠区域的编辑结果不同时,确定该多个白板编辑指令之间存在冲突。
在一些实施例中,所述确定单元410确定该多个白板编辑指令的冲突区域,包括:
对于任意两个存在冲突的白板编辑指令,依据该两个白板编辑指令对应的绘制笔迹,确定该两个白板编辑指令的冲突区域。
在一些实施例中,所述确定单元410依据该两个白板编辑指令对应的绘制笔迹,确定该两个白板编辑指令的冲突区域,包括:
对于该两个白板编辑指令中的任一白板编辑指令,依据该白板编辑指令对应的绘制笔迹,对该绘制笔迹经过的目标矩阵中的位置的值进行更新;所述目标矩阵中各位置分别与白板屏幕的像素位置一一对应;
将所述目标矩阵中目标位置构成的区域确定为冲突区域,所述目标位置为所述目标矩阵中值发生了两次更新的位置。
在一些实施例中,所述处理单元420对所述多个白板编辑指令中针对所述冲突区域的编辑指令进行更新,包括:
依据所述多个白板编辑指令中各白板编辑指令对应的冲突区域编辑结果,确定目标编辑结果;其中,一个白板编辑指令对应的冲突区域编辑结果为单独执行该白板编辑指令之后所述冲突区域的编辑结果;
依据所述目标编辑结果分别对所述多个白板编辑指令中针对所述冲突区域的编辑指令进行更新,以使依据更新后的白板编辑指令对所述冲突区域进行编辑之后所述冲突区域的编辑结果为所述目标编辑结果。
在一些实施例中,所述处理单元420对所述多个白板编辑指令中针对所述冲突区域的编辑指令进行更新,并对更新后的白板编辑指令进行下发,包括:
依据第一编辑结果对第二白板编辑指令中针对所述冲突区域的编辑指令进行更新,并将更新后的第二白板编辑指令下发至第一客户端,所述第一编辑结果为单独执行第一白板编辑指令之后所述冲突区域的编辑结果,所述第一白板编辑指令为所述多个白板编辑指令中由所述第一客户端发送的白板编辑指令,所述第一客户端为所述多个不同客户端中的任一客户端,所述第二白板编辑指令为与所述第一白板编辑指令存在冲突的其他白板编辑指令。
在一些实施例中,所述处理单元420依据第一编辑结果对第二白板编辑指令中针对所述冲突区域的编辑指令进行更新,包括:
依据所述第一编辑结果和第二编辑结果,对所述第二白板编辑指令中针对所述冲突区域的编辑指令进行更新,以使在所述第一编辑结果的基础上,依据更新后的第二白板编辑指令对所述冲突区域进行编辑时所述冲突区域的编辑结果为所述第二编辑结果,所述第二编辑结果为按照优先级顺序依次执行所述第一白板编辑指令和所述第二白板编辑指令之后所述冲突区域的编辑结果。
在一些实施例中,所述处理单元420依据所述第一编辑结果和第二编辑结果,对所述第二白板编辑指令中针对所述冲突区域的编辑指令进行更新,包括:
依据所述第一编辑结果和第二编辑结果,采用编辑距离算法,对所述第二白板编辑指令中针对所述冲突区域的编辑指令进行更新。
请参见图5,为本申请实施例提供的一种电子设备的硬件结构示意图。该电子设备可以包括处理器501、通信接口502、存储器503和通信总线504。处理器501、通信接口502以及存储器503通过通信总线504完成相互间的通信。其中,存储器503上存放有计算机程序;处理器501可以通过执行存储器503上所存放的程序,执行上文描述的白板编辑方法。
本文中提到的存储器503可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,存储器503可以是:RAM(Radom AccessMemory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
本申请实施例还提供了一种存储有计算机程序的机器可读存储介质,例如图5中的存储器503,该计算机程序可由图5所示电子设备中的处理器501执行以实现上文中描述的白板编辑方法。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (10)
1.一种白板编辑方法,其特征在于,包括:
对于在预设时长间隔内接收到的多个不同客户端发送的白板编辑指令,依据各白板编辑指令对应的编辑区域确定该多个白板编辑指令之间是否存在冲突;
当该多个白板编辑指令之间存在冲突时,确定该多个白板编辑指令的冲突区域;
对所述多个白板编辑指令中针对所述冲突区域的编辑指令进行更新,并对更新后的白板编辑指令进行下发,以使客户端基于接收到的更新后的白板编辑指令进行白板编辑;其中,所述多个不同客户端基于接收到的更新后的白板编辑指令进行编辑后的电子白板屏幕显示的编辑结果相同;
其中,所述对所述多个白板编辑指令中针对所述冲突区域的编辑指令进行更新,并对更新后的白板编辑指令进行下发,包括:
依据第一编辑结果和第二编辑结果,对第二白板编辑指令中针对所述冲突区域的编辑指令进行更新,以使在所述第一编辑结果的基础上,依据更新后的第二白板编辑指令对所述冲突区域进行编辑时所述冲突区域的编辑结果为所述第二编辑结果,所述第一编辑结果为单独执行第一白板编辑指令之后所述冲突区域的编辑结果,所述第一白板编辑指令为所述多个白板编辑指令中由第一客户端发送的白板编辑指令,所述第一客户端为所述多个不同客户端中的任一客户端,所述第二白板编辑指令为与所述第一白板编辑指令存在冲突的其他白板编辑指令,所述第二编辑结果为按照优先级顺序依次执行所述第一白板编辑指令和所述第二白板编辑指令之后所述冲突区域的编辑结果;
将更新后的第二白板编辑指令下发至所述第一客户端。
2.根据权利要求1所述的方法,其特征在于,所述依据该各白板编辑指令对应的编辑区域确定该多个白板编辑指令之间是否存在冲突,包括:
当所述多个白板编辑指令中至少两个白板编辑指令对应的编辑区域存在重叠区域,且所述至少两个白板编辑指令中针对该重叠区域的编辑结果不同时,确定该多个白板编辑指令之间存在冲突。
3.根据权利要求1所述的方法,其特征在于,所述确定该多个白板编辑指令的冲突区域,包括:
对于任意两个存在冲突的白板编辑指令,依据该两个白板编辑指令对应的绘制笔迹,确定该两个白板编辑指令的冲突区域。
4.根据权利要求3所述的方法,其特征在于,所述依据该两个白板编辑指令对应的绘制笔迹,确定该两个白板编辑指令的冲突区域,包括:
对于该两个白板编辑指令中的任一白板编辑指令,依据该白板编辑指令对应的绘制笔迹,对该绘制笔迹经过的目标矩阵中的位置的值进行更新;所述目标矩阵中各位置分别与白板屏幕的像素位置一一对应;
将所述目标矩阵中目标位置构成的区域确定为冲突区域,所述目标位置为所述目标矩阵中值发生了两次更新的位置。
5.根据权利要求1所述的方法,其特征在于,所述对所述多个白板编辑指令中针对所述冲突区域的编辑指令进行更新,包括:
依据所述多个白板编辑指令中各白板编辑指令对应的冲突区域编辑结果,确定目标编辑结果;其中,一个白板编辑指令对应的冲突区域编辑结果为单独执行该白板编辑指令之后所述冲突区域的编辑结果;
依据所述目标编辑结果分别对所述多个白板编辑指令中针对所述冲突区域的编辑指令进行更新,以使依据更新后的白板编辑指令对所述冲突区域进行编辑之后所述冲突区域的编辑结果为所述目标编辑结果。
6.根据权利要求1所述的方法,其特征在于,所述依据第一编辑结果和第二编辑结果,对第二白板编辑指令中针对所述冲突区域的编辑指令进行更新,包括:
依据所述第一编辑结果和第二编辑结果,采用编辑距离算法,对所述第二白板编辑指令中针对所述冲突区域的编辑指令进行更新。
7.一种白板编辑装置,其特征在于,包括:
确定单元,用于对于在预设时长间隔内接收到的多个不同客户端发送的白板编辑指令,依据各白板编辑指令对应的编辑区域确定该多个白板编辑指令之间是否存在冲突;
所述确定单元,还用于当该多个白板编辑指令之间存在冲突时,确定该多个白板编辑指令的冲突区域;
处理单元,用于对所述多个白板编辑指令中针对所述冲突区域的编辑指令进行更新,并对更新后的白板编辑指令进行下发,以使客户端基于接收到的更新后的白板编辑指令进行白板编辑;其中,所述多个不同客户端基于接收到的更新后的白板编辑指令进行编辑后的电子白板屏幕显示的编辑结果相同;
其中,所述处理单元对所述多个白板编辑指令中针对所述冲突区域的编辑指令进行更新,并对更新后的白板编辑指令进行下发,包括:
依据第一编辑结果和第二编辑结果,对第二白板编辑指令中针对所述冲突区域的编辑指令进行更新,以使在所述第一编辑结果的基础上,依据更新后的第二白板编辑指令对所述冲突区域进行编辑时所述冲突区域的编辑结果为所述第二编辑结果,所述第一编辑结果为单独执行第一白板编辑指令之后所述冲突区域的编辑结果,所述第一白板编辑指令为所述多个白板编辑指令中由第一客户端发送的白板编辑指令,所述第一客户端为所述多个不同客户端中的任一客户端,所述第二白板编辑指令为与所述第一白板编辑指令存在冲突的其他白板编辑指令,所述第二编辑结果为按照优先级顺序依次执行所述第一白板编辑指令和所述第二白板编辑指令之后所述冲突区域的编辑结果;
将更新后的第二白板编辑指令下发至所述第一客户端。
8.根据权利要求7所述的装置,其特征在于,所述确定单元依据该各白板编辑指令对应的编辑区域确定该多个白板编辑指令之间是否存在冲突,包括:
当所述多个白板编辑指令中至少两个白板编辑指令对应的编辑区域存在重叠区域,且所述至少两个白板编辑指令中针对该重叠区域的编辑结果不同时,确定该多个白板编辑指令之间存在冲突;
和/或,
所述确定单元确定该多个白板编辑指令的冲突区域,包括:
对于任意两个存在冲突的白板编辑指令,依据该两个白板编辑指令对应的绘制笔迹,确定该两个白板编辑指令的冲突区域;
其中,所述确定单元依据该两个白板编辑指令对应的绘制笔迹,确定该两个白板编辑指令的冲突区域,包括:
对于该两个白板编辑指令中的任一白板编辑指令,依据该白板编辑指令对应的绘制笔迹,对该绘制笔迹经过的目标矩阵中的位置的值进行更新;所述目标矩阵中各位置分别与白板屏幕的像素位置一一对应;
将所述目标矩阵中目标位置构成的区域确定为冲突区域,所述目标位置为所述目标矩阵中值发生了两次更新的位置;
和/或,
所述处理单元对所述多个白板编辑指令中针对所述冲突区域的编辑指令进行更新,包括:
依据所述多个白板编辑指令中各白板编辑指令对应的冲突区域编辑结果,确定目标编辑结果;其中,一个白板编辑指令对应的冲突区域编辑结果为单独执行该白板编辑指令之后所述冲突区域的编辑结果;
依据所述目标编辑结果分别对所述多个白板编辑指令中针对所述冲突区域的编辑指令进行更新,以使依据更新后的白板编辑指令对所述冲突区域进行编辑之后所述冲突区域的编辑结果为所述目标编辑结果;
和/或,
所述处理单元依据第一编辑结果和第二编辑结果,对第二白板编辑指令中针对所述冲突区域的编辑指令进行更新,包括:
依据所述第一编辑结果和第二编辑结果,采用编辑距离算法,对所述第二白板编辑指令中针对所述冲突区域的编辑指令进行更新。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-6任一项所述的方法。
10.一种机器可读存储介质,其特征在于,所述机器可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110272431.3A CN113157192B (zh) | 2021-03-12 | 2021-03-12 | 白板编辑方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110272431.3A CN113157192B (zh) | 2021-03-12 | 2021-03-12 | 白板编辑方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113157192A CN113157192A (zh) | 2021-07-23 |
CN113157192B true CN113157192B (zh) | 2024-02-27 |
Family
ID=76886951
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110272431.3A Active CN113157192B (zh) | 2021-03-12 | 2021-03-12 | 白板编辑方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113157192B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102916998A (zh) * | 2012-03-26 | 2013-02-06 | 上海方正数字出版技术有限公司 | 一种基于云计算的网络公共白板系统及方法 |
CN104615586A (zh) * | 2015-01-21 | 2015-05-13 | 上海理工大学 | 实时协同编辑系统 |
KR20170070555A (ko) * | 2015-12-14 | 2017-06-22 | 한국전자통신연구원 | 웹서비스 환경 기반 화상 회의 시 실시간 동시 협업 문서의 편집 충돌을 회피하는 시스템 및 그 방법 |
CN111914520A (zh) * | 2019-05-09 | 2020-11-10 | 富泰华工业(深圳)有限公司 | 文档协同编辑方法、装置、计算机装置及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8732247B2 (en) * | 2009-09-28 | 2014-05-20 | Bjorn Michael Dittmer-Roche | System and method of simultaneous collaboration |
-
2021
- 2021-03-12 CN CN202110272431.3A patent/CN113157192B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102916998A (zh) * | 2012-03-26 | 2013-02-06 | 上海方正数字出版技术有限公司 | 一种基于云计算的网络公共白板系统及方法 |
CN104615586A (zh) * | 2015-01-21 | 2015-05-13 | 上海理工大学 | 实时协同编辑系统 |
KR20170070555A (ko) * | 2015-12-14 | 2017-06-22 | 한국전자통신연구원 | 웹서비스 환경 기반 화상 회의 시 실시간 동시 협업 문서의 편집 충돌을 회피하는 시스템 및 그 방법 |
CN111914520A (zh) * | 2019-05-09 | 2020-11-10 | 富泰华工业(深圳)有限公司 | 文档协同编辑方法、装置、计算机装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113157192A (zh) | 2021-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10250947B2 (en) | Meeting system that interconnects group and personal devices across a network | |
US20040143630A1 (en) | Method and system for sending questions, answers and files synchronously and asynchronously in a system for enhancing collaboration using computers and networking | |
CN111352570B (zh) | 书写交互方法、智能交互显示设备以及书写交互系统 | |
JP4951912B2 (ja) | プレゼンテーションの視覚的忠実性を最適化する方法、システム、及びプログラム | |
WO2023029243A1 (zh) | 一种在线电子白板内容同步分享系统 | |
EP2579588A2 (en) | Collaborative meeting systems that enable parallel multi-user input to mark up screens | |
WO2023071248A1 (zh) | 一种视频会议场景控制方法、系统、设备、存储介质 | |
CN105049914A (zh) | 图片帧播放方法和装置 | |
CN113157192B (zh) | 白板编辑方法、装置、电子设备及存储介质 | |
CN104133596B (zh) | 电子屏信息的显示方法及装置 | |
CN114967925A (zh) | 一种应用vr全景技术的数字化博物馆 | |
CN108280052A (zh) | 元素显示状态的调整方法、装置、智能设备及存储介质 | |
CN104768034A (zh) | 一种分配资源的方法及装置 | |
CN104572000B (zh) | 拼接墙开机logo显示方法以及装置 | |
CN113900760A (zh) | 一种弹窗展示方法和装置 | |
CN112987915A (zh) | 基于ast的应用于vr会议协同白板编辑任务的方法 | |
CN116758201A (zh) | 三维场景的渲染处理方法、设备、系统及计算机存储介质 | |
CN111464859A (zh) | 一种在线视频展示的方法及装置 | |
CN113518190B (zh) | 协同多屏的播放调度控制方法、系统和可读存储介质 | |
Hunter | Computer animation survey | |
CN112783325B (zh) | 基于多投影系统的人机互动方法、系统以及存储介质 | |
CN114168060A (zh) | 电子白板渲染方法、装置、设备和存储介质 | |
CN103336649A (zh) | 一种多终端间反馈窗图像共享的方法及装置 | |
CN113628324A (zh) | 一种智慧高速公路vr互动教学系统 | |
CN114025147A (zh) | Vr教学的数据传输方法、系统、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | 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 |