Canvas moving method and device, electronic equipment and medium

By automatically detecting and determining the moving reference direction of the electronic whiteboard canvas, the automatic movement of the canvas is realized, solving the problem of human operation inconvenience and improving user experience and operation efficiency.

CN119493510APending Publication Date: 2025-02-21JINAN YUSHI INTELLIGENT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311033703.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-08-16
Publication Date
2025-02-21

AI Technical Summary

Technical Problem

The canvas movement of existing electronic whiteboards requires manual operation and is prone to misoperation, which makes it inconvenient for multiple people to write and display at the same time.

Method used

By automatically detecting the reference direction of the canvas movement, the canvas movement direction is determined, and the canvas is moved based on that direction. The specific steps include: determining the distribution data of the recorded content on the canvas and determining whether the moving condition is met; if the conditions are met, determine the reference direction based on the block marking data and the timestamp, and then determine the moving direction.

Benefits of technology

The automatic movement of the canvas is realized, which reduces the frequency of human operations and the possibility of misoperation, can reflect the user's recording tendency, retains the content displayed recently recorded by the user, and calls out more blank areas for operation, improving the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119493510A_ABST
    Figure CN119493510A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses a canvas moving method and device, electronic equipment and a medium. The method comprises the following steps: determining distribution data of recorded contents on a canvas, and determining whether the canvas reaches a moving condition or not according to the distribution data; if the canvas reaches the moving condition, determining the reference direction of canvas movement according to the marked data of the blocks on the canvas and the corresponding timestamps; wherein the mark data is used for representing whether the recorded content exists on the blocks or not, and the timestamp is used for representing the recording time of the recorded content; and determining a canvas moving direction according to the reference direction of canvas moving, and moving the canvas based on the canvas moving direction. By means of the scheme, automatic movement of the canvas is achieved, more blank areas are called out through movement for operation, the reference direction, reflecting the writing tendency direction of the user, of canvas movement is considered in the drawing board movement direction, the called-out blank areas can meet the position requirement for continuous recording of the user, and user experience is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a canvas moving method, device, electronic device and medium. Background Art

[0002] With the popularity of paperless office, smart education and smart conference rooms, the application of electronic whiteboards is becoming more and more widespread. Electronic whiteboards can not only realize the blackboard writing function but also allow multiple people to write at the same time. Everyone can use the whiteboard function to simultaneously show their thoughts and ideas to others. However, when multiple people are writing or the writing content is large, the writing area on the whiteboard canvas is very limited. Usually, you need to manually move the canvas to call a new blank area to continue writing, which is very inconvenient. Summary of the invention

[0003] The present application provides a canvas movement method, device, electronic device and medium, so as to automatically detect a reference direction of the canvas movement and determine the canvas movement direction to move the drawing board.

[0004] According to one aspect of the present application, a canvas moving method is provided, the method comprising:

[0005] Determine distribution data of recorded content on the canvas, and determine whether the canvas meets a moving condition according to the distribution data;

[0006] If the canvas meets the moving condition, the reference direction of the canvas movement is determined according to the marking data of the blocks on the canvas and the corresponding timestamps; wherein the marking data is used to indicate whether there is recorded content on the blocks, and the timestamp is used to indicate the recording time of the recorded content;

[0007] The canvas movement direction is determined according to the reference direction of the canvas movement, and the canvas is moved based on the canvas movement direction.

[0008] According to another aspect of the present application, a canvas moving device is provided, the device comprising:

[0009] A moving condition determination module, used to determine distribution data of the recorded content on the canvas, and determine whether the canvas meets the moving condition according to the distribution data;

[0010] A module for determining a reference direction of canvas movement, for determining a reference direction of canvas movement according to the marking data of the blocks on the canvas and the corresponding timestamps if the canvas meets the movement conditions; wherein the marking data is used to indicate whether there is recorded content on the blocks, and the timestamp is used to indicate the recording time of the recorded content;

[0011] The moving module is used to determine the moving direction of the canvas according to the reference direction of the canvas movement, and move the canvas based on the moving direction of the canvas.

[0012] According to another aspect of the present application, an electronic device is provided, the device comprising:

[0013] at least one processor; and

[0014] a memory communicatively connected to at least one processor; wherein,

[0015] The memory stores a computer program that can be executed by at least one processor. The computer program is executed by at least one processor so that the at least one processor can execute the canvas moving method of any embodiment of the present application.

[0016] According to another aspect of the present application, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the canvas moving method of any embodiment of the present application when executed.

[0017] The technical solution of the embodiment of the present application determines the distribution data of the recorded content on the canvas, and determines whether the canvas meets the moving conditions according to the distribution data; if the canvas meets the moving conditions, the reference direction of the canvas movement is determined according to the marking data of the blocks on the canvas and the corresponding timestamp; wherein the marking data is used to indicate whether there is recorded content on the blocks, and the timestamp is used to indicate the recording time of the recorded content; the canvas movement direction is determined according to the reference direction of the canvas movement, and the canvas is moved based on the canvas movement direction. The above scheme solves the problem that the current electronic canvas can only be moved manually and is prone to misoperation, thereby realizing the automatic movement of the canvas, and determining the reference direction of the canvas movement that can reflect the user's recording tendency, and moving the canvas according to the reference direction of the canvas movement. After the movement, the user's most recently recorded content can be retained and displayed, and more blank areas can be called out for operation by moving, and the direction of the drawing board movement takes into account the user's writing direction, and the called out blank area can meet the user's position requirements for continuing to record, thereby improving the user experience.

[0018] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present application, nor is it intended to limit the scope of the present application. Other features of the present application will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0020] Figure 1 is a flowchart of a canvas moving method provided according to Embodiment 1 of the present application;

[0021] Figure 2 It is a first schematic diagram of a canvas record provided according to the first embodiment of the present application;

[0022] Figure 3 is a second schematic diagram of canvas recording provided according to the first embodiment of the present application;

[0023] Figure 4 is a third schematic diagram of canvas recording provided according to the first embodiment of the present application;

[0024] Figure 5 is a fourth schematic diagram of canvas recording provided according to the first embodiment of the present application;

[0025] Figure 6 is a flowchart of a canvas moving method provided according to Embodiment 2 of the present application;

[0026] Figure 7 This is a first schematic diagram of canvas partitioning provided according to Embodiment 2 of the present application;

[0027] Figure 8 This is a second schematic diagram of canvas partitioning provided according to the second embodiment of the present application;

[0028] Fig. 9 This is a third schematic diagram of canvas partitioning provided according to the second embodiment of the present application;

[0029] Fig.10 This is a fourth schematic diagram of canvas partitioning provided according to the second embodiment of the present application;

[0030] Fig.11 This is a fifth schematic diagram of canvas partitioning provided according to the second embodiment of the present application;

[0031] Fig.12 is a flowchart of a canvas moving method provided according to Embodiment 3 of the present application;

