Display device and word group editing method
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- HISENSE VISUAL TECH CO LTD
- Filing Date
- 2026-05-15
- Publication Date
- 2026-08-07
AI Technical Summary
[0005]本申请提供一种显示设备及字组编辑方法,以解决字组的编辑效率低的问题
[0007]上述技术方案具有以下有益效果或优点:
Smart Images

Figure CN122534262A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of display device technology, and in particular to a display device and a method for editing character groups. Background Technology
[0002] Display devices refer to terminal devices capable of outputting specific display images, such as smart TVs, communication terminals, smart advertising screens, and projectors. Taking smart TVs as an example, smart TVs are television products based on Internet application technologies, possessing open operating systems and chips, and having open application platforms. They enable two-way human-computer interaction and integrate multiple functions such as audio-visual, entertainment, and data to meet diverse and personalized user needs.
[0003] For display devices that support touch interaction, a whiteboard application can be run, and writing or drawing functions can be implemented based on the user's touch input. To improve the writing effect, the display device can draw characters corresponding to a preset font type according to the user's writing trajectory, thereby converting the user's handwritten characters into characters corresponding to the preset font type.
[0004] All characters generated during a user's writing process are considered a character group. During editing, this character group corresponds to an independent data object, and all editing operations are performed on the entire character group; it is not possible to edit individual characters within it. When a user wants to edit only some characters within a character group, they need to erase the original character group, rewrite the relevant characters, and then edit them. This process is cumbersome and reduces the efficiency of character group editing. Summary of the Invention
[0005] This application provides a display device and a method for editing character groups to solve the problem of low efficiency in editing character groups.
[0006] In a first aspect, this application provides a display device, comprising: The touch interaction module is configured to detect the user's touch commands; The display is configured to show a whiteboard interface; the whiteboard interface includes character groups of a preset font type generated based on a single handwriting touch command from the user; each character group includes at least one character; each character group corresponds to a data object for storing character group data; The controller is configured as follows: In response to a user's split touch command, determine the touch position of the split touch command; If the touch position is located in the non-character area between any two adjacent characters in the first character group, a second data object and a third data object are created based on the first data object corresponding to the first character group, and the first data object is deleted; wherein, the second data object corresponds to the second character group, the third data object corresponds to the third character group, the second character group includes the characters in the first character group located between the start position and the non-character area, the third character group includes the characters in the first character group located between the non-character area and the end position, and the first character group is any character group in the whiteboard interface; In response to the user's editing command for either the second or third character group, the editing operation is performed based on the corresponding data object.
[0007] The above technical solution has the following beneficial effects or advantages: By detecting the user's touch position, if the touch position is located in the non-character area between adjacent characters in any character group, the character group splitting operation is triggered. Based on the creation and deletion of data objects, an independent character group is split into two independent character groups. Each split character group corresponds to an independent data object, which can respond to editing commands independently and can be edited separately, thereby improving the operational flexibility and editing convenience of character groups.
[0008] In some embodiments of this application, if the touch position is located in a non-character area between any two adjacent characters in the first character group, the controller creates a second data object and a third data object based on the first data object corresponding to the first character group, and deletes the first data object, specifically configured as follows: Control the display to show the dividing line in the non-character area; In response to the user's confirmation command for the dividing line, a second data object and a third data object are created based on the first data object corresponding to the first character group, and the first data object is deleted.
[0009] The above technical solution has the following beneficial effects or advantages: After recognizing the user's touch location, a dividing line is displayed in the corresponding non-character area for visual prompting. At the same time, control logic based on confirmation commands to trigger splitting is added to avoid erroneous splitting operations caused by accidental touches and improve the accuracy of character group splitting.
[0010] In some embodiments of this application, the controller is further configured to: In response to the user's selection command for the first character group, the display is controlled to show the selection box corresponding to each character in the first character group; In response to a lift-up event when a user performs a movement operation on a target selection box, a first distance is calculated between the moved target selection box and the first character group; the target selection box includes at least one selection box corresponding to the character. When the first distance is greater than the first distance threshold, the fourth position of the fourth character group is calculated based on the position of the target selection box after the movement; the fourth character group includes the character corresponding to the target selection box. Based on the character group data of the fourth character group in the first data object corresponding to the first character group, create the fourth data object corresponding to the fourth character group according to the fourth position; Arrange the characters in the first character group, excluding the fourth character group, in their original character order to obtain the fifth character group, and calculate the fifth position of the fifth character group; Based on the character group data of the fifth character group in the first data object corresponding to the first character group, create the fifth data object corresponding to the fifth character group according to the fifth position; Delete the first data object; Control the display to display the fourth character group based on the fourth data object, and to display the fifth character group based on the fifth data object; In response to an editing instruction for either the fourth or fifth character group, an editing operation is performed based on the corresponding data object.
[0011] The above technical solution has the following beneficial effects or advantages: By configuring a corresponding selection box for each character in a character group, precise single-character selection is achieved. When the user moves one or more selection boxes, the distance between the selection box and the character group is detected. If the distance meets the distance threshold, based on the creation and deletion of data objects, the characters in the selection boxes are separated into one character group, and the remaining characters are separated into another character group. This breaks through the limitations of traditional whole-segment character group editing, enabling the individual separation and modification of local characters and improving the personalized editing capabilities of character groups.
[0012] In some embodiments of this application, after the controller responds to a lift-up event in response to a user performing a movement operation on the target selection box, calculates a first distance between the moved target selection box and the first character group, it is further configured to: When the first distance is greater than the first distance threshold, the fourth position of the fourth character group is calculated based on the position of the moved target selection box; wherein, the fourth character group includes the character corresponding to the target selection box; Based on the character group data of the fourth character group in the first data object corresponding to the first character group, create the fourth data object corresponding to the fourth character group according to the fourth position; Based on the character group data of the sixth character group in the first data object corresponding to the first character group, a sixth data object is created; wherein, the sixth character group includes the characters in the first character group located between the starting position and the target selection box; The seventh data object is based on the character group data of the seventh character group in the first data object corresponding to the first character group; wherein, the seventh character group includes the characters in the first character group located between the target selection box and the end position; Delete the first data object; The display is controlled to display the fourth character group based on the fourth data object, the sixth character group based on the sixth data object, and the seventh character group based on the seventh data object; In response to an editing instruction for any of the fourth, sixth, and seventh character groups, an editing operation is performed based on the corresponding data object.
[0013] The above technical solution has the following beneficial effects or advantages: The character group is split into three parts, which are then divided into character groups consisting of the characters before the selected character, the selected character, and the characters after the selected character, thus further enhancing the personalized editing capabilities of the character group.
[0014] In some embodiments of this application, the controller is further configured to: In response to the user's drawing instruction for line segments in the whiteboard interface, the character information list is traversed; wherein, the character information list includes the bounding rectangle area corresponding to each character in each character group in the whiteboard interface; Determine the target character and the target word group; wherein, the target character is the character in the character information list whose bounding rectangle region intersects with the line segment at least twice, and the target word group is the word group containing the target character; Based on the target data object corresponding to the target character group, an eighth data object and a ninth data object are created, and the target data object is deleted; wherein, the eighth data object corresponds to the eighth character group, the ninth data object corresponds to the ninth character group, the eighth character group includes the characters in the target character group located between the start position and the target character, and the ninth character group includes the characters in the target character group located between the target character and the end position; Control the display to display the eighth character group based on the eighth data object, and to display the ninth character group based on the ninth data object; In response to an editing instruction for either the eighth or ninth character group, an editing operation is performed based on the corresponding data object.
[0015] The above technical solution has the following beneficial effects or advantages: For user-drawn line segments, the system can iterate through the bounding rectangle region corresponding to each character in each character group. Based on whether there are at least two intersection points between the line segment and the bounding rectangle region, the target character to be deleted is located. Using this as a boundary, the character group is split into two groups. Through the interactive method of hand-drawn line segment splitting, character deletion and character group splitting can be achieved simultaneously, simplifying the splitting operation process.
[0016] In some embodiments of this application, the controller is further configured to: In response to a user lift-up event that performs a movement operation on the first character group, a second distance is calculated between the first character group and the cross group after the movement; the first cross group is a character group in the whiteboard interface other than the first character group. When the second distance is less than the second distance threshold, the first arrangement order is determined based on the relative positional relationship between the first character group and the first cross group; Arrange the characters in the first character group and the characters in the tenth character group according to the first arrangement order to obtain the eleventh character group; Using the center point of the first character group as the scaling center, the first character group is scaled according to the font size of the first cross group to obtain the first position of the scaled first character group. Calculate the eleventh position of the eleventh character group based on the first position of the first character group after scaling and the tenth position of the first cross group; Based on the first data object corresponding to the first character group and the tenth data object corresponding to the tenth cross group, according to the eleventh position, create the eleventh data object corresponding to the eleventh character group, and delete the first data object and the tenth data object. Control the display to display the eleventh character group based on the eleventh data object; In response to the editing instruction for the eleventh character group, an editing operation is performed based on the eleventh data object.
[0017] The above technical solution has the following beneficial effects or advantages: When a user moves a character group, the distance between character groups is detected. When the distance meets the distance threshold, the two character groups are merged into one character group based on the creation and deletion of data objects. This achieves automatic merging of adjacent character groups. The merged character group corresponds to an independent data object, which can respond to editing commands independently and can be edited separately. This improves the operational flexibility and editing convenience of character groups, making it easier to manage and edit character groups in a unified manner.
[0018] In some embodiments of this application, the controller is further configured to: In response to a user's writing touch command, the writing area corresponding to the writing touch command is determined, and the vertical range of the first character group is determined; wherein, the vertical range is obtained by extending the outer rectangular area of the first character group by a third distance in the vertical direction; If the vertical center point of the writing area is located within the vertical range, and the horizontal distance between the writing area and the first character group is less than the horizontal distance threshold, then the second arrangement order is determined based on the relative positional relationship between the first character group and the writing area. Arrange the characters in the first character group and the characters generated based on the writing touch command according to the second arrangement order to obtain the twelfth character group, and calculate the twelfth position of the twelfth character group; Based on the first data object corresponding to the first character group, according to the twelfth position, create the twelfth data object corresponding to the twelfth character group, and delete the first data object; Control the display to display the twelfth character group based on the twelfth data object; In response to the editing instruction for the twelfth character group, an editing operation is performed based on the twelfth data object.
[0019] The above technical solution has the following beneficial effects or advantages: When a user writes a group of characters, the system checks whether the writing area meets the merging condition with any group of characters based on both vertical range and horizontal distance. If the merging condition is met, the newly added characters are merged with the original group of characters, and the font attributes of the original group of characters are retained. This avoids the generation of a large number of scattered short groups of characters from continuous writing, and ensures the continuity and format uniformity of the written content.
[0020] In some embodiments of this application, after the controller responds to a user's writing touch command, determines the writing area corresponding to the writing touch command, and determines the vertical range of the first character group, it is further configured to: If the vertical center point of the writing area is located in a non-vertical range, or if the horizontal distance between the writing area and the first character group is greater than or equal to a horizontal distance threshold, then the overlapping area between the writing area and the border area of the first character group is calculated; wherein, the border area is obtained by extending the outer rectangular area of the first character group outward by a fourth distance, the fourth distance is positively correlated with the font size of the first character group, and the non-vertical range is the range outside the vertical range in the whiteboard interface; If the overlapping area is 0, or the overlapping area is greater than or equal to the area threshold, then a thirteenth data object corresponding to the thirteenth character group is created, and the display is controlled to display the thirteenth character group in the writing area based on the thirteenth data object; wherein, the thirteenth character group includes characters generated based on the writing touch command; If the overlapping area is greater than 0 and less than the area threshold, the writing area is adjusted to the area adjacent to the border area, a thirteenth data object corresponding to the thirteenth character group is created, and the display is controlled to display the thirteenth character group in the adjusted writing area based on the thirteenth data object.
[0021] The above technical solution has the following beneficial effects or advantages: If the vertical range and horizontal distance conditions between the writing area and any character group are not met, the overlap area between the writing area and the border area of the character group is further detected to distinguish between various writing states such as no overlap, heavy overlap, and slight overlap. When there is no overlap or heavy overlap, a new character group is created independently. When there is slight overlap, an avoidance arrangement method is adopted to create a new character group in the adjacent area of the original character group, which effectively prevents the problem of text occlusion and improves the cleanliness of the interface.
[0022] In some embodiments of this application, the controller, based on the first data object corresponding to the first character group and the tenth data object corresponding to the tenth cross group, creates an eleventh data object corresponding to the eleventh character group according to the eleventh position, and deletes the first data object and the tenth data object. It is also configured to: Detect the current editing mode; When the current editing mode is uniform mode, the eleventh data object is created according to the tenth font color of the tenth group; the eleventh group includes characters in the first group that all have the tenth font color and characters in the tenth group; When the current editing mode is the retain mode, the eleventh data object is created according to the first font color of the first character group and the tenth font color of the cross group; wherein, the eleventh character group includes the characters in the first character group with the first font color and the characters in the cross group with the tenth font color.
[0023] The above technical solution has the following beneficial effects or advantages: Two editing modes, a unified mode and a retention mode, have been added during the character combination process. Users can selectively unify the font color or retain the original font colors of different character groups according to their needs. By configuring the font colors of characters in a differentiated manner, the system can take into account both the overall neat layout of the interface and the needs of differentiated content marking, effectively improving the adaptability of the whiteboard in various scenarios such as annotation, editing, and display.
[0024] Secondly, this application provides a character group editing method, applied to a display device of the first aspect, wherein the display device displays a whiteboard interface; the whiteboard interface includes character groups of a preset font type generated based on user writing touch commands; each character group includes at least one character; each character group corresponds to a data object for storing character group data; the method includes: In response to a user's split touch command, determine the touch position of the split touch command; If the touch position is located in the non-character area between any two adjacent characters in the first character group, a second data object and a third data object are created based on the first data object corresponding to the first character group, and the first data object is deleted; wherein, the second data object corresponds to the second character group, the third data object corresponds to the third character group, the second character group includes the characters in the first character group from the start position to the non-character area, the third character group includes the characters in the first character group from the non-character area to the end position, and the first character group is any of the character groups in the whiteboard interface; In response to the user's editing command for either the second or third character group, perform the editing operation.
[0025] The above technical solution has the following beneficial effects or advantages: By detecting the user's touch position, if the touch position is located in the non-character area between adjacent characters in any character group, the character group splitting operation is triggered. Based on the creation and deletion of data objects, an independent character group is split into two independent character groups. Each split character group corresponds to an independent data object, which can respond to editing commands independently and can be edited separately, thereby improving the operational flexibility and editing convenience of character groups. Attached Figure Description
[0026] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0027] Figure 1 This is a schematic diagram illustrating an operational scenario between a display device and a control device provided in some embodiments of this application; Figure 2 This is a schematic diagram of the hardware configuration of a display device provided in some embodiments of this application; Figure 3 This is a schematic diagram of the software configuration of a display device provided in some embodiments of this application; Figure 4 This is a schematic diagram of the two-dimensional coordinates of a character group provided in some embodiments of this application; Figure 5 A flowchart illustrating a character group editing method provided in some embodiments of this application; Figure 6 A schematic diagram of dividing lines provided for some embodiments of this application; Figure 7 A flowchart illustrating character group splitting based on a selection box is provided for some embodiments of this application; Figure 8 A schematic diagram of a selection box provided for some embodiments of this application; Figure 9 A schematic diagram of character group splitting based on a selection box provided for some embodiments of this application; Figure 10 A flowchart illustrating the process of character deletion and character group splitting based on drawing line segments, provided for some embodiments of this application; Figure 11 Schematic diagrams illustrating character deletion and word group splitting provided in some embodiments of this application; Figure 12 A flowchart illustrating word combination and merging based on move operations provided for some embodiments of this application; Figure 13 A schematic diagram illustrating word combination based on a move operation, provided for some embodiments of this application; Figure 14 A flowchart illustrating character combination and merging based on writing operations provided for some embodiments of this application; Figure 15 A schematic diagram illustrating the independent placement of character groups as provided in some embodiments of this application; Figure 16 This is a schematic diagram of the border area of a character group provided in some embodiments of this application; Figure 17 This is a schematic diagram of character group snapping and merging provided in some embodiments of this application; Figure 18 A schematic diagram illustrating character group avoidance pop-up provided in some embodiments of this application; Figure 19 This is a schematic diagram illustrating the non-avoidance pop-up of character groups provided in some embodiments of this application. Detailed Implementation
[0028] The embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The embodiments described below do not represent all embodiments consistent with this application. They are merely examples of systems and methods consistent with some aspects of this application as detailed in the claims.
[0029] In this embodiment, the display device 200 generally refers to a device with screen display and data processing capabilities. For example, the display device 200 includes, but is not limited to, smart TVs, mobile terminals, computers, monitors, advertising screens, wearable devices, virtual reality devices, augmented reality devices, etc.
[0030] Figure 1 This is a schematic diagram illustrating an operational scenario between a display device and a control device provided in some embodiments of this application. For example... Figure 1 As shown, a user can operate the display device 200 via touch operation, a mobile terminal 300, and a control device 100. The control device 100 receives user input commands and converts them into control commands that the display device 200 can recognize and respond to. For example, the control device 100 can be a remote control, a stylus, a gamepad, etc.
[0031] The mobile terminal 300 can function as a control device for human-computer interaction between the user and the display device 200. It can also function as a communication device for establishing a communication connection with the display device 200 and exchanging data. In some embodiments, the mobile terminal 300 can have software applications installed on it and communicate with the display device 200 via network communication protocols to achieve one-to-one control and data communication. Furthermore, it can transmit audio and video content displayed on the mobile terminal 300 to the display device 200 for synchronized display.
[0032] In some embodiments, the mobile terminal 300 or other electronic devices may also simulate the functions of the control device 100 by running an application that controls the display device 200.
[0033] like Figure 1 The diagram also shows that the display device 200 communicates with the server 400 via various communication methods. This allows the display device 200 to communicate via a local area network (LAN), a wireless local area network (WLAN), and other networks.
[0034] Display device 200 can provide broadcast television reception function, and can also be equipped with intelligent network television function that provides computer support function, including but not limited to network television, smart television, Internet Protocol television (IPTV), etc.
[0035] Figure 2 Provided for some embodiments of this application Figure 1 Hardware configuration block diagram of display device 200.
[0036] In some embodiments, the display device 200 may include at least one of a tuner 210, a communication device 220, a detector 230, a device interface 240, a controller 250, a display 260, an audio output device 270, a memory, a power supply, and a user input interface 280.
[0037] In some embodiments, detector 230 is used to acquire signals from the external environment or to interact with the outside world. For example, detector 230 includes a light receiver, a sensor for acquiring ambient light intensity; or, detector 230 includes an image acquisition device, such as a camera, which can be used to acquire external environmental scenes, user attributes, or user interaction gestures; or, detector 230 includes a sound acquisition device, such as a microphone, for receiving external sounds.
[0038] In some embodiments, the display 260 includes display function components for presenting images and driving components for driving image display. The display 260 is used to receive and display image signals output from the controller 250. For example, the display 260 can be used to display video content, image content, menu control interface components, and user control UI interfaces, etc.
[0039] In some embodiments, the communication device 220 is a component used to communicate with external devices or the server 400 according to various communication protocol types. The display device 200 may have multiple communication devices 220 depending on the supported communication methods. For example, when the display device 200 supports wireless network communication, it may have a communication device 220 with WiFi functionality. When the display device 200 supports Bluetooth connectivity, it needs to have a communication device 220 with Bluetooth functionality.
[0040] The communication device 220 enables the display device 200 to communicate with external devices or the server 400 via wireless or wired connections. Wired connections utilize data cables, interfaces, or other components to connect the display device 200 to external devices. Wireless connections utilize wireless signals or wireless networks. The display device 200 can directly establish a connection with external devices or indirectly through gateways, routers, or other connection devices.
[0041] In some embodiments, the controller 250 may include at least one of a central processing unit, a video processor, an audio processor, a graphics processor, and a power processor, and a first to an nth interface for input / output. The controller 250 controls the operation of the display device and responds to user operations through various software control programs stored in memory. The controller 250 controls the overall operation of the display device 200.
[0042] In some embodiments, the controller 250 and the tuner 210 may be located in different separate devices, that is, the tuner 210 may also be located in an external device of the main device where the controller 250 is located, such as an external set-top box.
[0043] In some embodiments, a user can input user commands through a graphical user interface (GUI) displayed on a display 260, and the user input interface 280 receives the user input commands through the graphical user interface (GUI).
[0044] In some embodiments, the audio output device 270 can be a built-in speaker of the display device 200 or an external audio output device connected to the display device 200. For the external audio output device connected to the display device 200, the display device 200 may also be provided with an external audio output terminal, through which the audio output device can be connected to the display device 200 to output sound from the display device 200.
[0045] In some embodiments, the user input interface 280 can be used to receive instructions from user input.
[0046] To enable user interaction, in some embodiments, the display device 200 may run an operating system. The operating system is a computer program used to manage and control the hardware and software resources of the display device 200. The operating system can control the display device to provide a user interface; for example, the operating system can directly control the display device to provide a user interface, or it can provide a user interface by running an application. The operating system also allows users to interact with the display device 200.
[0047] It should be noted that the operating system can be a native operating system based on a specific operating platform, a third-party operating system that is deeply customized based on a specific operating platform, or an independent operating system specifically developed for display devices.
[0048] An operating system can be divided into different modules or levels based on the functions it implements, for example... Figure 3 As shown, in some embodiments, the system is divided into four layers, from top to bottom: the Applications layer (referred to as the "Application Layer"), the Application Framework layer (referred to as the "Framework Layer"), the System Runtime Library layer, and the Kernel Layer.
[0049] In some embodiments, the application layer provides services and interfaces for applications, enabling the display device 200 to run applications and interact with the user based on the applications. The application layer may contain at least one application, which may be a built-in Windows program, system settings program, or clock program of the operating system; or it may be an application developed by a third-party developer. In specific implementations, the application packages in the application layer are not limited to the examples above.
[0050] The framework layer provides application programming interfaces (APIs) and a programming framework for applications. The application framework layer includes predefined functions. It acts as a central processing unit, determining the actions taken by applications within the application layer. Through the API, applications can access system resources and obtain system services during execution.
[0051] like Figure 3 As shown, the application framework layer in this embodiment includes a view system, managers, and content providers. The view system designs and implements the application's interface and interactions, and includes lists, grids, text boxes, and buttons. The managers include at least one of the following modules: an activity manager for interacting with all running activities in the system; a location manager for providing system services or applications with access to system location services; a package manager for retrieving various information related to application packages currently installed on the device; a notification manager for controlling the display and clearing of notification messages; and a window manager for managing icons, windows, toolbars, wallpapers, and desktop widgets on the user interface.
[0052] In some embodiments, the Activity Manager manages the lifecycle of individual applications and common navigation and back functions, such as controlling application exit, opening, and back actions. The Window Manager manages all window programs, such as obtaining the screen size, determining if a status bar is present, locking the screen, capturing the screen, and controlling changes to the display window, such as shrinking the display window, shaking the display, or distorting the display.
[0053] In some embodiments, the system runtime library layer can provide support for the framework layer. When the framework layer is used, the operating system runs the instruction library contained in the system runtime library layer, such as the C / C++ instruction library, to implement the functions to be performed by the framework layer.
[0054] In some embodiments, the kernel layer is a functional layer situated between the hardware and software of the display device 200. The kernel layer can implement functions such as hardware abstraction, multitasking, and memory management. For example, ... Figure 3 As shown, hardware drivers can be configured in the kernel layer. The kernel layer can contain at least one of the following drivers: audio driver, display driver, Bluetooth driver, camera driver, WIFI driver, USB driver, HDMI driver, sensor driver (such as fingerprint sensor, temperature sensor, pressure sensor, etc.), and power driver, etc.
[0055] It should be noted that the above examples are merely a simple division of operating system functions and do not limit the specific form of the operating system of the display device 200 in this application embodiment. Depending on the function of the display device, the type of operating system, and other factors, the number of levels and the specific level type of the operating system may be expressed in other forms.
[0056] In some embodiments, the display 260 can support touch interaction, that is, a touch interaction module can be provided on the display device 200. The touch interaction module can be a built-in module of the display 260, or it can be an external module of the display device 200 or the display 260. For example, to realize touch interaction, the display 260 of the display device 200 can be provided with a touch panel (TP). Depending on the actual application scenario of the display device 200, a capacitive touch panel, a resistive touch panel, an infrared touch panel, a surface acoustic wave touch panel, etc., can be used. Users can perform a series of touch actions through the touch panel.
[0057] For the display device 200 with an external touch interaction module, a terminal, device, or component with touch functionality can be connected via the device interface 240 of the display device 200. For example, the USB or USB-C interface of the display device 200 can be connected to a touchpad. The touchpad can receive touch data input by the user in real time and transmit the touch data to the display device 200 via the USB channel. The display device 200 can then perform interactive responses based on the received touch data and in conjunction with touch applications, enabling the display device 200 to support touch interaction operations.
[0058] The touch data can include different operation parameters depending on the user's input method. For example, touch data can include touch time, touch position, touch event type, and number of touch points. During a single touch interaction, the touch interaction module can detect touch event types including: down, move, and up events. Correspondingly, a start point, trajectory point, and end point can be formed along the entire touch trajectory. Each touch event records its corresponding touch time and touch position.
[0059] Based on the aforementioned touch interaction module, the display device 200 can support different types of interaction methods. Users can perform different interactive actions on the display device 200 through corresponding interaction methods, such as clicking, long pressing, and swiping, thereby controlling the display 260 to display the corresponding interface. To support more interaction methods, the touch interaction module can also support multi-touch. The more touch points the touch interaction module supports, the more interactive actions can be performed. For example, multi-finger clicking, multi-finger long pressing, and multi-finger swiping can be implemented.
[0060] In some embodiments, an electronic whiteboard application is installed on the display device 200. When a user activates the electronic whiteboard application, the display device 200 can control the display screen 260 to display the whiteboard interface. Figure 4 As shown, the whiteboard interface can include drawing tool controls for drawing operations, such as pen shape, graphic, line style, color, erase, clear screen, and selection controls. Users can click any control to draw graphics according to their specific drawing needs, such as writing characters, drawing, and inserting multimedia elements on the whiteboard interface.
[0061] In some embodiments, to improve the writing effect, the display device 200 can convert handwritten characters from a single touch gesture into characters in a specific font. There are two ways to convert handwritten characters into characters. The first method is to add the converted characters as images with a transparent background to the whiteboard interface. However, this method prevents users from performing subsequent text editing operations on the inserted characters, such as modifying content or adjusting formatting, resulting in poor flexibility. The second method is to draw characters of the corresponding font type in the writing area based on the user's writing trajectory. This method allows users to subsequently edit the characters.
[0062] A single touch action refers to the process from when the display device 200 detects a touch action (down event) to when it detects a touch action (up event). That is, from the moment the user's finger or stylus touches the screen of the display 260 until the user's finger or stylus leaves the screen, it is considered a single touch action. For example, if the user inputs a click action, a single touch action should include both down and up events. If the user inputs a swipe action, a single touch action should include down, move, and up events.
[0063] A user's single handwriting touch command includes at least one touch action. In some embodiments, a single handwriting touch command includes one touch action, and the display device 200 can generate a character of the corresponding font type based on the writing trajectory corresponding to this touch action when the up event of a touch action is detected. In some embodiments, a user's single handwriting touch operation includes multiple touch actions with time intervals less than a preset interval threshold, that is, the time interval between the up event of one touch action and the down event of the next touch action is monitored to determine whether it is a single handwriting touch command. For example, if the time interval is less than or equal to 3 seconds or 5 seconds, it is determined that these two touch actions belong to the same handwriting touch command, and the corresponding character belongs to the character in a single writing process. In this regard, the display device 200 can accumulate the writing trajectories generated by multiple touch actions, and after the time interval exceeds the preset interval threshold, generate multiple characters of the corresponding font type based on all the accumulated writing trajectories to complete the recognition and conversion of the handwritten character. This setting can adapt to the user's habit of completing the writing of a single or multiple characters in multiple strokes, improving the smoothness of handwriting recognition and conversion.
[0064] A single touch input command from a user generates all the characters as a group. During editing, this group is treated as an independent element object, and all editing operations are performed on the group as a whole. It is not possible to edit individual characters within a group. When a user wants to edit only some characters within a group, they need to erase the original group, rewrite the relevant characters, and then edit them. This cumbersome process reduces the efficiency of group editing.
[0065] To address the aforementioned issues, the display device 200 provided in this embodiment can execute a character group editing method, which can split an independent character group into two independent character groups. Each of the split character groups can independently respond to editing commands and be edited separately, thereby improving the operational flexibility and editing convenience of the character groups.
[0066] It should be noted that each independently editable word group displayed in the whiteboard interface corresponds to a data object for storing word group data. For example, the data object can be a text ink element (TextinkElement). Among them, the word group data includes data parameters related to the word group such as the characters included in the word group, coordinate positions, font sizes, font styles, and font colors. Editing operations such as moving, scaling, modifying formats, and deleting the word group are essentially data modifications to its corresponding data object.
[0067] In this embodiment, by utilizing the two-dimensional characteristics of the whiteboard interface, the merging and splitting of different word groups are achieved by recording the two-dimensional coordinates of the word group and the two-dimensional coordinates of each character in the word group. That is, the coordinate positions recorded in the data object include the two-dimensional coordinates (group coordinates) corresponding to the overall circumscribed rectangle area of the word group and the two-dimensional coordinates (character-level coordinates) corresponding to the circumscribed rectangle area of each character in the word group.
[0068] For example, as Figure 4 shown, it is a schematic diagram of the two-dimensional coordinates of the word group provided by the embodiment of the present application. Regarding the whiteboard interface as a two-dimensional plane, with the upper left corner of the whiteboard interface as the origin, the length direction (to the right) as the X-axis direction, and the width direction (downward) as the Y-axis direction, a plane coordinate system is established. The position of the word group and the position of each character in the word group can be identified by coordinate pairs.
[0069] For Figure 4 the word group A "standard word" shown, the two-dimensional coordinates corresponding to the overall circumscribed rectangle area of the word group A are {(xA1, yA1), (xA6, yA6)}, and the two-dimensional coordinates corresponding to the circumscribed rectangle areas of each character in the word group are respectively {(xA1, yA1), (xA2, yA2)}; {(xA3, yA3), (xA4, yA4)}; {(xA5, yA5), (xA6, yA6)}.
[0070] For Figure 4 the word group B "new" shown, the two-dimensional coordinates corresponding to the overall circumscribed rectangle area of the word group B are {(xB1, yB1), (xB2, yB2)}.
[0071] Next, the word group editing method provided by the embodiment of the present application will be elaborated.
[0072] The display device 200 capable of applying the word group editing method at least includes: a display 260, a touch interaction module, and a controller 250. Among them, the display 260 is configured to display a whiteboard interface, and the whiteboard interface includes word groups of a preset font type generated based on the user's writing touch instructions, and the word group includes at least one character. The touch interaction module is configured to detect the user's touch instructions. The controller 250 is configured to execute the specific steps of the word group editing method. As Figure 5The diagram shown is a flowchart of the character group editing method provided in this application embodiment, which specifically includes the following steps: S501 responds to the user's split touch command and determines the touch position of the split touch command.
[0073] During the operation of the whiteboard interface, the display device 200 can receive user touch commands in real time. When a user wants to edit a portion of the characters in a character group individually, they can input a split touch command into the non-character area between any two adjacent characters in that character group. In response to this split touch command, the display device 200 determines the touch position. If the touch position is located in the non-character area between any two adjacent characters in the first character group, the character group split operation is triggered. If the touch position is not located in the non-character area between any two adjacent characters in the first character group, the character group split operation is not triggered.
[0074] In some embodiments, split touch commands can be implemented in various ways. For example, a split touch command can be a tap, a draw, a long press, or other predefined touch operations.
[0075] In some embodiments, to avoid accidental triggering, an editing mode for character groups can be set. The character group splitting operation will only be triggered when a splitting touch command is detected in the character group editing mode, thereby improving the accuracy of the operation and reducing interference with the user's normal operation. For example, the user can long-press any character group in the whiteboard interface to bring up the editing menu, click the "Split" option in the menu to enter the editing mode of that character group, and then click on the non-character area between adjacent characters within the character group to trigger the splitting operation. Alternatively, the user can select any character group in the whiteboard interface to enter the editing mode of that character group.
[0076] In some embodiments, to avoid accidental triggering, if the touch position is located in a non-character area between any two adjacent characters in the first character group, the display device 200 controls the display 260 to display a dividing line in the non-character area. In response to the user's confirmation command of the dividing line, subsequent character group splitting operations are then performed. For example, as... Figure 6 The diagram shown is a schematic of the dividing line provided in an embodiment of this application. The whiteboard interface includes character group A "standard character". The user's touch position is the non-character area between "standard" and "character". After recognizing the user's touch position, the display device 200 displays a dividing line in the non-character area corresponding to the touch position for visual prompting, avoiding incorrect splitting operations caused by accidental touches and improving the accuracy of character group splitting.
[0077] S502, if the touch position is in the non-character area between any two adjacent characters in the first word group, create a second data object and a third data object based on the first data object corresponding to the first word group, and delete the first data object. The second data object corresponds to a second word group, and the third data object corresponds to a third word group. The second word group includes the characters in the first word group between the starting position and the non-character area, and the third word group includes the characters in the first word group between the non-character area and the ending position. The first word group is any word group in the whiteboard interface.
[0078] In this regard, after determining the touch position of the split touch command, the display device 200 detects whether the touch position is in the non-character area of any word group in the whiteboard interface. The non-character area refers to the area between two adjacent characters in the word group. Each character in the word group corresponds to an external rectangle area, and the non-character area is the area in the overall external rectangle area of the word group that does not belong to the external rectangle area of any character.
[0079] When it is detected that the touch position is in the non-character area of the first word group, the first word group is split. The display device 200 can extract the word group data of the second word group and the word group data of the third word group from the first data object corresponding to the first word group, and create a second data object corresponding to the second word group based on the word group data of the second word group, and create a third data object corresponding to the third word group based on the word group data of the third word group. After the creation of the data objects is completed, the first data object is deleted, the first word group is removed from the whiteboard interface, and the second word group and the third word group are rendered and displayed in the whiteboard interface based on the second data object and the third data object respectively. This splitting method enables the two split word groups to retain the display effect of the original word group, and the two word groups are independent of each other, each corresponding to an independent data object, and can be edited separately based on the corresponding data object.
[0080] For example, continuing with Figure 6 the word group example shown, the whiteboard interface includes the word group A "standard word". The user performs a selection operation on the word group A to enter the editing mode of the word group A. In the editing mode of the word group A, the user performs a click operation or vertically draws a line segment in the non-character area between "准" and "字" in the word group A. Then the display device 200 can display a dividing line in the non-character area. When the user performs a click operation again or the up event of the user's drawn line segment is detected, the word group A "standard word" is split into two word groups, namely the word group C "标准" and the word group D "字". After the word group splitting is completed, the selection state of the word group A can be cancelled by clicking on the blank area of the whiteboard interface to exit the editing mode of the word group A.
[0081] Specifically, character group A corresponds to a data object, namely TextinkElement A. The display device 200 splits the character group A "standard character" recorded in TextinkElement A into two character groups: character group C "standard" and character group D "character". Then, it creates two new TextinkElements for each character group: TextinkElement C and TextinkElement D. TextinkElement C stores the character group data of character group C, and TextinkElement D stores the character group data of character group D.
[0082] The starting coordinates of character group C follow those of character group A. The starting coordinates of character group D are the sum of the starting coordinates of character group A and the character width of character group C. Both character groups inherit the font size, font style, and font color attributes of character group A.
[0083] Then, the display device 200 can replace the original TextinkElement A by deleting it through the command manager and adding two new TextinkElements, C and D. This splitting and editing operation supports an undo and redo mechanism. The command manager records the operation status and data snapshots. When an undo operation is triggered, the two TextinkElements C and D generated by the splitting are merged and restored to the original TextinkElement A before the splitting operation, thus merging character group C and character group D back into character group A.
[0084] S503 responds to the user's editing command for either the second or third character group and performs the editing operation based on the corresponding data object.
[0085] After the character group is split, the display device 200 can respond to the editing command of any split character group and perform the editing operation based on the corresponding data object to realize the individual editing after splitting. This solves the problem that characters within the same character group cannot be adjusted individually and need to be erased and rewritten before they can be edited individually, effectively improving the efficiency of whiteboard writing and editing.
[0086] In some embodiments, the display device 200 can also use a selection box to implement the character group splitting operation. For example... Figure 7 The diagram shown is a flowchart illustrating the character group splitting based on a selection box provided in the application embodiment, which specifically includes the following steps: S701, in the editing mode for the first character group, the control display 260 displays the selection box corresponding to each character in the first character group.
[0087] In the editing mode of the first character group, the display device 200 can control the display 260 to display the selection box corresponding to each character in the first character group, allowing the user to intuitively select each character individually, providing an operational basis for splitting the character group.
[0088] S702, in response to the user's command to select the target selection box, controls the display 260 to highlight the target selection box.
[0089] The display device 200 can respond to a user's selection command for a target selection box by highlighting the target selection box to clearly identify the characters to be split. The target selection box includes a selection box corresponding to at least one character. The display device 200 can support users clicking on a single character's selection box or clicking on multiple character selection boxes consecutively to select multiple characters.
[0090] For example, such as Figure 8 The diagram shows a selection box provided in an embodiment of this application. The whiteboard interface includes character group A, "standard character". In the editing mode of character group A, each character in character group A corresponds to a selection box. When the user wants to separate "standard" from character group A, they click the selection box corresponding to "standard" to make the selection box highlighted.
[0091] S703, in response to a lift-up event when the user performs a move operation on the target selection box, calculates the first distance between the moved target selection box and the first text group.
[0092] After a user selects a target selection box, they can move the target selection box. In response to the user lifting the target selection box after moving it, the system can calculate the first distance between the moved target selection box and the first character group. If the first distance is greater than the first distance threshold, the system can trigger the character group splitting operation.
[0093] In some embodiments, as the user moves the target selection box, the display device 200 can display the movement status of the target selection box in real time. It is understood that during the movement of the target selection box, the visual presentation will include two parts: "the dragged-out characters" and "the remaining characters of the first character group." The movement of the characters is merely a real-time visual preview, providing the user with intuitive visual feedback that the split is about to occur. At the underlying data level, the first character group remains an independent entity. Only when the user drags the box beyond a threshold and releases it, and the system performs underlying data splitting, will the display of the first character group be updated to two or more independent new character groups.
[0094] S704, when the first distance is greater than the first distance threshold, the first character group is split into the fourth character group and the fifth character group. The fourth character group includes the characters corresponding to the target selection box, and the fifth character group includes the characters in the first character group other than the fourth character group.
[0095] The display device 200 can, based on the creation and deletion of data objects, split the characters in the target selection box in the first word group as an independent fourth word group, and use the remaining characters in the first word group as an independent fifth word group.
[0096] Specifically, the display device 200 can calculate the fourth position of the fourth word group based on the position of the moved target selection box, and create a fourth data object corresponding to the fourth word group according to the fourth position based on the word group data of the fourth word group in the first data object corresponding to the first word group. Here, the fourth position is the coordinate position when the fourth word group is displayed at the position corresponding to the moved target selection box.
[0097] The display device 200 can also arrange the characters in the first word group except the fourth word group in the original character order (the arrangement order in the first word group) to obtain the fifth word group, calculate the fifth position of the fifth word group, and create a fifth data object corresponding to the fifth word group according to the fifth position based on the word group data of the fifth word group in the first data object corresponding to the first word group.
[0098] After the creation of the data objects is completed, the first data object is deleted, the first word group is removed from the whiteboard interface, and the fourth word group and the fifth word group are respectively rendered and displayed in the whiteboard interface based on the fourth data object and the fifth data object. The fourth word group and the fifth word group are independent of each other, each corresponding to an independent data object, and can be independently edited based on the corresponding data objects.
[0099] For example, continuing with Figure 8 the word group example shown, if the user wants to split the character "准" from word group A, they click on the selection box corresponding to "准" to make the selection box highlighted. The user drags the selection box corresponding to "准" to move. When the distance between the selection box corresponding to "准" and word group A is greater than the preset distance, word group A "标准字" is split into two word groups, namely word group E "准" and word group F "标字". After the word group splitting is completed, the user can click on the blank area in the whiteboard interface to cancel the selection state of word group A and exit the editing mode of word group A.
[0100] Specifically, the character group A corresponds to a data object, namely TextinkElement A. The display device 200 splits the "standard characters" of the character group A recorded in TextinkElement A into two character groups, namely the character group E "准" and the character group F "标字", and then creates two new TextinkElements respectively, namely TextinkElement E and TextinkElement F. TextinkElement E stores the character group data of the character group E, and TextinkElement F stores the character group data of the character group F.
[0101] Among them, the coordinate position of the character group E can be calculated based on the coordinate position of the moved target selection box, that is, the coordinate position of the character group E is the display coordinate of the fourth character group in the whiteboard interface after dragging. The coordinate position of the character group F can be calculated based on the two-dimensional coordinates corresponding to the circumscribed rectangle areas of the characters "标" and "字" in the character group A. Both character groups inherit the attributes such as font size, font style, and font color of the character group A.
[0102] Then, the display device 200 can perform a replacement process on the original TextinkElement A, delete TextinkElement A through the command manager, and add the two newly created TextinkElements E and TextinkElement F, so as to split the character group A into the character group E and the character group F.
[0103] S705, when the first distance is greater than the first distance threshold, split the first character group into a fourth character group, a sixth character group, and a seventh character group. The fourth character group includes the characters corresponding to the target selection box, the sixth character group includes the characters in the first character group between the starting position and the target selection box, and the seventh character group includes the characters in the first character group between the target selection box and the ending position.
[0104] The display device 200 can also split the character group in a three-segment splitting manner. That is, the display device 200 can split the characters in the target selection box in the first character group as an independent fourth character group based on the creation and deletion of data objects, and split the characters on both sides of the fourth character group in the first character group as two independent sixth and seventh character groups respectively.
[0105] Specifically, the display device 200 can calculate the fourth position of the fourth word group based on the position of the moved target selection box, and create a fourth data object corresponding to the fourth word group according to the word group data of the fourth word group in the first data object corresponding to the first word group. The display device 200 can also create a sixth data object corresponding to the sixth word group based on the word group data of the fourth word group in the first data object corresponding to the first word group, and create a seventh data object corresponding to the seventh word group based on the word group data of the seventh word group in the first data object corresponding to the first word group.
[0106] After creating the data objects, delete the first data object, remove the first word group from the whiteboard interface, and render and display the fourth word group, the sixth word group, and the seventh word group in the whiteboard interface based on the fourth data object, the sixth data object, and the seventh data object respectively. The fourth word group, the sixth word group, and the seventh word group are independent of each other and each corresponds to an independent data object, and can be individually edited based on the corresponding data object.
[0107] For example, as Figure 9 shown, if the user wants to split "准" from word group A, click on the selection box corresponding to "准" to make the selection box highlighted. The user drags the selection box corresponding to "准" to move. When the distance between the selection box corresponding to "准" and word group A is greater than the preset distance, split word group A "标准字" into three word groups, namely word group E "准", word group G "标", and word group H "字". After completing the word group splitting, click on the blank area in the whiteboard interface to cancel the selection state of word group A and exit the editing mode of word group A.
[0108] Specifically, word group A corresponds to a data object, namely TextinkElement A. The display device 200 splits the word group A "标准字" recorded in TextinkElement A into two word groups, namely word group E "准", word group G "标", and word group H "字", and then creates three new TextinkElements, namely TextinkElement E, TextinkElement G, and TextinkElement H respectively. TextinkElement E stores the word group data of word group E, TextinkElement G stores the word group data of word group G, and TextinkElement H stores the word group data of word group H.
[0109] Among them, the coordinate position of character group E can be calculated based on the coordinate position of the moved target selection box, that is, the coordinate position of character group E is the display coordinate of the fourth character group in the whiteboard interface after dragging. The coordinate position of character group G follows the two-dimensional coordinates corresponding to the circumscribed rectangle area of the character "mark" in character group A. The coordinate position of character group H follows the two-dimensional coordinates corresponding to the circumscribed rectangle area of the character "word" in character group A. All three character groups inherit attributes such as the font size, font style, and font color of character group A.
[0110] Then, the display device 200 can perform a replacement process on the original TextinkElement A, delete TextinkElement A through the command manager, and add the three newly created TextinkElement E, TextinkElement G, and TextinkElement H, so as to split character group A into character group E and character group F.
[0111] In some embodiments, the display device 200 can perform character deletion and character group splitting operations simultaneously by drawing a line segment. As Figure 10 shown, it is a flow schematic diagram for implementing character deletion and character group splitting based on drawing a line segment provided by the application embodiment, which specifically includes the following steps: S1001, in response to a user's drawing instruction for a line segment in the whiteboard interface, traverse the character information list to determine the target character and the target character group. The target character is the character in the character information list whose circumscribed rectangle area has at least two intersections with the line segment, and the target character group is the character group containing the target character.
[0112] The display device 200 creates and maintains a character information list, which records the circumscribed rectangle areas corresponding to each character in each character group in the whiteboard interface. The display device 200 can, in response to a user's drawing instruction for a line segment, traverse the character information list, perform an intersection detection between the circumscribed rectangle area of each character and the line segment drawn by the user, and screen out the characters with at least two intersections as the target characters, and at the same time mark the character group containing the target character as the target character group.
[0113] In some embodiments, to avoid misoperations, the display device 200 only triggers the execution of character deletion and character group splitting when detecting a straight line or a line segment close to a straight line, and does not perform character deletion and character group splitting when detecting an arc or a line segment of other shapes.
[0114] S1002, delete the target character, and split the target character group into the eighth character group and the ninth character group. The eighth character group includes the characters in the target character group that are between the starting position and the target character, and the ninth character group includes the characters in the target character group that are between the target character and the ending position.
[0115] After confirming the target character and target word group, the display device 200 can delete the target character and split the target word group into two independent word groups, namely the eighth word group and the ninth word group, using the drawn line segment as the dividing line, thereby realizing the character deletion and word group splitting operation triggered by drawing a line segment.
[0116] Specifically, the display device 200 can extract the character group data of the eighth and ninth character groups from the target data object corresponding to the target character group. Based on the character group data of the eighth character group, it creates an eighth data object corresponding to the eighth character group, and based on the character group data of the ninth character group, it creates a ninth data object corresponding to the ninth character group. After the data objects are created, the target data object is deleted, removing the first character group from the whiteboard interface. Based on the eighth and ninth data objects, the eighth and ninth character groups are rendered and displayed on the whiteboard interface respectively. The eighth and ninth character groups are independent of each other, each corresponding to an independent data object, and can be edited separately based on the corresponding data object. This interactive method of splitting by hand-drawn lines can simultaneously realize character deletion and character group splitting, simplifying the operation process.
[0117] For groups of characters in the whiteboard interface, specified characters can be erased by drawing lines, and the remaining characters will be automatically split into independent, editable groups, improving editing flexibility. The specific character deletion and group splitting process is explained below: The user draws a straight line or a near-straight line segment on any character in any group of characters on the whiteboard interface using a pen. The display device 200 can traverse the bounding rectangle area of each character in the character information list, and perform intersection detection on the bounding rectangle area of each character and the line segment drawn by the user one by one. It records the position of the first character (startPos) and the position of the last character (endPos) where there are at least two intersection points, so as to determine the range of consecutive characters that need to be deleted.
[0118] Based on startPos and endPos, the original character group is split into multiple independent character groups. If startPos > 0, it means there are characters before the character to be deleted, so the preceding characters are grouped into an independent character group. If endPos < the total number of characters in the character group, it means there are characters after the character to be deleted, so the following characters are grouped into an independent character group. Each split character group inherits the font size, font style, font color, and other attributes of the original character group, and its corresponding coordinate position can be calculated based on the coordinate position of the corresponding character in the original character group.
[0119] For example, such as Figure 11As shown, the whiteboard interface includes the character group i "Hello". When the user draws a line segment that passes through the character "好" in the character group i, the display device 200 can split the character group i "Hello" into two character groups, namely the character group j "你" and the character group K "呀".
[0120] Specifically, the character group i corresponds to a data object, that is, TextinkElement i. The display device 200 splits the character group i "Hello" recorded in TextinkElement i into two character groups, namely the character group j "你" and the character group K "呀", and then creates two new TextinkElements, namely TextinkElement j and TextinkElement K respectively. TextinkElement j stores the character group data of the character group j, and TextinkElement K stores the character group data of the character group K.
[0121] Among them, the coordinate position of the character group j follows the two-dimensional coordinates corresponding to the bounding rectangle area of the character "你" in the character group i. The coordinate position of the character group K follows the two-dimensional coordinates corresponding to the bounding rectangle area of the character "呀" in the character group K. Both character groups inherit attributes such as the font size, font style, and font color of the character group A.
[0122] Then, the display device 200 can perform a replacement process on the original TextinkElement i, delete TextinkElement i through the command manager, and add the two newly created TextinkElements j and TextinkElement K, thereby realizing the deletion of the character "好" and the splitting of the character group i.
[0123] In some embodiments, for multiple character groups in the whiteboard interface, if editing operations such as selection, erasure, copying, and pasting are required, it is necessary to select each character group for processing one by one, which is cumbersome and reduces the user experience. In this regard, the display device 200 can merge two independent character groups into one independent character group, and the merged character group can independently respond to editing instructions, thereby improving the operation flexibility and editing convenience of the character group.
[0124] As Figure 12 shown, it is a schematic flowchart of character group merging based on a mobile operation provided by an embodiment of the present application, specifically including the following steps: S1201, in response to the lift event of the user's mobile operation on the first character group, calculate the second distance between the moved first character group and the tenth character group.
[0125] The first cross group refers to the character groups in the whiteboard interface other than the first character group. The display device 200 can respond to a lift event when the user performs a movement operation on the first character group, calculate the first distance between the moved first character group and the first cross group, and trigger a character group merging operation when the second distance is less than a second distance threshold.
[0126] S1202, when the second distance is less than the second distance threshold, the first character group is scaled according to the font size of the cross group, with the center point of the first character group as the scaling center.
[0127] In order to keep the font size of the two font groups consistent, the display device 200 can use the center point of the first font group as the scaling center and adjust the font size of the first font group according to the font size of the second font group.
[0128] S1203, merge the scaled first character group into the cross group to obtain the eleventh character group.
[0129] After the font size adjustment is completed, the display device 200 merges the scaled first character group into the cross group to generate a new independently editable character group, namely the eleventh character group.
[0130] Specifically, when the display device 200 detects that the second distance is less than the second distance threshold, it can determine a first arrangement order based on the relative positional relationship between the first character group and the cross group, and arrange the characters in the first character group and the cross group according to the first arrangement order to obtain the eleventh character group. Then, using the center point of the first character group as the scaling center, the first character group is scaled according to the font size of the cross group to obtain the first position of the scaled first character group. Based on the first position of the scaled first character group and the tenth position of the cross group, the eleventh position of the eleventh character group is calculated. Finally, based on the first data object corresponding to the first character group and the tenth data object corresponding to the cross group, the eleventh data object corresponding to the eleventh character group is created according to the eleventh position.
[0131] The relative positional relationship refers to the horizontal or vertical relative position of the first character group and the first cross group on the whiteboard interface. The first arrangement order refers to the order in which the characters in the first character group and the characters in the first cross group are arranged. For example, when the characters in the character group are arranged horizontally along the whiteboard interface, the relative positional relationship between the first character group and the first cross group can be determined based on the coordinates of their center points. If the relative positional relationship is that the first character group is to the left of the first cross group, then the characters in the first character group are placed before the characters in the first cross group. If the relative positional relationship is that the first character group is to the right of the first cross group, then the characters in the first character group are placed after the characters in the first cross group. When characters in a character group are arranged vertically along the whiteboard interface, the relative position of the first character group and the second cross group can be determined based on the coordinates of their center points. If the relative position is that the first character group is above the second cross group, then the characters in the first character group are placed above the characters in the second cross group. If the relative position is that the first character group is below the second cross group, then the characters in the first character group are placed below the characters in the second cross group.
[0132] After creating the data objects, delete the first data object to remove the first character group from the whiteboard interface, and then render and display the eleventh character group on the whiteboard interface based on the eleventh data object. The eleventh character group corresponds to an independent data object, which can be edited separately.
[0133] In some embodiments, the display device 200 can provide two editing modes for character combination and merging operations: a unified mode and a retention mode. Users can selectively unify the font color or retain the original font colors of different character groups according to their needs. When performing a character combination and merging operation on the first character group and the cross group, the display device 200 can detect the current editing mode. If the current editing mode is unified mode, an eleventh data object is created according to the tenth font color of the cross group. The eleventh character group includes characters from the first character group and characters from the cross group, all of which have the tenth font color. That is, the font color of all characters in the merged eleventh character group uses the tenth font color of the cross group.
[0134] When the current editing mode is Preservation Mode, an eleventh data object is created based on the first font color of the first character group and the tenth font color of the tenth character group. The eleventh character group includes the characters from the first character group (with the first font color) and the characters from the tenth character group (with the tenth font color). In other words, each character in the merged eleventh character group retains its original font color.
[0135] For example, such as Figure 13 As shown, with Figure 4Taking character group A "standard character" and character group B "new" as an example, after the user selects character group B and drags it near character group A, when the user releases the drag, the display device 200 checks whether the distance between character group A and character group B meets the merging conditions. The merging conditions include X-axis distance conditions and Y-axis alignment conditions. Specifically, the X-axis distance condition means that the horizontal distance between character group A and character group B is less than a preset threshold X0, and the vertical distance between the center point of character group A and the center point of character group B is less than a preset threshold Y0. Character group merging is triggered only when these merging conditions are met, thus ensuring that only two character groups that are sufficiently close horizontally and approximately on the same vertical line are merged.
[0136] When merging character groups, it is necessary to handle situations where the font attributes of the two character groups are inconsistent. Font attributes include font size (font dimensions) and font color.
[0137] For font size, the font size of font group A can be used as a reference. Font group B is then scaled with its center point as the scaling center to ensure consistent text size within the same line after merging, resulting in a visually neat appearance. The scaling ratio is calculated as: Font size of font group A / Font size of font group B. After scaling, the group coordinates and character-level coordinates of font group B are calculated. That is, the two-dimensional coordinates of font group B after scaling are {(xB1', yB1'), (xB2', yB2')}.
[0138] For font colors, there are two editing modes: Unified Mode and Preservation Mode. In Unified Mode, the font color of group A is used as the standard, and the font color of group B is changed to match the font color of group A, so that the entire merged group L has a consistent color. In Preservation Mode, each character in the merged group L retains its original font color. Characters from the original group A retain their original font color, and characters from the original group B retain their original font color. This mode is suitable for scenarios where different colors are needed for highlighting or distinguishing content.
[0139] For the underlying text combination logic, the core of the merging is to merge two independent TextinkElements into a new TextinkElement at the data level.
[0140] The first step is to determine the merging direction based on the horizontal position of group B relative to group A. If group B is to the left of group A, then the characters of group B are appended before the characters of group A. If group B is to the right of group A, then the characters of group B are appended after the characters of group A.
[0141] The second step is to merge the character groups in group A and group B according to the merging direction to generate character group L. For example, if you drag character group B in front of character group A, the character content of character group L will be "New Standard Character".
[0142] The third step is to calculate the group coordinates and character-level coordinates of group L. If group B precedes group A, then the starting X-axis coordinate of group L = the starting X-axis coordinate of group A - the width of group B after scaling. The starting Y-axis coordinate follows the starting Y-axis coordinate of group A. That is, the two-dimensional coordinates of group L are {(xA1 - xB1', yA1), (xA6, yA6)}. If group B follows group A, then the starting X-axis coordinate of group L = the starting X-axis coordinate of group A, and the ending X-axis coordinate = the ending X-axis coordinate of group A + the width of group B after scaling. That is, the two-dimensional coordinates of group L are {(xA1, yA1), (xA6 + xB1', yA6)}.
[0143] The fourth step is to use the concatenated character content, the group coordinates and font-level coordinates of character group L, and the font size and color of character group A to create the TextinkElement L corresponding to character group L.
[0144] Fifth, use the command manager to delete TextinkElement A corresponding to character group A and TextinkElement B corresponding to character group B, and add TextinkElement L corresponding to the newly created character group L. This merges character group A "Standard Character" and character group B "New" into character group L "New Standard Character". Subsequently, character group L can be selected, moved, erased, and edited as a whole.
[0145] This character group merging operation supports undo and redo mechanisms. The operation status and data snapshots are recorded uniformly through the command manager. When the undo operation is triggered, the two TextinkElement L generated by the merge are restored to TextinkElement A and TextinkElement B before the merge operation, thereby realizing the restoration of character group L back to character group A and character group B.
[0146] In some embodiments, when a user writes a group of characters, the display device 200 can detect whether the writing area and any group of characters meet the merging conditions based on both vertical range and horizontal distance. When the merging conditions are met, the newly added writing characters are merged with the original group of characters, and the font attributes of the original group of characters are retained. This avoids the generation of a large number of scattered short groups of characters during continuous writing, and ensures the continuity and format uniformity of the written content.
[0147] like Figure 14 The diagram shown is a flowchart illustrating the character combination and merging based on writing operations provided in an embodiment of this application, specifically including the following steps: S1401, in response to the user's writing touch command, determines the writing area corresponding to the writing touch command, and determines the vertical range of the first character group.
[0148] The vertical range is obtained by extending the outer rectangular area of the first character group by a third distance in the vertical direction. The writing area refers to the outer rectangular area corresponding to the character group generated by the user's current writing touch operation.
[0149] S1402, if the vertical center point of the writing area is within the vertical range, and the horizontal distance between the writing area and the first character group is less than the horizontal distance threshold, then the characters generated based on the writing touch command are merged into the first character group to obtain the twelfth character group.
[0150] After determining the vertical range of the writing area and the first character group, the display device 200 can detect whether the vertical center point of the writing area is within the vertical range, and whether the horizontal distance between the writing area and the first character group is less than the horizontal distance threshold. If the above two conditions are met, the character group merging operation is triggered.
[0151] Specifically, the display device 200 can determine a second arrangement order based on the relative positional relationship between the first character group and the writing area, arrange the characters in the first character group and the characters generated based on the writing touch command according to the second arrangement order to obtain the twelfth character group, and calculate the twelfth position of the twelfth character group. Finally, based on the first data object corresponding to the first character group, a twelfth data object corresponding to the twelfth character group is created according to the twelfth position.
[0152] The relative positional relationship refers to the horizontal or vertical relative position of the first character group and the writing area on the whiteboard interface. The second arrangement order refers to the order in which the characters in the first character group are arranged with the characters generated based on the writing touch commands. Refer to the description of the relative positional relationship between the first character group and the cross group, as well as the first arrangement order, which will not be repeated here.
[0153] After creating the data objects, delete the first data object to remove the first character group from the whiteboard interface, and then render and display the twelfth character group on the whiteboard interface based on the twelfth data object. The twelfth character group corresponds to an independent data object, which can be edited separately.
[0154] S1403, if the vertical center point of the writing area is located in a non-vertical range, or the horizontal distance between the writing area and the first character group in the horizontal direction is greater than or equal to the horizontal distance threshold, then calculate the overlapping area between the writing area and the border area of the first character group.
[0155] The border area is obtained by extending the outer rectangle of the first character group outward by a fourth distance. This fourth distance is positively correlated with the font size of the first character group; the larger the font size, the larger the fourth distance. The non-vertical range refers to the area outside the vertical range of the whiteboard interface.
[0156] After determining the vertical range of the writing area and the first character group, the display device 200 can detect whether the vertical center point of the writing area is within the vertical range, and whether the horizontal distance between the writing area and the first character group is less than the horizontal distance threshold. If either of the above two conditions is not met, the character generated by this writing operation will be identified as an independent new character group.
[0157] Furthermore, the display device 200 can detect the overlap area between the writing area and the border area of the first character group. Based on the overlap area, it can distinguish between various writing states such as no overlap, heavy overlap, and slight overlap. When there is no overlap or heavy overlap, a new character group is created independently. When there is slight overlap, an avoidance arrangement method is adopted to create a new character group in the adjacent area of the original character group, which effectively prevents the problem of text obscuring and improves the cleanliness of the interface.
[0158] S1404, if the overlapping area is 0, or the overlapping area is greater than or equal to the area threshold, then create the thirteenth data object corresponding to the thirteenth character group, and control the display 260 to display the thirteenth character group in the writing area based on the thirteenth data object.
[0159] The thirteenth character group includes characters generated based on handwriting touch commands. If the overlap area is 0, it means that the newly written character group does not overlap with the existing first character group and there is no mutual occlusion, so a new independent thirteenth character group is created. If the overlap area is greater than or equal to the area threshold, it means that the degree of overlap is high, and in order to meet the user's intention, a new independent thirteenth character group is also created directly.
[0160] S1405, if the overlapping area is greater than 0 and less than the area threshold, the writing area is adjusted to the area adjacent to the border area of the first character group, the thirteenth data object corresponding to the thirteenth character group is created, and the display 260 is controlled to display the thirteenth character group in the adjusted writing area based on the thirteenth data object.
[0161] If the overlapping area is greater than 0 but less than the area threshold, it is considered a slight overlap. In this case, the thirteenth character group is adjusted to the adjacent blank area of the original first character group. This preserves the user's original general writing position logic and avoids text from obscuring each other, ensuring that the whiteboard content is clear and legible, and improving the neatness of the layout and reading experience of handwriting interaction.
[0162] Specifically, when placing character groups based on handwriting operations, the display device 200 first checks whether there are any existing character groups in the writing area (the bounding rectangular area of the handwriting data) to be placed, and then automatically selects one of the following three processing methods depending on the situation: Absorption and merging: the new character group and the surrounding existing character groups are merged into a new character group.
[0163] Avoid pop-up text; new character groups avoid existing character groups and adjust the position of the writing area to avoid overlap.
[0164] Place it independently, where there are no existing characters around it or it does not require special processing; place it directly in the calculated writing area.
[0165] For the processing of handwriting operations, the display device 200 sends the user's handwriting data to the handwriting recognition engine, which returns the recognized string. If the handwriting recognition engine determines that the user has written multiple lines, the returned string will be separated by newline characters. After obtaining the recognition result, the display device 200 performs corresponding preprocessing, including the following: Step 1: Special Character Filtering. Replace special characters such as full-width quotation marks in the recognition results with standard characters to avoid subsequent rendering issues.
[0166] Step 2: Coordinate System Transformation. The coordinates of the handwriting input device (touch interaction module) are converted to the canvas pixel coordinates of the electronic whiteboard using linear scaling. For example, the handwriting input device has its own independent coordinate system, such as 200×110 physical units, while the whiteboard canvas resolution is 3840×2160 pixels (4K). At this point, the device coordinates can be converted to canvas pixel coordinates using linear scaling: Canvas X-axis coordinate = Handwriting input device X-axis coordinate × (3840 / 200); Canvas Y-axis coordinate = Handwriting input device Y-axis coordinate × (2160 / 110).
[0167] Step 3: Font Size Calculation. While returning the recognition result, the handwriting recognition engine also simultaneously returns the height of the writing area (i.e., the total vertical span of the user's handwriting). The display device 200 splits the recognition result into multiple lines based on line breaks. It divides the height of the writing area returned by the handwriting recognition engine by the number of lines to obtain the average line height per line, and then multiplies this by an empirical mapping coefficient (e.g., 15) to convert it into the font size. A lower limit is protected for the font size; the minimum value is no less than 75. For example: Average line height per line = Height of the handwriting area returned by the engine / Number of lines; Font size = Line height × 15; If the calculated font size is ≤ 75, then the font size is adjusted to 75.
[0168] For independent placement, if there are no existing character groups near the new character group in the whiteboard interface, the display device 200 starts from the upper left corner coordinates of the writing area returned by the handwriting recognition engine for baseline alignment placement. That is, the starting X-axis coordinate after coordinate conversion is used as the horizontal starting position of the new character group, and starting from the starting Y-axis coordinate of the writing area, a distance equal to one font size is offset downward as the baseline position of the first line of characters in the new character group. This is because the starting Y-axis coordinate corresponds to the top of the writing area, and when rendering text, the baseline is used as the positioning reference point. Offsetting downward by one font size makes the visual position of the text fall in the lower middle of the writing area, roughly aligned with the user's handwriting. If the recognition result has multiple lines, each subsequent line is offset downward by an additional distance equal to one font size, and the line spacing is equal to the font size. That is, the Y-axis coordinate of the Nth line = starting Y-axis coordinate + (N + 1) × font size.
[0169] For example, as Figure 15 shown, Figure 15 it shows the transcription process without the influence of surrounding character groups. The left part before writing shows the user's handwritten text "Hello" and its writing area (dashed box), the width X of the writing area and the height Y of the writing area. The right part after writing shows the transcribed character group "Hello". The display device 200 calculates the font size and determines the placement position of the character group based on the position and size information of the writing area returned by the handwriting recognition engine.
[0170] For adsorption merging and avoidance pop-up, for each existing character group in the whiteboard interface, in addition to the outer rectangle area it occupies, there is also a border area around it that can be understood as the inner margin of the text. As Figure 16 shown, this border area corresponds to the dashed box part in the figure. Its size is proportional to the size of the character group itself. The larger the font size of the character group, the larger the corresponding border area, and the smaller the font size of the character group, the smaller the corresponding border area. The function of this border area is that when a newly transcribed character group is about to be placed near an existing character group, the display device 200 will detect whether the new character group invades this border area and decide the subsequent processing method according to the degree of invasion.
[0171] Before making the judgment of adsorption merging and avoidance pop-up, the display device 200 will first obtain all the existing character groups on the current canvas from the element manager of the whiteboard. Each character group contains information such as character content, position coordinates, text width, text height, font size, color, and outer rectangle area. Subsequently, all the character groups are sorted from left to right according to the X-axis center coordinates. The purpose of doing this is to be able to check in the natural order of spatial positions during subsequent traversal, ensuring that the character groups closest in space are processed first.
[0172] For adsorption merging, the following two conditions need to be met simultaneously to trigger adsorption merging: Condition 1: In the vertical direction, on the same line, that is, the vertical center point (centerY) of the new character group is within the vertical range of an existing character group. This vertical range is obtained by expanding the circumscribed rectangle area of the character group vertically by a third distance. For example, expand the upper and lower directions of the character group by 10% of the character height of the character group as a tolerance to tolerate vertical deviation during handwriting.
[0173] Among them, the calculation method of centerY is: centerY = starting Y-axis coordinate + (line number + 1) × font size + font descent / 2 - character height / 2. Among them, the font descent is the lowest (bottom) value in the font metrics, used to correct the deviation between the text baseline and the actual rendering area.
[0174] For example, the top Y-axis coordinate of an existing character group is 100, the bottom Y-axis coordinate is 200, and the height is 100. At this time, the vertical range is Y = 90 to Y = 210 (that is, expand 10% up and down, corresponding to 10 pixels). If the centerY of the new text falls within this range, it is determined to be on the same line.
[0175] Condition 2: Close enough in the horizontal direction, that is, the horizontal distance between the new character group and the existing character group in the horizontal direction is less than the horizontal distance threshold. For example, the horizontal distance threshold is 200 pixels. If the new character group is on the left of the existing character group, perform left adsorption, that is, the distance between the left edge of the existing character group and the right edge of the new character group needs to be less than 200 pixels and the center point of the new character group is on the left of the existing character group. If the new character group is on the right of the existing character group, perform right adsorption, that is, the distance between the right edge of the existing character group and the left edge of the new character group needs to be less than 200 pixels and the center point of the new character group is on the right of the existing character group.
[0176] For left adsorption, splice the new character group in front of the existing character group. For example, the existing character group is "world" and the newly written character group is "hello", and after adsorption and merging, it becomes "hello world". The starting X-axis coordinate of the merged character group is moved to the left by the rendering width of the new character group from the starting X-axis coordinate of the existing character group, so that "hello" is displayed on the left of "world".
[0177] For right adsorption, splice the new character group behind the existing character group. For example, the existing character group is "world" and the newly written character group is "hello", and after adsorption and merging, it becomes "world hello". The starting X-axis coordinate of the merged character group follows the starting X-axis coordinate of the existing character group.
[0178] The font size of the merged character group follows the font size of the existing character group. For the font color of the merged character group, it can be determined whether to follow the font color of the existing character group according to the editing mode.
[0179] In addition, when there are existing character groups on both the left and right sides of the new character group, for example, Figure 17 As shown, it demonstrates the adsorption and merging process when there are character groups on both the left and right sides. Before writing, there is a character group "nearby characters" on the left side and a character group "text" on the right side. The user writes the character group "hello" in the middle of the two. After writing, "hello" is adsorbed and merged into the left character group "nearby characters", and the font size inherits the font size of the left character group "nearby characters", while the right character group "text" remains independent and unchanged. This is because according to the left-to-right reading method, the left text is the starting point of the context of the current line, and it is more natural visually to keep consistent with the left side. Even if the new character group has spatial overlap with the right character group, the typesetting coherence with the left character group is prioritized.
[0180] The character group merging operation can delete and create data objects through the "replace command" in the command manager, and replace the existing character group with the merged character group. The replace command records the states before and after merging, so that the user can restore to the state before merging by pressing the undo button.
[0181] For the avoidance pop-up, if the user's handwritten stroke does not meet the adsorption conditions (not on the same line in the vertical direction or too far horizontally), but a small part of the writing area of the handwritten stroke invades the border area of an existing character group. The display device 200 will calculate the overlapping area between the writing area and the border area of the existing character group to determine whether to trigger avoidance. For example, if the ratio of the overlapping area to the area of the writing area itself is less than 50%, it is determined that it is a small part of the invasion, and then avoidance is triggered.
[0182] When performing the avoidance pop-up, the display device 200 can determine the placement position of the newly transcribed character group, and adjust the position based on the median line rule, so that the newly transcribed character group just moves out of the border area of the existing character group. Among them, the adjustment direction is the direction away from the center of the existing character group. For example, if the handwritten stroke is above the existing character group, the placement position of the new character group is moved upward; if the handwritten stroke is below the existing character group, the placement position of the new character group is moved downward.
[0183] For example, as Figure 18 shown, it demonstrates the avoidance pop-up process of the character group. The user writes "hello" above the existing character group "nearby characters", and a small part of the lower edge of the handwritten stroke enters the border area (dashed box) of the existing character group "nearby characters", then avoidance is triggered. The newly transcribed character group "hello" is placed above the border area of the existing character group "nearby characters", maintaining a reasonable distance from the existing character group "nearby characters" and avoiding text overlap.
[0184] If most of the writing area of the user's handwritten handwriting is within the border area of an existing character group, such as when the ratio of the overlapping area to the area of the writing area of the handwritten handwriting itself exceeds 50%, no avoidance is triggered. The newly transcribed character group is directly placed according to its own independent placement rules. Because this situation indicates that the user is writing a large area directly above or near the existing character group, and it is very likely that the user wants to supplement content or modify the existing text. If the transcription result is pushed away at this time, it will instead violate the user's intention.
[0185] For example, as Figure 19 shown, the process of non-avoidance of character groups is demonstrated. The user writes "Hello" in a large area to the right of the existing character group "Nearby Characters". Most of the handwritten handwriting is within the border area (dashed box) of the existing character group "Nearby Characters", so no avoidance is triggered. The newly transcribed character group "Hello" is directly placed according to its own transcription rules without making avoidance adjustments, and is arranged adjacent to the existing character group "Nearby Characters", only needing to follow its own independent placement rules.
[0186] Based on the above display device 200, an embodiment of the present application further provides a character group editing method, and the method may include the following steps: In response to the user's split touch instruction, determine the touch position of the split touch instruction.
[0187] If the touch position is in the non-character area between any two adjacent characters in the first character group, based on the first data object corresponding to the first character group, create a second data object and a third data object, and delete the first data object. The second data object corresponds to the second character group, and the third data object corresponds to the third character group. The second character group includes the characters in the first character group that are between the starting position and the non-character area, and the third character group includes the characters in the first character group that are between the non-character area and the ending position. The first character group is any character group in the whiteboard interface.
[0188] In response to the user's editing instruction for any one of the second character group and the third character group, perform an editing operation based on the corresponding data object.
[0189] For the same and similar parts between the various embodiments in this specification, reference can be made to each other, and details will not be repeated here.
[0190] Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present application, and are not intended to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that: they can still modify the technical solutions described in the foregoing embodiments, or perform equivalent replacements for some or all of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the scope of the technical solutions of the various embodiments of the present application.
[0191] For ease of explanation, the above description has been provided in conjunction with specific embodiments. However, the above exemplary discussion is not intended to be exhaustive or to limit the embodiments to the specific forms disclosed above. Various modifications and variations can be obtained based on the above teachings. The selection and description of the above embodiments are for the purpose of better explaining the principles and practical applications, thereby enabling those skilled in the art to better utilize the described embodiments and various different variations of embodiments suitable for specific use considerations.
Claims
1. A display device, characterized in that, include: The touch interaction module is configured to detect the user's touch commands; The display is configured to show a whiteboard interface; the whiteboard interface includes character groups of a preset font type generated based on the user's handwriting touch commands; each character group includes at least one character; each character group corresponds to a data object for storing character group data; The controller is configured as follows: In response to a user's split touch command, determine the touch position of the split touch command; If the touch position is located in the non-character area between any two adjacent characters in the first character group, a second data object and a third data object are created based on the first data object corresponding to the first character group, and the first data object is deleted; wherein, the second data object corresponds to the second character group, the third data object corresponds to the third character group, the second character group includes the characters in the first character group located between the start position and the non-character area, the third character group includes the characters in the first character group located between the non-character area and the end position, and the first character group is any character group in the whiteboard interface; In response to the user's editing command for either the second or third character group, the editing operation is performed based on the corresponding data object.
2. The display device according to claim 1, characterized in that, If the touch position is located in the non-character area between any two adjacent characters in the first character group, the controller creates a second data object and a third data object based on the first data object corresponding to the first character group, and deletes the first data object, specifically configured as follows: Control the display to show the dividing line in the non-character area; In response to the user's confirmation command for the dividing line, a second data object and a third data object are created based on the first data object corresponding to the first character group, and the first data object is deleted.
3. The display device according to claim 1, characterized in that, The controller is also configured to: In response to the user's selection command for the first character group, the display is controlled to show the selection box corresponding to each character in the first character group; In response to a lift-up event when the user performs a movement operation on the target selection box, a first distance between the moved target selection box and the first character group is calculated; The target selection box includes at least one selection box corresponding to the character; When the first distance is greater than the first distance threshold, the fourth position of the fourth character group is calculated based on the position of the target selection box after the movement; the fourth character group includes the character corresponding to the target selection box. Based on the character group data of the fourth character group in the first data object corresponding to the first character group, create the fourth data object corresponding to the fourth character group according to the fourth position; Arrange the characters in the first character group, excluding the fourth character group, in their original character order to obtain the fifth character group, and calculate the fifth position of the fifth character group; Based on the character group data of the fifth character group in the first data object corresponding to the first character group, create the fifth data object corresponding to the fifth character group according to the fifth position; Delete the first data object; Control the display to display the fourth character group based on the fourth data object, and to display the fifth character group based on the fifth data object; In response to an editing instruction for either the fourth or fifth character group, an editing operation is performed based on the corresponding data object.
4. The display device according to claim 3, characterized in that, The controller, in response to a user's lift-up event when moving the target selection box, calculates a first distance between the moved target selection box and the first character group, and is further configured to: When the first distance is greater than the first distance threshold, the fourth position of the fourth character group is calculated based on the position of the moved target selection box; wherein, the fourth character group includes the character corresponding to the target selection box; Based on the character group data of the fourth character group in the first data object corresponding to the first character group, create the fourth data object corresponding to the fourth character group according to the fourth position; Based on the character group data of the sixth character group in the first data object corresponding to the first character group, a sixth data object is created; wherein, the sixth character group includes the characters in the first character group located between the starting position and the target selection box; The seventh data object is based on the character group data of the seventh character group in the first data object corresponding to the first character group; wherein, the seventh character group includes the characters in the first character group located between the target selection box and the end position; Delete the first data object; The display is controlled to display the fourth character group based on the fourth data object, the sixth character group based on the sixth data object, and the seventh character group based on the seventh data object; In response to an editing instruction for any of the fourth, sixth, and seventh character groups, an editing operation is performed based on the corresponding data object.
5. The display device according to claim 1, characterized in that, The controller is also configured to: In response to the user's drawing instruction for line segments in the whiteboard interface, the character information list is traversed; wherein, the character information list includes the bounding rectangle area corresponding to each character in each character group in the whiteboard interface; Determine the target character and the target word group; wherein, the target character is the character in the character information list whose bounding rectangle region intersects with the line segment at least twice, and the target word group is the word group containing the target character; Based on the target data object corresponding to the target character group, an eighth data object and a ninth data object are created, and the target data object is deleted; wherein, the eighth data object corresponds to the eighth character group, the ninth data object corresponds to the ninth character group, the eighth character group includes the characters in the target character group located between the start position and the target character, and the ninth character group includes the characters in the target character group located between the target character and the end position; Control the display to display the eighth character group based on the eighth data object, and to display the ninth character group based on the ninth data object; In response to an editing instruction for either the eighth or ninth character group, an editing operation is performed based on the corresponding data object.
6. The display device according to claim 1, characterized in that, The controller is also configured to: In response to a user lift-up event that performs a movement operation on the first character group, a second distance is calculated between the first character group and the cross group after the movement; the first cross group is a character group in the whiteboard interface other than the first character group. When the second distance is less than the second distance threshold, the first arrangement order is determined based on the relative positional relationship between the first character group and the first cross group; Arrange the characters in the first character group and the characters in the tenth character group according to the first arrangement order to obtain the eleventh character group; Using the center point of the first character group as the scaling center, the first character group is scaled according to the font size of the first cross group to obtain the first position of the scaled first character group. Calculate the eleventh position of the eleventh character group based on the first position of the first character group after scaling and the tenth position of the first cross group; Based on the first data object corresponding to the first character group and the tenth data object corresponding to the tenth cross group, according to the eleventh position, create the eleventh data object corresponding to the eleventh character group, and delete the first data object and the tenth data object. Control the display to display the eleventh character group based on the eleventh data object; In response to the editing instruction for the eleventh character group, an editing operation is performed based on the eleventh data object.
7. The display device according to claim 1, characterized in that, The controller is also configured to: In response to a user's writing touch command, the writing area corresponding to the writing touch command is determined, and the vertical range of the first character group is determined; wherein, the vertical range is obtained by extending the outer rectangular area of the first character group by a third distance in the vertical direction; If the vertical center point of the writing area is located within the vertical range, and the horizontal distance between the writing area and the first character group is less than the horizontal distance threshold, then the second arrangement order is determined based on the relative positional relationship between the first character group and the writing area. Arrange the characters in the first character group and the characters generated based on the writing touch command according to the second arrangement order to obtain the twelfth character group, and calculate the twelfth position of the twelfth character group; Based on the first data object corresponding to the first character group, according to the twelfth position, create the twelfth data object corresponding to the twelfth character group, and delete the first data object; Control the display to display the twelfth character group based on the twelfth data object; In response to the editing instruction for the twelfth character group, an editing operation is performed based on the twelfth data object.
8. The display device according to claim 7, characterized in that, The controller, in response to a user's writing touch command, determines the writing area corresponding to the writing touch command and the vertical range of the first character group, and is further configured to: If the vertical center point of the writing area is located in a non-vertical range, or if the horizontal distance between the writing area and the first character group is greater than or equal to a horizontal distance threshold, then the overlapping area between the writing area and the border area of the first character group is calculated; wherein, the border area is obtained by extending the outer rectangular area of the first character group outward by a fourth distance, the fourth distance is positively correlated with the font size of the first character group, and the non-vertical range is the range outside the vertical range in the whiteboard interface; If the overlapping area is 0, or the overlapping area is greater than or equal to the area threshold, then a thirteenth data object corresponding to the thirteenth character group is created, and the display is controlled to display the thirteenth character group in the writing area based on the thirteenth data object; wherein, the thirteenth character group includes characters generated based on the writing touch command; If the overlapping area is greater than 0 and less than the area threshold, the writing area is adjusted to the area adjacent to the border area, a thirteenth data object corresponding to the thirteenth character group is created, and the display is controlled to display the thirteenth character group in the adjusted writing area based on the thirteenth data object.
9. The display device according to claim 6, characterized in that, The controller, based on the first data object corresponding to the first character group and the tenth data object corresponding to the tenth cross group, creates the eleventh data object corresponding to the eleventh character group according to the eleventh position, and is further configured to: Detect the current editing mode; When the current editing mode is uniform mode, the eleventh data object is created according to the tenth font color of the tenth group; the eleventh group includes characters in the first group that all have the tenth font color and characters in the tenth group; When the current editing mode is the retain mode, the eleventh data object is created according to the first font color of the first character group and the tenth font color of the cross group; wherein, the eleventh character group includes the characters in the first character group with the first font color and the characters in the cross group with the tenth font color.
10. A method for editing character groups, characterized in that, The method is applied to a display device that displays a whiteboard interface; the whiteboard interface includes character groups of a preset font type generated based on user handwriting touch commands; each character group includes at least one character; each character group corresponds to a data object for storing character group data; the method includes: In response to a user's split touch command, determine the touch position of the split touch command; If the touch position is located in the non-character area between any two adjacent characters in the first character group, a second data object and a third data object are created based on the first data object corresponding to the first character group, and the first data object is deleted; wherein, the second data object corresponds to the second character group, the third data object corresponds to the third character group, the second character group includes the characters in the first character group from the start position to the non-character area, the third character group includes the characters in the first character group from the non-character area to the end position, and the first character group is any of the character groups in the whiteboard interface; In response to the user's editing command for either the second or third character group, perform the editing operation.