[0032] Fig.13 is a flowchart of a canvas moving method provided according to Embodiment 4 of the present application;

[0033] Fig.14is a structural schematic diagram of a canvas moving device provided according to Embodiment 5 of the present application;

[0034] Fig.15 It is a structural schematic diagram of an electronic device provided according to Embodiment 6 of the present application. DETAILED DESCRIPTION

[0035] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present application.

[0036] It should be noted that the terms "first", "second", "third", "fourth", "actual", "preset", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0037] Embodiment 1

[0038] Figure 1 This is a flowchart of a canvas moving method provided in the first embodiment of the present application. The present embodiment of the present application can be applied to the case of moving the canvas of a whiteboard. The method can be executed by a canvas moving device, which can be implemented in the form of hardware and / or software, and the canvas moving device can be configured in an electronic device. Figure 1 As shown, the method includes:

[0039] S110: Determine distribution data of the recorded content on the canvas, and determine whether the canvas meets the moving condition according to the distribution data.

[0040] The canvas is an electronic canvas in an electronic whiteboard. The recorded content is the content recorded on the canvas by a user through writing or drawing, which can be in the form of text, symbols, or drawings. The distribution data is used to indicate the position distribution of the recorded content on the canvas.

[0041] In an embodiment of the present application, if a touch operation of a user on the display screen is detected, the pixel point corresponding to the electronic canvas is determined according to the coordinates of the position point where the touch operation is detected, and the canvas block where the pixel point is located is determined, and the marking data of the block is updated. The block can be obtained by dividing the pixel points on the canvas. For example, the entire pixel point range of the canvas is determined according to the resolution of the display screen. If the resolution of the display screen is 3840*2160, the entire pixel point range of the canvas is 3840*2160, and the entire pixel point range can be divided into blocks to obtain 160*90 blocks. If there is no recorded content in the block, the marking data can be set to initial data, such as 0. If there is recorded content in the block, the marking data is updated to preset data, such as 1, so as to mark whether there is recorded content in the block. If the pixel point in the block detects that there is written recorded content, the block is updated to preset data. In addition, according to the time when the recorded content is written in the block, the timestamp corresponding to the block can be recorded to mark the writing time of the recorded content. If the user deletes the recorded content, the marked data of the blocks corresponding to the deleted recorded content are restored to the initial data, and the timestamp corresponding to the blocks is deleted.

[0042] For example, Figure 2 As shown in FIG. 1 , if the user draws a straight line horizontally on the canvas, the marking data of the blocks through which the horizontal line passes is updated to the preset data, and the time when the horizontal line is drawn on the block is recorded, that is, Figure 2 time1-time7 in. Figure 3 As shown in the figure, if the user draws another vertical line and it intersects with the horizontal line drawn before, the marking data of the block through which the vertical line passes is updated to the preset data, and the timestamp of the block through which the vertical line passes is updated according to the time when the vertical line is drawn on the block, that is, time8-time13. Figure 3 In the time5-time7 corresponding block, the recorded content is cleared from the canvas after the user's deletion operation is detected, and the mark information of the corresponding block is updated to the initial data, and the corresponding timestamp is deleted, such as Figure 4 If the horizontal line deleted by the user only occupies part of the pixels in the block, and there are still horizontal lines in the other part of the pixels, the marking data and timestamp of the block will remain unchanged until the recorded content of all the pixels in the block is completely deleted, the marking information of the corresponding block is updated to the initial data, and the corresponding timestamp is deleted, as shown in Figure 5 shown.

[0043] Exemplarily, the distribution data of the content recorded on the canvas can be determined based on the marked data of the blocks on the canvas, for example, the number of blocks whose marked data is preset data is calculated, and whether the content recorded on the canvas has filled the canvas is determined based on the number of blocks whose marked data is preset data and the total number of blocks in the canvas. The distribution data of the content recorded on the canvas can also be determined based on the marked data of the blocks on the canvas and the corresponding timestamps, for example, the position of the distribution of the content recently recorded by the user is calculated, so as to determine the canvas area that the user tends to record recently.

[0044] In an embodiment of the present application, it is possible to determine whether the canvas meets the moving condition based on the distribution data, thereby determining whether to execute the subsequent canvas translation step. Specifically, it is possible to determine that the canvas meets the moving condition when the distribution data determines that the recorded content occupies a relatively large area on the canvas, resulting in no more blank areas for the user to record. It is also possible to determine that the canvas meets the moving condition when the distribution data determines that there are more recorded contents in a part of the canvas, resulting in no more blank areas for the user to record. Through the above scheme, the recorded content on the canvas can be automatically detected, thereby automatically determining whether the canvas meets the moving condition, and automatically executing the subsequent translation step when the canvas meets the moving condition.

[0045] S120. If the canvas meets the moving condition, the reference direction of the canvas movement is determined according to the marking data of the blocks on the canvas and the corresponding timestamps; wherein the marking data is used to indicate whether there is recorded content on the blocks, and the timestamp is used to indicate the recording time of the recorded content.

[0046] Among them, the reference direction of the canvas movement can be used to assist in determining the direction of the canvas movement. The reference direction of the canvas movement can reflect the user's recording tendency and reflect the overall recording direction of the recorded content on the canvas. For example, it can reflect whether the user tends to record from the left side of the canvas to the right side of the canvas, or from the left side of the canvas to the right side of the canvas. The user's tendency is not limited to the trajectory of the same stroke, and can be the overall distribution direction of the recorded content when the user records on the canvas. In an embodiment of the present application, if the canvas meets the moving conditions, the reference direction of the canvas movement is determined. Specifically, the reference direction of the canvas movement can be determined based on the marking data of the blocks on the canvas and the corresponding timestamps. When the marking data is updated to the preset data, it means that the recorded content is recorded on the block, and the timestamp indicates the recording time of the recorded content. The recording order of the recorded content is determined according to the recording time, and then the reference direction of the canvas movement is determined.

[0047] Exemplarily, if the timestamps corresponding to the blocks whose timestamps at the preset time change from left to right are getting closer to the current moment, it can be determined that the reference direction of the canvas movement corresponding to the timestamps at the preset time is from left to right. In addition, the reference direction of the canvas movement can also be determined based on the position of the blocks corresponding to the timestamps closer to the current moment in the canvas. For example, if the blocks corresponding to the timestamps closer to the current moment are on the right side of the canvas, it can be determined that the reference direction of the canvas movement is from left to right.

[0048] S130: Determine a canvas movement direction according to a reference direction of the canvas movement, and move the canvas based on the canvas movement direction.

[0049] Exemplarily, the direction of canvas movement can be determined based on the principle that there will be more blank areas for the user to record when the user continues to record along the reference direction of the canvas movement after the movement. For example, the opposite direction of the reference direction of the canvas movement is used as the canvas movement direction. The direction of the canvas movement at a preset angle to the opposite direction of the reference direction of the canvas movement can also be used as the canvas movement direction. For example, the opposite direction of the reference direction of the canvas movement is from right to left, and the canvas movement direction can be from the lower right to the upper left. The reference direction of canvas movement can reflect the user's recording habits. The canvas movement direction is determined according to the reference direction of the canvas movement, and the canvas is moved based on the canvas movement direction. More blank areas are displayed through the canvas movement to meet the space requirements of the user when continuing to record according to the reference direction of the canvas movement.

[0050] The amplitude of the canvas movement can be determined according to the actual situation, for example, the canvas can be moved along the direction of the canvas movement by half, one third or one quarter of the maximum length of the canvas each time. The amplitude of the canvas movement can also be determined according to the distribution data of the recorded content on the canvas. For example, the recorded content is concentrated on the four-fifths of the right side of the canvas, and the one-fifth of the left side of the canvas has no recorded content. If the canvas moves from right to left, one-fifth of the canvas can be moved from right to left to remove the one-fifth of the left side without recorded content, and increase the one-fifth of the right side to allow users to record.

[0051] In the embodiment of the present application, the timing for moving the canvas can be when the user's touch operation on the canvas disappears and no touch operation on the canvas is detected again within a time threshold after the user's touch operation on the canvas disappears, then the canvas is moved to avoid moving the canvas when the user is recording on the canvas, which affects the user's normal recording and user experience. The time threshold can be determined according to actual conditions, for example, 1 second.

[0052] In an embodiment of the present application, moving the canvas based on the canvas movement direction includes:

[0053] If a user movement operation on the canvas is detected, then whether there is an operation of adding or deleting recorded content on the canvas is detected;

[0054] If it exists, when the canvas meets the translation condition, the canvas is moved based on the canvas movement direction.

[0055] Exemplarily, if a user moves the canvas, in order to avoid affecting the user experience, the canvas is not moved regardless of whether the canvas meets the moving conditions at this time, and the canvas continues to be detected for adding or deleting recorded content. If an adding or deleting operation of recorded content is detected on the canvas, it means that the user continues to record after moving it by himself, and the steps S110-S130 are continued for the canvas moved by the user, so as to fully consider the user's wishes, regard the user's operation as the highest priority, and improve the user experience. And avoid the user moving the canvas while the canvas is automatically moved, resulting in repeated and disordered movement.

[0056] After the canvas is moved based on the canvas moving direction, steps S110 to S130 are continued to be executed for the currently displayed canvas.

[0057] The technical solution of the embodiment of the present application determines the distribution data of the recorded content on the canvas, and determines whether the canvas meets the moving conditions based on the distribution data; if the canvas meets the moving conditions, the reference direction of the canvas movement is determined based on the marking data of the blocks on the canvas and the corresponding timestamp; wherein the marking data is used to indicate whether there is recorded content on the blocks, and the timestamp is used to indicate the recording time of the recorded content; the canvas movement direction is determined based on the reference direction of the canvas movement, and the canvas is moved based on the canvas movement direction. The above scheme solves the problem that the current electronic canvas can only be moved manually and is prone to misoperation, thereby realizing the automatic movement of the canvas, and determining the reference direction of the canvas movement that can reflect the user's recording tendency, and moving the canvas based on the reference direction of the canvas movement. After the movement, the user's most recently recorded content can be retained and displayed, and more blank areas can be called out for operation through movement, and the direction of the drawing board movement takes into account the user's writing direction, and the called out blank area can meet the user's position requirements for continued recording, thereby improving the user experience.

[0058] Embodiment 2

[0059] Figure 6 This is a flowchart of a canvas moving method provided in the second embodiment of the present application. The present embodiment is optimized based on the above embodiment. For solutions not described in detail in the present embodiment, please refer to the above embodiment. Figure 6 As shown, the method of the embodiment of the present application specifically includes the following steps:

[0060] S210: Determine distribution data of the recorded content on the canvas, and determine whether the canvas meets the moving condition according to the distribution data.

[0061] S220: If the canvas meets the moving condition, determine the target block corresponding to the target timestamp, and determine the position of the target block on the canvas; wherein the target timestamp is a timestamp within a preset time from the current moment.

[0062] The preset time from the current moment may be a period of time closest to the current moment. The target block corresponding to the target timestamp within the period of time closest to the current moment may be searched in each block of the canvas, and the position of the target block on the canvas may be determined. The position of the target block on the canvas may be the area of ​​the target block in the canvas, or may be the relative position of different target blocks.

[0063] S230: Determine a reference direction for canvas movement according to the position of the target block on the canvas.

[0064] Exemplarily, since the target block is a timestamp within a preset time from the current moment, the target block can reflect the position where the user recently put down the pen, and the reference direction of the canvas movement can be determined accordingly. Specifically, assuming that the target block is located on the right side of the canvas, the reference direction of the canvas movement can be determined to be from left to right. If the position of the target block on the canvas is the relative position of the target block in the canvas, assuming that the target block corresponding to the timestamp closest to the current moment is on the right, and the target block corresponding to the timestamp before the timestamp is on the left, the reference direction of the canvas movement is determined to be from left to right.

[0065] For example, Figure 7 As shown, the canvas can be divided into an upper area and a lower area. If the target block corresponding to the most recent timestamp closest to the current moment, or a preset target block, is located in the upper area, the reference direction of the canvas movement is determined to be from bottom to top. If the target block corresponding to the most recent timestamp, or a preset target block, is located in the lower area, the reference direction of the canvas movement is determined to be from top to bottom, reflecting that the recorded content is recorded from the top of the canvas to the bottom of the canvas as a whole. Figure 8 As shown, the canvas can also be divided into a left area and a right area. If the target block corresponding to the latest timestamp or the preset target block is located in the left area, the reference direction of the canvas movement is determined to be from right to left, reflecting that the recorded content is recorded from the right side of the canvas to the left side of the canvas as a whole. If the target block corresponding to the latest timestamp or the preset target block is located in the right area, the reference direction of the canvas movement is determined to be from left to right. Fig. 9As shown, the canvas can also be divided into four areas: the upper left area, the lower left area, the upper right area, and the lower right area. If the target block corresponding to the most recent timestamp or the preset target block is located in the upper left area, the reference direction of the canvas movement is determined to be from the lower right to the upper left. If the target block corresponding to the most recent timestamp or the preset target block is located in the lower left area, the reference direction of the canvas movement is determined to be from the upper right to the lower left. If the target block corresponding to the most recent timestamp or the preset target block is located in the upper right area, the reference direction of the canvas movement is determined to be from the lower left to the upper right. If the target block corresponding to the most recent timestamp or the preset target block is located in the lower right area, the reference direction of the canvas movement is determined to be from the upper left to the lower right. The canvas can also be divided into other numbers of areas, and the reference direction of the canvas movement can be further determined according to the area where the target block is located.

[0066] In the embodiment of the present application, determining the reference direction of the canvas movement according to the position of the target block on the canvas includes:

[0067] Starting from the most recent timestamp, traverse the target timestamps in order from the nearest to the current moment until the target block corresponding to the target timestamp is located in the non-corner area of ​​the canvas; wherein the most recent timestamp is the target timestamp closest to the current moment; the non-corner area is the area of ​​the canvas excluding the corner area; the corner area is the area within the first preset range of the canvas vertex;

[0068] According to the position of the target block corresponding to the target timestamp in the canvas, a reference direction for the canvas movement is determined.

[0069] For example, Fig.10 As shown, Fig.10The entire area is the canvas, wherein the area within the first preset range of the four vertices is the corner area, and the four vertices correspond to the four corner areas. The first preset range can be determined according to actual conditions. The area other than the corner area in the canvas is the non-corner area. Since users generally tend to record in non-corner areas, the user's recording behavior in non-corner areas can be searched. In order to determine the canvas area where the user's most recent recording behavior is located, the target timestamps can be traversed in order from near to far from the current moment until the target block corresponding to the target timestamp is located in the non-corner area of ​​the canvas. Specifically, first traverse the most recent timestamp to determine whether the block corresponding to the most recent timestamp is located in the non-corner area. If so, stop traversing. If the block corresponding to the most recent timestamp is in the corner area, continue to traverse the previous target timestamp of the most recent timestamp to determine whether the block corresponding to the previous target timestamp is in the non-corner area. If so, stop traversing. If the block corresponding to the previous target timestamp is in the corner area, continue to traverse the previous target timestamp of the previous target timestamp, and so on, until the first traversed block corresponding to the target timestamp is in the non-corner area. In this case, the reference direction of the canvas movement is determined according to the position of the target block corresponding to the target timestamp in the canvas.

[0070] In the embodiment of the present application, determining the reference direction of the canvas movement according to the position of the target block corresponding to the target timestamp in the canvas includes:

[0071] If the target block corresponding to the most recent timestamp is located in a critical area in the non-corner area of ​​the canvas, the reference direction of the canvas movement is determined to be a direction from the center of the canvas to the center of the critical area; wherein the critical area is an area within a second preset range adjacent to the canvas boundary in the non-corner area;

[0072] If the target block corresponding to the most recent timestamp is located in the middle area of ​​the non-corner area of ​​the canvas, the reference direction of the canvas movement is determined to be from top to bottom, or, the reference direction of the canvas movement is determined based on the distribution of the target blocks corresponding to a preset number of consecutive target timestamps closest to the current moment in the canvas.

[0073] For example, Fig.11 As shown, the non-corner area can be divided into a critical area and an intermediate area. The critical area can be an area within a second preset range adjacent to the canvas boundary in the non-corner area. The second preset range can be determined according to actual conditions, such as Fig.11 As shown, the canvas has four boundaries, and the four critical areas within the second preset range adjacent to the four boundaries of the canvas and not adjacent to each other are area 1, area 2, area 3 and area 4. The area other than the critical area in the non-boundary area is the middle area.

[0074] If the target block corresponding to the most recent timestamp is located in the critical area of ​​the non-corner area of ​​the canvas, the reference direction of the canvas movement is determined to be the direction from the center of the canvas to the center of the critical area. Exemplarily, if the target block corresponding to the most recent timestamp is located in area one, the reference direction of the canvas movement is determined to be the direction from the center of the canvas to the center of area one, that is, from bottom to top. If the target block corresponding to the most recent timestamp is located in area two, the reference direction of the canvas movement is determined to be the direction from the center of the canvas to the center of area two, that is, from left to right. The same is true when the target block corresponding to the most recent timestamp is located in other critical areas.

[0075] If the target block corresponding to the most recent timestamp is located in the middle area of ​​the non-corner area of ​​the canvas, the reference direction of the canvas movement can be set to be from top to bottom based on the user's regular recording habit from top to bottom. The reference direction of the canvas movement can also be determined based on the distribution of the target blocks corresponding to the preset number of consecutive target timestamps closest to the current moment in the canvas. For example, search for the 5 consecutive target timestamps closest to the current moment. If the target blocks corresponding to the target timestamps from early to late are distributed from left to right, the reference direction of the canvas movement is determined to be from left to right. If the target blocks corresponding to the target timestamps from early to late are distributed from top to bottom, the reference direction of the canvas movement is determined to be from top to bottom.

[0076] The above scheme can accurately predict the user's writing direction or painting direction based on the user's last pen placement, and then determine the direction of canvas movement according to the user's operating habits to move the canvas, ensuring that after the canvas moves, more blank areas can be moved along the reference direction of the canvas movement for the user to continue recording according to the reference direction of the original canvas movement, thereby improving the user experience.

[0077] In the embodiment of the present application, determining the reference direction of the canvas movement according to the position of the target block corresponding to the target timestamp in the canvas includes:

[0078] If the target block corresponding to the most recent timestamp is located in the corner area of ​​the canvas, the center of the canvas area where the first traversed target block located in the non-corner area is located is pointed to the direction of the center of the corner area, which is determined as the reference direction of the canvas movement.

[0079] Exemplarily, in the process of traversing the target timestamps in order from near to far from the current moment, if the target block corresponding to the most recent timestamp is located in the corner area of ​​the canvas, the traversal continues until the first traversed target timestamp corresponding to the target block is located in the non-corner area, and the direction in which the center of the non-corner area points to the center of the corner area where the block corresponding to the most recent timestamp is located is determined as the reference direction for the canvas movement.

[0080] Specifically, Fig.11As shown, assuming that the target block corresponding to the most recent timestamp is located in area five, then during the traversal process, if the target block corresponding to the last target timestamp of the most recent timestamp is located in area four, the direction from the center of area four to the center of area five is determined as the reference direction for the movement of the canvas, that is, from bottom to top. If the target block corresponding to the last target timestamp of the most recent timestamp is located in the middle area, the direction from the center of the middle area to the center of area five is determined as the reference direction for the movement of the canvas, that is, from the lower right to the upper left. If the target block corresponding to the last target timestamp of the most recent timestamp is located in area six, and the target block corresponding to the last target timestamp of the last target timestamp is located in area four, the direction from the center of area four to the center of area five is determined as the reference direction for the movement of the canvas, that is, from bottom to top.

[0081] The above scheme takes into account that the user's main recording area is the non-corner area, and therefore searches to determine the most recent pen-place position in the non-corner area, and combines the user's last pen-place position to accurately predict the user's preferred recording direction, and determines the reference direction of the canvas movement accordingly, so that the canvas movement direction can be determined according to the reference direction of the canvas movement to meet the user's recording habits after the canvas is moved, thereby improving the user experience.

[0082] In the embodiment of the present application, determining the reference direction of the canvas movement according to the position of the target block on the canvas includes:

[0083] If the target blocks are all located in the same corner area, the direction from the center of the canvas to the corner area is used as the reference direction for canvas movement.

[0084] For example, if after traversing the target timestamps, the target blocks corresponding to all the target timestamps are located in the same corner area, that is, the user has recorded in the same corner area in the recent period of time, then the direction of the canvas center pointing to the corner area is used as the reference direction of the canvas movement.

[0085] S240: Determine a canvas movement direction according to a reference direction of the canvas movement, and move the canvas based on the canvas movement direction.

[0086] The embodiment of the present application provides a canvas movement method, which determines the distribution data of the recorded content on the canvas, and determines whether the canvas meets the moving conditions based on the distribution data; if the canvas meets the moving conditions, the target block corresponding to the target timestamp is determined, and the position of the target block on the canvas is determined; wherein the target timestamp is a timestamp within a preset time from the current moment; according to the position of the target block on the canvas, the reference direction of the canvas movement is determined. The canvas movement direction is determined according to the reference direction of the canvas movement, and the canvas is moved based on the canvas movement direction. The above scheme can accurately predict the overall writing direction that the user tends to tend to when recording on the canvas according to the user's recording habits in the recent period of time, and then determine the reference direction of the canvas movement, so as to determine the canvas movement direction according to the reference direction of the canvas movement to move the canvas, and ensure that after the canvas moves, more blank areas can be moved out along the reference direction of the user's canvas movement for the user to continue recording in the original recording direction, thereby improving the user experience.

[0087] Embodiment 3

[0088] Fig.12 This is a flowchart of a canvas moving method provided in the third embodiment of the present application. The present embodiment is optimized based on the above embodiment. For solutions not described in detail in the present embodiment, please refer to the above embodiment. Fig.12 As shown, the method of the embodiment of the present application specifically includes the following steps:

[0089] S310: Determine distribution data of the recorded content on the canvas, and determine whether the canvas meets the moving condition based on the distribution data.

[0090] In an embodiment of the present application, determining distribution data of recorded content on a canvas, and determining whether the canvas meets a moving condition according to the distribution data, includes:

[0091] If the distribution data satisfies at least one of the following, the canvas is determined to meet the moving conditions:

[0092] The number of blocks of the marked data as preset data reaches a first preset number of blocks;

[0093] The target block corresponding to the most recent timestamp closest to the current moment is located in a non-corner area of ​​the canvas, and the number of blocks in the non-corner area marked with preset data reaches a second preset number of blocks;

[0094] The blocks corresponding to the consecutive preset number of timestamps closest to the current moment are located in the corner area of ​​the canvas, and the number of blocks in the corner area whose marked data is preset data reaches a third preset number of blocks.

[0095] Exemplarily, the distribution of blocks containing recorded content in the canvas can be determined based on the marking data. If the marking data of the block is preset data, it is determined that the block contains recorded content. The number of blocks whose marking data is preset data is counted to determine whether the number of blocks reaches a first preset number of blocks. If the number of blocks reaches the first preset number of blocks, it is determined that the recorded content almost fills the canvas. The first preset number of blocks can be determined based on actual conditions, for example, it can be set to 70% of the total number of blocks on the canvas.

[0096] If the target block corresponding to the most recent timestamp is located in a non-corner area of ​​the canvas, it is determined whether the number of blocks in the non-corner area whose marked data is preset data reaches the second preset number of blocks, thereby judging whether the recorded content in the non-corner area has almost covered the non-corner area. The second preset number of blocks can be determined according to actual conditions, for example, it can be set to 70% of the total number of blocks in the non-corner area. For example, if the target block corresponding to the most recent timestamp is located in area four, the number of blocks in area four whose marked data is preset data is counted to determine whether the number of blocks reaches 70% of the total number of blocks in area four.

[0097] If the blocks corresponding to the preset number of consecutive timestamps closest to the current moment are located in the corner area of ​​the canvas, it is determined whether the number of blocks in the corner area with marked data as preset data reaches a third preset number of blocks, which can be determined according to actual conditions, for example, can be set to 70% of the corner area. If the number of blocks reaches the third preset number of blocks, it is determined that the recorded content almost covers the corner area.

[0098] S320. If the canvas meets the moving condition, the reference direction of the canvas movement is determined according to the marking data of the blocks on the canvas and the corresponding timestamps; wherein the marking data is used to indicate whether there is recorded content on the blocks, and the timestamp is used to indicate the recording time of the recorded content.

[0099] S330: Performing a simulated canvas movement in the background of the canvas mobile device based on the opposite direction of the reference direction of the canvas movement to obtain a simulated canvas.

[0100] Exemplarily, in order to avoid the problem of having no blank area for user recording after directly moving the canvas, the canvas can be simulated moved in the opposite direction of the reference direction of the canvas movement in the background of the canvas mobile device before moving the canvas to obtain a simulated canvas.

[0101] S340: If the simulated canvas satisfies a preset condition, the opposite direction of the reference direction of the canvas movement is used as the canvas movement direction; wherein the preset condition is that the number of blocks in the simulated canvas whose marked data is preset data is less than a fourth preset number of blocks.

[0102] S350: If the simulated canvas does not meet the preset condition, continue to simulate the movement of the canvas in the opposite direction of the reference direction of the canvas movement, and determine the moving direction of the canvas according to the moving direction of the simulated canvas when the preset condition is met.

[0103] The preset condition can be determined according to actual conditions, for example, the number of blocks with preset data in the simulated canvas is less than the fourth preset number of blocks. The fourth preset number of blocks can be determined according to actual conditions, for example, 80% of the total number of blocks in the simulated canvas.

[0104] The preset condition may also be at least one of the following:

[0105] The number of blocks of the marked data as preset data is less than the first preset number of blocks;

[0106] The target block corresponding to the most recent timestamp closest to the current moment is located in a non-corner area of ​​the simulation canvas, and the number of blocks in the non-corner area marked with data as preset data is less than the second preset number of blocks;

[0107] The blocks corresponding to the preset number of consecutive timestamps closest to the current moment are located in the corner area of ​​the simulation canvas, and the number of blocks marked with preset data in the corner area is less than the third preset number of blocks.

[0108] For details, please refer to the description in S310.

[0109] If the simulated canvas does not meet the preset conditions, it is determined that the blank area in the simulated canvas still does not meet the user's recorded needs, so the simulated movement of the canvas continues in the opposite direction of the reference direction of the canvas movement to obtain a new simulated canvas, and the moving direction of the canvas is determined according to the moving direction of the simulated canvas when the preset conditions are met. For example, assuming that the new simulated canvas obtained after continuing to simulate the movement of the canvas in the opposite direction of the reference direction of the canvas movement meets the preset conditions, the opposite direction of the reference direction of the canvas movement is used as the canvas moving direction.

[0110] In the embodiment of the present application, the canvas is simulated and moved in the opposite direction of the reference direction of the canvas movement, and the moving direction of the canvas is determined according to the moving direction of the simulated canvas when the preset condition is satisfied, including:

[0111] Continue to simulate the movement of the canvas based on the opposite direction of the reference direction of the canvas movement until the simulated canvas meets the preset conditions, and use the opposite direction of the reference direction of the canvas movement as the canvas movement direction;

[0112] If the number of times the canvas is simulated moved in the opposite direction of the reference direction of the canvas movement reaches a preset number and the simulated canvas does not meet the preset conditions, the canvas is simulated moved based on an adjustment direction, and the adjustment direction when the simulated canvas meets the preset conditions is used as the canvas movement direction; wherein the adjustment direction is a direction other than the opposite direction of the reference direction of the canvas movement.

[0113] Exemplarily, if the simulated movement of the canvas continues to be performed in the opposite direction of the reference direction of the canvas movement, and the number of simulated movements of the canvas in the opposite direction of the reference direction of the canvas movement does not reach a preset number of times, and the simulated canvas meets the preset conditions, the opposite direction of the reference direction of the canvas movement is used as the canvas movement direction. At this time, the total amplitude of the simulated movement of the canvas can be determined according to the number of movements in the opposite direction of the reference direction of the canvas movement and the amplitude of each movement, so as to move the canvas according to the total amplitude and the opposite direction of the reference direction of the canvas movement. If the simulated movement of the canvas continues to be performed in the opposite direction of the reference direction of the canvas movement, and the number of simulated movements of the canvas in the opposite direction of the reference direction of the canvas movement reaches a preset number of times, it means that after multiple movements, the simulated canvas still has no more blank areas to meet the user's recording needs, then the simulated movement of the canvas is no longer performed in the opposite direction of the reference direction of the canvas movement, but the simulated movement of the canvas is performed based on the adjustment direction, and the adjustment direction when the simulated canvas meets the preset conditions is used as the canvas movement direction, and the adjustment direction is other directions different from the opposite direction of the reference direction of the canvas movement. For example, if the simulated movement of the canvas continues in the opposite direction of the reference direction of the canvas movement, and the number of simulated movements of the canvas in the opposite direction of the reference direction of the canvas movement reaches a preset number, the simulated movement of the canvas is performed again based on the reference direction of the canvas movement. If the simulated canvas meets the preset conditions, the reference direction of the canvas movement is used as the direction of the canvas movement. Alternatively, the direction perpendicular to the reference direction of the canvas movement can be used as the adjustment direction, and the simulated movement of the canvas is performed based on the adjustment direction. If the simulated canvas meets the preset conditions, the direction perpendicular to the reference direction of the canvas movement is used as the direction of the canvas movement. The above scheme can evaluate the simulated canvas after the simulated movement to determine whether the simulated canvas contains more blank areas for the user to record. If not, the movement continues to be attempted to move out more blank areas for the user to record in the simulated movement.

[0114] In the embodiment of the present application, if the simulated canvas still does not meet the preset conditions after multiple canvas simulation moves, a new blank canvas can be directly created for the user to write.

[0115] S360: Move the canvas based on the canvas moving direction.

[0116] The embodiment of the present application provides a canvas moving method, in which a simulated canvas movement is performed in the background of a canvas mobile device based on the opposite direction of a reference direction of the canvas movement to obtain a simulated canvas. If the simulated canvas meets a preset condition, the opposite direction of the reference direction of the canvas movement is used as the canvas moving direction. If the simulated canvas does not meet the preset condition, the simulated canvas movement is continued in the opposite direction of the reference direction of the canvas movement, and the canvas moving direction is determined according to the moving direction of the simulated canvas when the preset condition is met. The above scheme avoids the problem that there is still no blank area for the user to record after the canvas is directly moved. By performing a simulated movement of the canvas, a blank area for the user to record is first tried to be moved, and then the final canvas moving direction is determined according to the direction of the simulated movement, so as to ensure that more blank areas can be moved out for the user to record and write after the canvas is moved based on the canvas moving direction, thereby improving the user experience.

[0117] Embodiment 4

[0118] Fig.13 This is a flowchart of a canvas moving method provided in the fourth embodiment of the present application. The present embodiment is optimized based on the above embodiment. For solutions not described in detail in the present embodiment, please refer to the above embodiment. Fig.13 As shown, the method of the embodiment of the present application specifically includes the following steps:

[0119] S410: Determine distribution data of the recorded content on the canvas, and determine whether the canvas meets the moving condition according to the distribution data.

[0120] S420. If the canvas meets the moving condition, the reference direction of the canvas movement is determined according to the marking data of the blocks on the canvas and the corresponding timestamps; wherein the marking data is used to indicate whether there is recorded content on the blocks, and the timestamp is used to indicate the recording time of the recorded content.

[0121] S430: Determine a canvas movement direction according to a reference direction of the canvas movement, and move the canvas based on the canvas movement direction.

[0122] S440: Delete the marking data of the removed block and the corresponding timestamp that are moved out of the canvas, and store the corresponding removal record content in the removed block.

[0123] For example, if the recorded content of some blocks is moved out of the canvas after the canvas is moved, the marking data and the corresponding timestamp of the removed blocks where the recorded content is removed from the canvas are deleted. In the subsequent canvas application process, it may be necessary to move the recorded content that has been moved out of the canvas back into the canvas, so the removed recorded content in the removed blocks needs to be stored so that it can continue to be displayed in the canvas when it is moved back later.

[0124] S450: If the removed recorded content is moved back into the canvas, the marking data of the new block where the removed recorded content is located is updated, and the timestamp corresponding to the new block is determined according to the time when the removed recorded content is moved back.

[0125] Exemplarily, if the removed recorded content is moved back into the canvas, the new block where the removed recorded content is located after being moved back into the canvas is located is located, the marking data of the new block is updated to the preset data, and the time when the removed recorded content is moved back to the new block is used as the timestamp corresponding to the new block, and the marking data and timestamp of the new block are updated.

[0126] The embodiment of the present application provides a canvas moving method, which determines the canvas moving direction according to the reference direction of the canvas movement, and after the canvas is moved based on the canvas moving direction, deletes the mark data and corresponding timestamp of the removed block that is moved outside the canvas, and stores the corresponding removed record content in the removed block. If the removed record content is moved back into the canvas, the mark data of the new block where the removed record content is located is updated, and the timestamp corresponding to the new block is determined according to the time when the removed record content is moved back. The above scheme stores the recorded content that has been moved out, deletes the mark data and timestamp of the block corresponding to the recorded content, so as to facilitate the subsequent display of the recorded content when the recorded content is moved back into the canvas, and updates the mark data and corresponding timestamp of the new block of the recorded content, thereby realizing the two-way movement of the canvas, avoiding the disappearance of the previous recorded content after the canvas is moved, and improving the user experience.

[0127] Embodiment 5

[0128] Fig.14 This is a schematic diagram of the structure of a canvas moving device provided in Embodiment 5 of the present application. The device can execute the canvas moving method provided in any embodiment of the present application and has the corresponding functional modules and beneficial effects of the execution method. Fig.14 As shown, the device comprises:

[0129] A moving condition determination module 510, used to determine distribution data of the recorded content on the canvas, and determine whether the canvas meets the moving condition according to the distribution data;

[0130] A canvas movement reference direction determination module 520, for determining the reference direction of the canvas movement according to the marking data of the blocks on the canvas and the corresponding timestamps if the canvas meets the movement condition; wherein the marking data is used to indicate whether there is recorded content on the blocks, and the timestamp is used to indicate the recording time of the recorded content;

[0131] The moving module 530 is used to determine the canvas moving direction according to the reference direction of the canvas movement, and move the canvas based on the canvas moving direction.

[0132] In the embodiment of the present application, the reference direction determination module 520 for canvas movement includes:

[0133] A position determination unit, used to determine a target block corresponding to a target timestamp, and determine a position of the target block on the canvas; wherein the target timestamp is a timestamp within a preset time from the current moment;

[0134] A determination unit is used to determine a reference direction for moving the canvas according to a position of the target block on the canvas.

[0135] In the embodiment of the present application, the determining unit includes:

[0136] A traversal subunit, used to traverse the target timestamps starting from the most recent timestamp in order from near to far from the current time, until the target block corresponding to the target timestamp is located in the non-corner area of ​​the canvas;

[0137] The most recent timestamp is the target timestamp closest to the current time; the non-corner area is the area of ​​the canvas excluding the corner area; the corner area is the area within the first preset range of the canvas vertex;

[0138] The direction determination subunit is used to determine a reference direction of movement of the canvas according to the position of the target block corresponding to the target timestamp in the canvas.

[0139] In the embodiment of the present application, the direction determination subunit is specifically used for:

[0140] If the target block corresponding to the most recent timestamp is located in a critical area in the non-corner area of ​​the canvas, determining the reference direction of the canvas movement as a direction from the center of the canvas to the center of the critical area; wherein the critical area is an area within a second preset range adjacent to the canvas boundary in the non-corner area;

[0141] If the target block corresponding to the most recent timestamp is located in the middle area of ​​the non-corner area of ​​the canvas, the reference direction of the canvas movement is determined to be from top to bottom, or the reference direction of the canvas movement is determined based on the distribution of the target blocks corresponding to a preset number of consecutive target timestamps closest to the current moment in the canvas.

[0142] In the embodiment of the present application, the direction determination subunit is specifically used for:

[0143] If the target block corresponding to the most recent timestamp is located in the corner area of ​​the canvas, the center of the canvas area where the first traversed target block located in the non-corner area is located is pointed to the direction of the center of the corner area, which is determined as the reference direction of the canvas movement.

[0144] In the embodiment of the present application, the determining unit is specifically used to:

[0145] If the target blocks are all located in the same corner area, the direction from the center of the canvas to the corner area is used as the reference direction for the movement of the canvas.

[0146] In the embodiment of the present application, the moving condition determination module is specifically used to:

[0147] If the distribution data satisfies at least one of the following, it is determined that the canvas meets the moving condition:

[0148] The number of blocks of the marked data as preset data reaches a first preset number of blocks;

[0149] The target block corresponding to the most recent timestamp closest to the current moment is located in a non-corner area of ​​the canvas, and the number of blocks in the non-corner area with marked data as preset data reaches a second preset number of blocks;

[0150] The blocks corresponding to the consecutive preset number of timestamps closest to the current moment are located in the corner area of ​​the canvas, and the number of blocks in the corner area whose marked data is preset data reaches a third preset number of blocks.

[0151] In an embodiment of the present application, the mobile module includes:

[0152] A simulation moving unit, used for performing a simulated movement of the canvas in a direction opposite to a reference direction of the canvas movement in a background of the canvas moving device to obtain a simulated canvas;

[0153] a direction determination unit, configured to use the opposite direction of the reference direction of the movement of the canvas as the direction of the movement of the canvas if the simulated canvas satisfies a preset condition; wherein the preset condition is that the number of blocks in the simulated canvas whose marked data is preset data is less than a fourth preset number of blocks;

[0154] The continuing movement unit is used to continue to simulate the movement of the canvas in the opposite direction of the reference direction of the canvas movement if the simulated canvas does not meet the preset conditions, and determine the moving direction of the canvas according to the moving direction of the simulated canvas when the preset conditions are met.

[0155] Continue moving units, including:

[0156] A canvas movement direction determination subunit, configured to continue to simulate the movement of the canvas based on the opposite direction of the reference direction of the canvas movement until the simulated canvas meets a preset condition, and to use the opposite direction of the reference direction of the canvas movement as the canvas movement direction;

[0157] The adjustment movement subunit is used to perform simulated canvas movement based on an adjustment direction if the number of times the canvas is simulated in the opposite direction of the reference direction of the canvas movement reaches a preset number and the simulated canvas does not meet the preset conditions, and the adjustment direction when the simulated canvas meets the preset conditions is used as the canvas movement direction; wherein the adjustment direction is a direction other than the opposite direction of the reference direction of the canvas movement.

[0158] In an embodiment of the present application, the mobile module includes:

[0159] A detection unit, configured to detect whether there is an operation of adding or deleting recorded content on the canvas if a user's movement operation on the canvas is detected;

[0160] A canvas moving unit, if present, is used to move the canvas based on a canvas moving direction when the canvas meets a translation condition.

[0161] In an embodiment of the present application, the method further includes:

[0162] A removal data processing module is used to delete the marking data of the removal block that is moved outside the canvas and the corresponding timestamp, and store the corresponding removal record content in the removal block;

[0163] The data updating module is used to update the marking data of the new block where the removed record content is located if the removed record content is moved back into the canvas, and determine the timestamp corresponding to the new block according to the time when the removed record content is moved back.

[0164] A canvas moving device provided in an embodiment of the present application can execute a canvas moving method provided in any embodiment of the present application, and has functional modules and beneficial effects corresponding to the execution method.

[0165] Embodiment 6

[0166] Fig.15 A schematic diagram of an electronic device 10 that can be used to implement an embodiment of the present application is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present application described and / or required herein.

[0167] like Fig.15As shown, the electronic device 10 includes at least one processor 11, and a memory connected to the at least one processor 11, such as a read-only memory (ROM) 12, a random access memory (RAM) 13, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 to the random access memory (RAM) 13. In the RAM 13, various programs and data required for the operation of the electronic device 10 can also be stored. The processor 11, the ROM 12, and the RAM 13 are connected to each other through a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.

[0168] A number of components in the electronic device 10 are connected to the I / O interface 15, including: an input unit 16, such as a keyboard, a mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a disk, an optical disk, etc.; and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0169] The processor 11 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 11 executes the various methods and processes described above, such as a canvas moving method.

[0170] In some embodiments, the canvas moving method may be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 10 via the ROM 12 and / or the communication unit 19. When the computer program is loaded into the RAM 13 and executed by the processor 11, one or more steps of the canvas moving method described above may be performed. Alternatively, in other embodiments, the processor 11 may be configured to execute the canvas moving method in any other appropriate manner (e.g., by means of firmware).

[0171] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0172] The computer programs for implementing the methods of the present application may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable canvas mobile device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine as a stand-alone software package and partially on a remote machine, or entirely on a remote machine or server.

[0173] In the context of the present application, a computer readable storage medium may be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, device or equipment. A computer readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, a computer readable storage medium may be a machine readable signal medium. A more specific example of a machine readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0174] To provide interaction with a user, the systems and techniques described herein may be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).

[0175] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.

[0176] A computing system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The client and server relationship is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services.

[0177] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps recorded in this application can be executed in parallel, sequentially or in different orders, as long as the information expected by the technical solution of this application can be achieved, and this document is not limited here.

[0178] The above specific implementations do not constitute a limitation on the protection scope of this application. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principles of this application should be included in the protection scope of this application.

Claims

1. A canvas moving method, characterized in that: The method comprises: Determine distribution data of recorded content on the canvas, and determine whether the canvas meets a moving condition according to the distribution data; If the canvas meets the moving condition, the reference direction of the canvas movement is determined according to the marking data of the blocks on the canvas and the corresponding timestamps; wherein the marking data is used to indicate whether there is recorded content on the blocks, and the timestamp is used to indicate the recording time of the recorded content; The canvas movement direction is determined according to the reference direction of the canvas movement, and the canvas is moved based on the canvas movement direction.

2. The method according to claim 1, characterized in that Determining a reference direction of movement of the canvas according to the block marking data on the canvas and the corresponding timestamps includes: Determine a target block corresponding to a target timestamp, and determine a position of the target block on the canvas; wherein the target timestamp is a timestamp within a preset time from the current moment; A reference direction for moving the canvas is determined according to the position of the target block on the canvas.

3. The method according to claim 2, characterized in that Determining a reference direction for moving the canvas according to a position of the target block on the canvas includes: Starting from the most recent timestamp, traverse the target timestamps in order from the nearest to the current time, until the target block corresponding to the target timestamp is located in the non-corner area of ​​the canvas; The most recent timestamp is the target timestamp closest to the current time; the non-corner area is the area of ​​the canvas excluding the corner area; the corner area is the area within the first preset range of the canvas vertex; A reference direction for moving the canvas is determined according to a position of a target block corresponding to the target timestamp in the canvas.

4. The method according to claim 3, characterized in that Determining a reference direction for moving the canvas according to a position of a target block corresponding to the target timestamp in the canvas includes: If the target block corresponding to the most recent timestamp is located in a critical area in the non-corner area of ​​the canvas, determining the reference direction of the canvas movement as a direction from the center of the canvas to the center of the critical area; wherein the critical area is an area within a second preset range adjacent to the canvas boundary in the non-corner area; If the target block corresponding to the most recent timestamp is located in the middle area of ​​the non-corner area of ​​the canvas, the reference direction of the canvas movement is determined to be from top to bottom, or the reference direction of the canvas movement is determined according to the distribution of the target blocks corresponding to a preset number of consecutive target timestamps closest to the current moment in the canvas; If the target block corresponding to the most recent timestamp is located in the corner area of ​​the canvas, the center of the canvas area where the first traversed target block located in the non-corner area is located is pointed to the direction of the center of the corner area, which is determined as the reference direction of the canvas movement.

5. The method according to claim 2, characterized in that: Determining a reference direction for moving the canvas according to a position of the target block on the canvas includes: If the target blocks are all located in the same corner area, the direction from the center of the canvas to the corner area is used as the reference direction for the movement of the canvas.

6. The method according to claim 1, characterized in that Determining distribution data of recorded content on a canvas, and determining whether the canvas meets a moving condition according to the distribution data, including: If the distribution data satisfies at least one of the following, it is determined that the canvas meets the moving condition: The number of blocks of the marked data as preset data reaches a first preset number of blocks; The target block corresponding to the most recent timestamp closest to the current moment is located in a non-corner area of ​​the canvas, and the number of blocks in the non-corner area with marked data as preset data reaches a second preset number of blocks; The blocks corresponding to the consecutive preset number of timestamps closest to the current moment are located in the corner area of ​​the canvas, and the number of blocks in the corner area whose marked data is preset data reaches a third preset number of blocks.

7. The method according to claim 1, characterized in that Determining a canvas movement direction according to a reference direction of the canvas movement includes: Performing a simulated canvas movement in the background of the canvas mobile device based on the direction opposite to the reference direction of the canvas movement to obtain a simulated canvas; If the simulated canvas satisfies a preset condition, the opposite direction of the reference direction of the canvas movement is used as the canvas movement direction; wherein the preset condition is that the number of blocks in the simulated canvas whose marked data is preset data is less than a fourth preset number of blocks; If the simulated canvas does not meet the preset conditions, the simulated canvas movement is continued in the opposite direction of the reference direction of the canvas movement, and the moving direction of the canvas is determined according to the moving direction of the simulated canvas when the preset conditions are met; The method further comprises: continuing to simulate the movement of the canvas in the opposite direction of the reference direction of the canvas movement, and determining the moving direction of the canvas according to the moving direction of the simulated canvas when the preset condition is satisfied, including: Continue to simulate the movement of the canvas based on the opposite direction of the reference direction of the canvas movement until the simulated canvas meets a preset condition, and use the opposite direction of the reference direction of the canvas movement as the canvas movement direction; If the number of times the canvas is simulated moved in the direction opposite to the reference direction of the canvas movement reaches a preset number and the simulated canvas does not meet the preset conditions, the canvas is simulated moved based on an adjustment direction, and the adjustment direction when the simulated canvas meets the preset conditions is used as the canvas movement direction; wherein the adjustment direction is a direction other than the opposite direction of the reference direction of the canvas movement.

8. A canvas moving device, characterized in that: The device comprises: A moving condition determination module, used to determine distribution data of the recorded content on the canvas, and determine whether the canvas meets the moving condition according to the distribution data; A module for determining a reference direction of canvas movement, for determining a reference direction of canvas movement according to the marking data of the blocks on the canvas and the corresponding timestamps if the canvas meets the movement conditions; wherein the marking data is used to indicate whether there is recorded content on the blocks, and the timestamp is used to indicate the recording time of the recorded content; The moving module is used to determine the moving direction of the canvas according to the reference direction of the canvas movement, and move the canvas based on the moving direction of the canvas.

9. An electronic device, characterized in that: The electronic device comprises: at least one processor; and a memory communicatively connected to the at least one processor; wherein, The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the canvas moving method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the canvas moving method according to any one of claims 1 to 7 when executed.