Layer rendering method and device, electronic equipment, storage medium and program product

By uniformly processing layer operation requests on the server side and collaboratively updating the rendering of different clients, the problem of inconsistent layer display between terminals is solved, improving user experience and operational efficiency.

CN121579808APending Publication Date: 2026-02-27BEIJING WODONG TIANJUN INFORMATION TECH CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511793572.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-12-01
Publication Date
2026-02-27

AI Technical Summary

Technical Problem

Inconsistent display of the same view layer across different terminals leads to a degraded user experience and reduced operational efficiency.

Method used

Layer operation requests are handled uniformly on the server side. The target rendering layer is sent to the current client through the first communication connection, and to other clients that have subscribed to the current view through the second communication connection, so as to ensure consistent rendering effect.

Benefits of technology

This ensures consistent layer display across different clients, improving user experience and operational efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121579808A_ABST
    Figure CN121579808A_ABST
Patent Text Reader

Abstract

The invention provides a layer rendering method and device, electronic equipment, a storage medium and a program product, and relates to the field of computer vision. The method comprises the steps that a layer operation request for an existing layer in a current view is received on the basis of first communication connection, the layer operation request is analyzed, a request layer requesting operation is determined, the current view represents a view in a current client side and comprises a displayed layer, and the displayed layer is sent to the client side; the first communication connection is used for communication between the server and the current client; calculating a target rendering layer according to the displayed layer and the request layer; sending the target rendering layer to the current client for rendering through the first communication connection; the collaborative service is called, the target rendering layer is sent to other clients who subscribe the current view for rendering through second communication connection, so that the rendering effects of the other clients and the current client for the current view are consistent, and the second communication connection is used for communication between the other clients and the server side.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates to the technical field of computers, in particular to the field of computer vision, and more particularly to a layer rendering method and device, electronic equipment, storage medium and program product. BACKGROUND

[0002] A layer is a special graphics layer for visualizing information in a digital interface, and an element such as an event marker is superimposed on a basic interface through a layered rendering technology. Its core functions include: structured presentation of information, dynamic association of events, and support for interactive operations. It is widely used in operating systems, mobile applications and other scenarios to realize intuitive management and interaction of data.

[0003] In the process of implementing the present disclosure, the inventors have found that there is at least the following problem in the related art: there is inconsistency in the display of the same view layer in different terminals. SUMMARY

[0004] Therefore, the present disclosure provides a layer rendering method and device, electronic equipment, storage medium and program product.

[0005] One aspect of the present disclosure provides a layer rendering method, comprising: in response to receiving a layer operation request for an existing layer in a current view based on a first communication connection, analyzing the layer operation request to determine a request layer of the request operation, wherein the current view represents a view in a current client, the current view includes a displayed layer, and the first communication connection is used for communication between a server and the current client; calculating a target rendering layer according to the displayed layer and the request layer; sending the target rendering layer to the current client for rendering through the first communication connection; calling a collaboration service to send the target rendering layer to other clients that have subscribed to the current view for rendering through a second communication connection, so that the rendering effects of the other clients and the current client for the current view are consistent, wherein the second communication connection is used for communication between the other clients and the server.

[0006] According to an embodiment of the present disclosure, calculating the target rendering layer according to the displayed layer and the request layer comprises: performing a set addition on the displayed layer and the request layer to obtain a to-be-verified layer; reading an effectiveness attribute of the to-be-verified layer from a layer information table, the effectiveness attribute being valid or invalid; determining a valid layer from the to-be-verified layer according to the effectiveness attribute; and calculating the target rendering layer according to the valid layer, the displayed layer and the request layer.

[0007] According to an embodiment of the present disclosure, the target rendering layer is determined according to at least one of the request invalidation layer, the displayed invalidation layer and the total invalidation layer, and the displayed layer and the request layer, including: subtracting the request invalidation layer from the request layer set to obtain a request effective layer; subtracting the displayed invalidation layer from the displayed layer set to obtain a displayed effective layer; performing set addition on the request invalidation layer and the displayed invalidation layer to obtain a total invalidation layer; and determining the target rendering layer according to at least one of the request invalidation layer, the displayed invalidation layer and the total invalidation layer, and the displayed layer and the request layer.

[0008] According to an embodiment of the present disclosure, the layer operation request includes at least one of the following: a check request for displaying a layer, and an uncheck request for not displaying a layer; the request layer includes at least one of the following: a request display layer for checking, and a request non-display layer for unchecking; and the target rendering layer is determined according to at least one of the request invalidation layer, the displayed invalidation layer and the total invalidation layer, and the displayed layer and the request layer, including: subtracting the request invalidation layer from the request display layer set to obtain a request effective display layer; subtracting the displayed invalidation layer from the displayed layer set to obtain a displayed effective layer; performing intersection on the request non-display layer and the displayed effective layer to obtain a request un-display effective layer; subtracting the request un-display effective layer from the displayed effective layer set to obtain a displayed remaining effective layer; and determining the target rendering layer according to the request effective display layer and the displayed remaining effective layer.

[0009] According to an embodiment of the present disclosure, the target rendering layer is determined according to the request effective display layer and the displayed remaining effective layer, including: subtracting the number of layers of the displayed remaining effective layer from the maximum number of displayable layers configured for the current view to obtain a remaining number of displayable layers; obtaining a new display layer list, and an initial value of a new display number of the new display layer list is 0; in response to determining that the new display number does not reach the remaining number of displayable layers, reading a target request effective display layer from the request effective display layer; in response to determining that the target request effective display layer does not exist in the displayed remaining effective layer, adding the target request effective display layer to the new display layer list, and adding 1 to the new display number; and in response to determining that the new display number reaches the remaining number of displayable layers, assembling the new display layer in the new display layer list and the displayed remaining effective layer to obtain the target rendering layer.

[0010] According to an embodiment of the present disclosure, the target rendering layer includes at least one of the following: a new display layer, a request un-display effective layer, and a total invalidation layer; and the layer rendering method further includes: displaying the new display layer in the current view; hiding the request un-display effective layer in the current view; and deleting the total invalidation layer from the current view.

[0011] Another aspect of the present disclosure provides a layer rendering apparatus, comprising: a request analysis module configured to analyze a layer operation request in response to receiving the layer operation request for an existing layer in a current view based on a first communication connection, the layer operation request requesting an operation on a request layer, wherein the current view represents a view in a current client, the current view including a displayed layer, and the first communication connection is used for communication between a server and the current client; a target rendering layer calculation module configured to calculate a target rendering layer based on the displayed layer and the request layer; a rendering module configured to send the target rendering layer to the current client for rendering via the first communication connection; and a collaboration module configured to invoke a collaboration service and send the target rendering layer to other clients that have subscribed to the current view for rendering via a second communication connection, so that the rendering effect of the current view is consistent between the other clients and the current client, wherein the second communication connection is used for communication between the other clients and the server.

[0012] Another aspect of the present disclosure provides an electronic device, comprising: one or more processors; and a memory storing one or more programs, wherein the one or more programs, when executed by the one or more processors, cause the one or more processors to implement the layer rendering method of the present disclosure.

[0013] Another aspect of the present disclosure provides a computer-readable storage medium storing computer-executable instructions that, when executed, implement the layer rendering method of the present disclosure.

[0014] Another aspect of the present disclosure provides a computer program product comprising computer-executable instructions that, when executed, implement the layer rendering method of the present disclosure.

[0015] According to the technical solution of the present disclosure, by adopting the following technical means: in response to receiving a layer operation request for an existing layer in a current view based on a first communication connection, analyzing the layer operation request, determining the request layer of the request operation, wherein the current view represents a view in the current client, the current view includes a displayed layer, and the first communication connection is used for communication between the server and the current client; according to the displayed layer and the request layer, calculating a target rendering layer; sending the target rendering layer to the current client for rendering through the first communication connection; calling a collaboration service, sending the target rendering layer to other clients that have subscribed to the current view for rendering through a second communication connection, so that the rendering effects of the current view of the other clients and the current client are consistent, wherein the second communication connection is a technical means for communication between the other clients and the server. Since the layer operation request of the current view on the current client is uniformly processed on the server, and the collaborative update of the current view that has been subscribed to on other clients is realized by calling the collaboration service, the problem of inconsistent display of the same view layer in different clients can be at least partially solved, the client can be ensured to update the layer change in time, and the user experience is improved. BRIEF DESCRIPTION OF DRAWINGS

[0016] The above and other objects, features and advantages of the present disclosure will become more apparent from the following description of embodiments of the present disclosure taken in conjunction with the accompanying drawings, in which:

[0017] Figure 1 An exemplary system architecture to which a layer rendering method according to embodiments of the present disclosure can be applied is schematically shown;

[0018] Figure 2 A flowchart of a layer rendering method according to embodiments of the present disclosure is schematically shown;

[0019] Figure 3 A schematic diagram of a calendar multi-layer multi-end core design according to embodiments of the present disclosure is schematically shown;

[0020] Figure 4 A flowchart of a calendar layer multi-end collaboration design according to embodiments of the present disclosure is schematically shown;

[0021] Figure 5 A use case structure of a calendar multi-layer multi-end collaboration mechanism according to embodiments of the present disclosure is schematically shown;

[0022] Figure 6 A flowchart of a calendar multi-layer multi-end core calculation design according to embodiments of the present disclosure is schematically shown;

[0023] Figure 7 A block diagram of a layer rendering apparatus according to embodiments of the present disclosure is schematically shown;

[0024] Figure 8 A block diagram of an electronic device suitable for implementing a layer rendering method according to an embodiment of the disclosure is schematically shown. DETAILED DESCRIPTION

[0025] Hereinafter, embodiments of the disclosure will be described with reference to the accompanying drawings. However, it is to be understood that these descriptions are merely exemplary and are not intended to limit the scope of the disclosure. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the embodiments of the disclosure. However, it will be apparent to one skilled in the art that one or more embodiments can be practiced without these specific details. In other instances, well-known structures and techniques have been omitted in order to avoid obscuring the concepts of the disclosure.

[0026] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the disclosure. As used herein, the terms "comprises", "comprising", and the like are intended to indicate the presence of stated features, steps, operations, and / or components, but do not preclude the presence or addition of one or more other features, steps, operations, or components.

[0027] All terms used herein, including technical and scientific terms, have the meanings commonly understood by one of ordinary skill in the art, unless otherwise defined. It should be noted that the terms used herein should be interpreted as having meanings consistent with the context of the specification, and should not be interpreted in an idealized or overly formal manner.

[0028] In the case of using expressions similar to "at least one of A, B, and C, etc.", it should generally be interpreted to include any one of A, B, or C, a combination of at least two of A, B, and C, or a combination of A, B, and C, etc., unless otherwise specified.

[0029] In embodiments of the disclosure, the collection, updating, analysis, processing, use, transmission, provision, disclosure, storage, etc. of data involved (for example, including but not limited to user personal information) comply with relevant laws and regulations, are used for legal purposes, and do not violate public order and good customs. In particular, necessary measures are taken to prevent illegal access to user personal information data and maintain information security.

[0030] In embodiments of the disclosure, the authorization or consent of the user is obtained before the user's personal information is acquired or collected.

[0031] In the related art, when data indicating that one or more layers are in a selected state is recorded in each client, the layers displayed by each client can be inconsistent, which gives the user the illusion that the system has a bug (error), and causes the user to need to perform a selection operation on the layers again each time the client is changed, thereby affecting the user's office efficiency.

[0032] In other technologies, when data indicating that one or more layers are in a selected state is recorded in the server, the operations of different clients can be mutually covered. For example, when a user operates to check a display layer on a PC (Personal Computer), the user updates the data according to the operation of the PC, and other clients are not aware of this. In the case where the other clients do not refresh the calendar list and perform a re-selection operation on the layers, the operation of the PC is covered. When the PC re-enters the view, the user finds that the display layer set previously is modified. This causes the user to have difficulty in understanding how to operate to make the display layers on different clients consistent, thereby affecting the user experience and office efficiency.

[0033] Embodiments of the present disclosure provide a layer rendering method and device, electronic equipment, storage medium and program product, and relate to the field of computer vision. The method comprises: in response to receiving a layer operation request for an existing layer in a current view based on a first communication connection, analyzing the layer operation request to determine a request layer for which the request operation is performed, wherein the current view represents a view in a current client, and the current view includes a displayed layer; calculating a target rendering layer according to the displayed layer and the request layer; sending the target rendering layer to the current client for rendering through the first communication connection; calling a collaboration service to send the target rendering layer to other clients that have subscribed to the current view for rendering through a second communication connection, so that the rendering effects of the other clients and the current client for the current view are consistent, wherein the second communication connection is used for communication between the other clients and the server.

[0034] Figure 1 An exemplary system architecture 100 to which the layer rendering method according to embodiments of the present disclosure can be applied is schematically shown. It should be noted that, Figure 1 The system architecture shown is only an example of a system architecture to which embodiments of the present disclosure can be applied, to help those skilled in the art understand the technical content of the present disclosure, but does not mean that embodiments of the present disclosure cannot be used in other devices, systems, environments or scenarios.

[0035] As Figure 1As shown, the system architecture 100 according to this embodiment can include a first terminal device 101, a second terminal device 102, a third terminal device 103, a network 104, and a server 105. The network 104 is a medium for providing communication links between the first terminal device 101, the second terminal device 102, the third terminal device 103, and the server 105. The network 104 can include various connection types, such as wired and / or wireless communication links, etc.

[0036] A user can use the first terminal device 101, the second terminal device 102, the third terminal device 103 to interact with the server 105 through the network 104 to receive or send messages, etc. Various communication client applications can be installed on the first terminal device 101, the second terminal device 102, the third terminal device 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, and / or social platform software, etc. (only as examples).

[0037] The first terminal device 101, the second terminal device 102, the third terminal device 103 can be various electronic devices with display screens and supporting web browsing, including but not limited to smartphones, tablet computers, laptop computers, desktop computers, etc.

[0038] The server 105 can be a server providing various services, such as a background management server providing support for websites browsed by users using the first terminal device 101, the second terminal device 102, the third terminal device 103 (only as an example). The background management server can analyze and process received user requests and other data, and feed back the processing results (such as web pages, information, or data generated or obtained according to user requests, etc.) to the terminal device.

[0039] It should be noted that the layer rendering method provided by the embodiments of the present disclosure can generally be executed by the server 105. Accordingly, the layer rendering apparatus provided by the embodiments of the present disclosure can generally be arranged in the server 105. The layer rendering method provided by the embodiments of the present disclosure can also be executed by a server or a server cluster different from the server 105 and capable of communicating with the first terminal device 101, the second terminal device 102, the third terminal device 103 and / or the server 105. Accordingly, the layer rendering apparatus provided by the embodiments of the present disclosure can also be arranged in a server or a server cluster different from the server 105 and capable of communicating with the first terminal device 101, the second terminal device 102, the third terminal device 103 and / or the server 105. Alternatively, the layer rendering method provided by the embodiments of the present disclosure can also be executed by the first terminal device 101, the second terminal device 102 or the third terminal device 103, or by other terminal devices different from the first terminal device 101, the second terminal device 102 or the third terminal device 103. Accordingly, the layer rendering apparatus provided by the embodiments of the present disclosure can also be arranged in the first terminal device 101, the second terminal device 102 or the third terminal device 103, or in other terminal devices different from the first terminal device 101, the second terminal device 102 or the third terminal device 103.

[0040] For example, the layer operation request can originally be stored in any one of the first terminal device 101, the second terminal device 102 or the third terminal device 103 (for example, the first terminal device 101, but not limited thereto), or on an external storage device and can be imported into the first terminal device 101. Then, the first terminal device 101 can execute the layer rendering method provided by the embodiments of the present disclosure locally, or send the layer operation request to other terminal devices, servers or server clusters, and execute the layer rendering method provided by the embodiments of the present disclosure by other terminal devices, servers or server clusters receiving the layer operation request.

[0041] It should be understood that Figure 1 The number of terminal devices, networks and servers in the system is only illustrative. According to the needs of implementation, there can be any number of terminal devices, networks and servers.

[0042] Figure 2 A flowchart of a layer rendering method according to an embodiment of the present disclosure is schematically shown.

[0043] As Figure 2 shown, the method includes operations S201-S203.

[0044] In operation S201, in response to receiving a layer operation request for an existing layer in a current view based on a first communication connection, the layer operation request is analyzed to determine a request layer for which the request operation is requested, wherein the current view includes a displayed layer, and the first communication connection is used for communication between the current client and the server.

[0045] According to an embodiment of the present disclosure, the current view can represent a visual page in various application software of the current client for a user to watch and / or operate. The existing layer can represent a layer configured in the current view, which is not displayed or displayed in the current view. For a layer checked by the user in the current view, it can be displayed in the current view, and such a layer can be referred to as a displayed layer. For a layer not checked by the user in the current view, it can be hidden in the current view until it is checked and displayed.

[0046] According to an embodiment of the present disclosure, the layer operation request can include at least one of the following: a check request for displaying a layer, an uncheck request for not displaying a layer, and the like, and can not be limited thereto. By analyzing the request content of the layer operation request, the request layer can include at least one of the following: a request display layer for which a check request is requested, a request not to display a layer for which an uncheck request is requested, and the like, and can not be limited thereto.

[0047] In operation S202, a target rendering layer is calculated according to the displayed layer and the request layer.

[0048] According to an embodiment of the present disclosure, the target rendering layer can represent a layer that needs to be finally displayed in the current view. In the case where the request layer is a request not to display a layer, the target rendering layer can represent a layer remaining after the request not to display a layer is deleted from the displayed layer. In the case where the request layer is a request to display a layer, the target rendering layer can represent an updated layer after the request to display a layer is added to the displayed layer. In the case where the request layer includes a request to display a layer and a request not to display a layer, the target rendering layer can be determined based on a combination of the above two manners.

[0049] It should be noted that in the process of determining the target rendering layer, other limiting conditions related to limiting layer display can also be considered. For example, in the process of determining the above-mentioned target rendering layer, if there are some invalid layers, the invalid layers can be filtered out.

[0050] In operation S203, the target rendering layer is sent to the current client for rendering through the first communication connection.

[0051] In operation S204, the collaborative service is invoked to send the target rendering layer to other clients that have subscribed to the current view for rendering through a second communication connection, so that the rendering effects of the other clients and the current client for the current view are consistent, wherein the second communication connection is used for communication between the other clients and the server.

[0052] Taking the calendar layer as an example, Figure 3 A schematic diagram of a calendar multi-layer multi-end core design according to an embodiment of the present disclosure is schematically shown.

[0053] As Figure 3 shown, the calendar client 310 can be taken as the above-mentioned current client, the calendar view 311 therein can be taken as the above-mentioned current view, and the calendar list 312 can be taken as the layer list of the above-mentioned existing layers. The user operates the calendar client 310 to open the calendar view 311, and the calendar list 312 configured in the calendar view 311 can be displayed. At the same time, the calendar client 310 can establish a WebSocket long connection with the calendar server 320, i.e., the above-mentioned first communication connection.

[0054] After the user selects and checks / unchecks the calendar layer in the calendar list 312, the calendar multi-layer processing 321 of the calendar server 320 can be invoked to perform the above-mentioned operation S202 to calculate the target rendering layer.

[0055] In a specific embodiment, the calculation principle of the calendar multi-layer processing 321 can include but is not limited to the following specific calculation method: the calendar layer display Id table can provide the selected calendar Id list Y as the displayed layers. Based on the layer operation request of the calendar client 310, at least one of the newly checked layer, the unchecked layer, and the invalid layer can be calculated.

[0056] For the newly checked layer, in the case where the maximum number of displayable layers in the current view is limited, the number of checkable layers X can be calculated as the number of remaining displayable layers first, and then the corresponding newly checked layer information list A can be queried based on the newly checked layer. In the case where the maximum number of displayable layers in the current view is not limited, the corresponding newly checked layer information list A can be directly queried based on the newly checked layer, which is not limited here.

[0057] For the unchecked layer, the calculation method can be: the intersection B of the request cancellation layer list and the valid Y. B is the final determined unchecked layer information list.

[0058] For the invalid layer, the calculation manner can be: checking C1 of the request invalid layer, checking C2 of the Y invalid layer, and C=C1+C2. Wherein, C1 can represent the request invalid layer, C2 can represent the already displayed invalid layer, and the combination C can represent the determined invalid layer information list.

[0059] Finally, combining Result=A+B+C, the Result result is returned to the calendar client 310 for calendar layer update rendering 313 to complete the above operation S203. Wherein, Result can represent the finally determined target rendering layer.

[0060] At the same time, the collaborative service can also be called for collaborative processing 322 to execute the above operation S204, including: sending Result to the calendar cloud MQ (Message Queue). The calendar server 320 can pre-subscribe to the MQ, so as to be able to receive the Result information sent by the subscribed MQ, and push the Result to the online client through the WebSocket (a kind of network protocol) long connection. Wherein, the online client can represent the above other client, and the online client can realize calendar layer update rendering after receiving the calendar layer update Result information, which is the same as the processing flow in the calendar client 310.

[0061] Corresponding to the above collaborative service, Figure 4 The flowchart of the calendar layer multi-end collaborative design according to the embodiment of the present disclosure is schematically shown.

[0062] As Figure 4 shown, the method includes first performing operation S401 between the user and the calendar client 410. Then, operations S411-S418 are performed between the calendar client 410 and the calendar server 420. After that, operations S431-S434 are performed between the calendar server 420 and the calendar cloud MQ service 430. Finally, operations S421-S422 are performed between the calendar server 420 and the calendar client 410.

[0063] In operation S401, the calendar view is accessed.

[0064] In operation S411, the long connection is subscribed.

[0065] In operation S412, the WebSocket connection is returned.

[0066] Wherein, operations S411-S412 can be used to establish the communication connection between the calendar client 410 and the calendar server 420. In the case that the calendar client 410 includes the above current client and other client, the communication connection can include the above first communication connection and second communication connection.

[0067] In operation S413, a calendar list is queried.

[0068] In operation S414, calendar list information and a corresponding selected calendar layer display Id table are returned.

[0069] In operation S415, multiple calendar layers are checked and multiple calendar layers are unchecked.

[0070] In operation S416, a calendar multi-layer display processing interface is called.

[0071] The calendar multi-layer display processing interface can be used to send a layer operation request of the calendar client 410 to the calendar server 420.

[0072] In operation S417, the calendar server 420 generates a result result=added calendar layer display list, canceled calendar layer Id list, and invalid calendar layer Id list through calculation.

[0073] In operation S418, the result result is returned.

[0074] The operations S413-S418 can be used to support the implementation of the above operations S201-S203.

[0075] In operation S431, a calendar collaboration service is called.

[0076] In operation S432, the result is sent to the calendar cloud MQ.

[0077] In operation S433, the collaboration cloud MQ is subscribed.

[0078] In operation S434, the calendar WebSocket long connection service is called, and the result is pushed to other online clients.

[0079] The calendar server 420 receives the result information based on operation S433, and performs operation S434.

[0080] In operation S421, other clients are notified to accept the result of the calendar multi-layer display processing.

[0081] In operation S422, the calendar client 410 performs calendar layer update rendering according to the returned data.

[0082] The operations S421-S422 and the operations S431-S434 can be used to support the implementation of the above operation S204.

[0083] Through the above embodiments of the disclosure, since the layer operation request of the current view on the current client is uniformly processed on the server, and the collaborative update of the current view subscribed on other clients is realized by calling the collaboration service, the problem of inconsistent display of the same view layer in different clients can be at least partially solved, the client can be ensured to update the layer change in time, and the user experience can be improved.

[0084] Based on the above method, in the case that there are multiple current clients, by uniformly processing the layer operation request on different clients on the server, the combined processing of the operation request on different ends can be realized, and a unified result can be output for collaborative update on different clients, the overlay update between different client operations is reduced, and the user experience is improved.

[0085] The inventors have also found that when a certain calendar is invalid, there is a problem of inconsistent display in different clients. For example, different terminals have opened the calendar view in turn, and can see a certain calendar X. At this time, the calendar X is invalid, and when one of the terminals reenters the calendar view, the calendar X cannot be seen in the calendar list, but the other terminal can still see the calendar X without reentering the calendar view. This will confuse the user and affect the user experience. In addition, the system does not limit the maximum upper limit of the displayable calendar, and when a user has selected a large number of calendars, the calendar layer information query corresponding to the calendar will be very slow, affecting the experience.

[0086] To further describe the working principle of the above layer rendering method in combination with the calendar multi-layer multi-end collaboration mechanism, first of all, based on the above method Figure 5 The use case structure of the calendar multi-layer multi-end collaboration mechanism according to the disclosed embodiments is schematically shown.

[0087] As shown in the above method Figure 5 The use case structure of the calendar multi-layer multi-end collaboration 500 describes the application scenario 510 of the above layer rendering method, the applicable client 520, the executable operation 530, the display calculation 540, the display cancellation calculation 550, the invalid layer calculation 560, and the collaboration control 570. The application scenario 510 can include a meeting calendar 511, a to-do task calendar 512, other schedule calendars 513, and the like, and can not be limited thereto. The client 520 can include a PC end 521, a mobile phone end 522, a tablet end 523, and the like. The operation 530 can include checking a layer 531 and unchecking a layer 532. The display calculation 540 can include a maximum displayable number 541 and a new display 542. The display cancellation calculation 550 can include an effective cancellation 551. The invalid layer calculation 560 can include an invalid selected layer in the database 561 and a request to display or cancel the display of the layer 562. The collaboration control 570 can include control for multiple ends 571 and / or the same user 572, and the like.

[0088] Based on the above use case structure, Figure 6 A flow chart of a calendar multi-layer multi-end core computing design according to the disclosed embodiments is schematically shown.

[0089] As Figure 6 shown, the method includes first performing data preparation based on operation S601~operation S609 to obtain the exhibited layers and the request layers described in operation S201.

[0090] In operation S601, the user operates the calendar layers through the calendar client.

[0091] In operation S602, the multiple calendar layers are checked and the multiple calendar layers are unchecked.

[0092] In operation S603, the calendar multi-layer exhibition processing interface is called.

[0093] Wherein, after the calendar server receives the call request, operation S604 is performed first.

[0094] In operation S604, the retryable distributed lock is obtained.

[0095] Wherein, after the calendar server successfully acquires the lock, operation S605~operation S608 can be performed based on the calendar multi-layer service.

[0096] In operation S605, the calendar layer Id list exhibited by the user is queried.

[0097] In operation S606, the exhibited calendar layer Id list is queried from the calendar layer exhibition Id table.

[0098] Wherein, the core fields of the calendar layer exhibition Id table are: user id, tenant id, calendar id list field, creation time, modification time.

[0099] In operation S607, the query result is returned.

[0100] In operation S608, the calendar layer Id list dbCalendarIdList is returned.

[0101] In operation S609, the calendar Id list reqCalendarIdList is extracted from the user's request list reqList.

[0102] According to the embodiments of the present disclosure, the exhibited layers can be determined according to the dbCalendarIdList returned by operation S608, and the request layers can be determined according to the reqCalendarIdList extracted by operation S609.

[0103] According to an embodiment of the present disclosure, after obtaining the dbCalendarIdList and the reqCalendarIdList, corresponding to the operation S202 described above, the valid layers can be calculated first. Then, according to the valid layers, the displayed layers and the requested layers, the target rendering layers are calculated. Wherein, the calculation of the valid layers can include: performing set addition on the displayed layers and the requested layers to obtain the to-be-verified layers; reading the validity attribute of the to-be-verified layers from the layer information table, the validity attribute being valid or invalid; determining the valid layers from the to-be-verified layers according to the validity attribute.

[0104] Referring to Figure 6 , the process of calculating the valid layers described above can correspond to the operation S610~operation S611 in Figure 6 .

[0105] In operation S610, the reqCalendarIdList and the dbCalendarIdList are set added to verify the validity of the calendar layers from the calendar list.

[0106] Wherein, the calendar list can pre-store a calendar state field used to record whether the layer is valid. Specifically, the reqCalendarIdList and the dbCalendarIdList can be set added first to obtain the allCalendarIdList, which can be used to determine the current all to-be-verified layers. Then, the allCalendarIdList can be used to query the validity of the calendar from the calendar list, and the valid calendar Id list ynCalendarIdList is taken out. The query condition can be expressed as: the query where condition calendar Id in allCalendarIdList and calendar state field = valid.

[0107] It should be noted that the calendar list and the calendar layer display Id table in the calendar layer embodiment can both be the layer information table described above, which is not limited here.

[0108] In operation S611, the valid calendar Id list ynCalendarIdList is returned.

[0109] According to an embodiment of the present disclosure, the valid layers described above can be determined according to the ynCalendarIdList returned by the operation S611.

[0110] According to an embodiment of the present disclosure, after determining the valid layer, the above-mentioned calculating the target rendering layer according to the valid layer, the displayed layer and the request layer can comprise: firstly, calculating the invalid layer. Then, determining the target rendering layer according to the invalid layer, the displayed layer and the request layer. Wherein, the calculating the invalid layer can comprise: subtracting the valid layer from the request layer set to obtain the request invalid layer; subtracting the valid layer from the displayed layer set to obtain the displayed invalid layer; performing set addition on the request invalid layer and the displayed invalid layer to obtain the total invalid layer.

[0111] Continuing to refer to Figure 6 , the above-mentioned process of calculating the total invalid layer can correspond to Figure 6 operation S612~operation S613.

[0112] In operation S612, the invalid layer is calculated.

[0113] Specifically, the operation S612 can comprise:

[0114] 1. reqCalendarIdList set minus ynCalendarIdList to obtain the request invalid calendar id layer reqInvalidCalendarIdList. Wherein, the request invalid layer can be determined according to reqInvalidCalendarIdList.

[0115] 2. dbCalendarIdList set minus ynCalendarIdList to obtain the db invalid calendar id layer dbInvalidCalendarIdList. Wherein, the displayed invalid layer can be determined according to dbInvalidCalendarIdList.

[0116] 3. Calculate the total invalid layer id list invalidCalendarIdList=reqInvalidCalendarIdList+dbInvalidCalendarIdList. Wherein, the total invalid layer can be determined according to invalidCalendarIdList.

[0117] In operation S613, the invalid layer id list is returned.

[0118] Wherein, the invalid layer id list can comprise at least one of the following: reqInvalidCalendarIdList, dbInvalidCalendarIdList, invalidCalendarIdList.

[0119] According to an embodiment of the present disclosure, after determining the invalid layer, determining the target rendering layer according to the invalid layer, the displayed layer and the request layer can include: first, calculating the effective layer. The effective layer can include but is not limited to: the request effective display layer, the displayed remaining effective layer. Then, determining the target rendering layer according to the effective layer. Wherein, calculating the effective layer can include: using the request display layer set minus the request invalid layer to obtain the request effective display layer; using the displayed layer set minus the displayed invalid layer to obtain the displayed effective layer; taking the intersection of the request non-display layer and the displayed effective layer to obtain the request cancel display effective layer; using the displayed effective layer set minus the request cancel display effective layer to obtain the displayed remaining effective layer.

[0120] Continuing to refer to Figure 6 , the above-mentioned process of calculating the effective layer can correspond to the operation S614~operation S618 in Figure 6 .

[0121] In operation S614, the calendar Id list reqDisplayCalendarIdList that needs to be displayed and the calendar Id list reqNotDisplayCalendarIdList that does not need to be displayed are extracted from reqList.

[0122] Wherein, the request display layer can be determined according to reqDisplayCalendarIdList. The request non-display layer can be determined according to reqNotDisplayCalendarIdList.

[0123] In operation S615, the effective layer is calculated.

[0124] Specifically, the operation S615 can include:

[0125] 1. reqDisplayCalendarIdList set minus reqInvalidCalendarIdList to obtain reqYnDisplayCalendarIdList. Wherein, the request effective display layer can be determined according to reqYnDisplayCalendarIdList.

[0126] 2. dbCalendarIdList set minus dbInvalidCalendarIdList to obtain dbYnCalendarIdList. Wherein, the displayed effective layer can be determined according to dbYnCalendarIdList.

[0127] In operation S616, reqYnDisplayCalendarIdList and dbYnCalendarIdList are returned.

[0128] In operation S617, the remaining valid layers in the cancel layer and the library are calculated.

[0129] Specifically, operation S617 can include: calculating the intersection of reqNotDisplayCalendarIdList and dbYnCalendarIdList as the valid list of request cancellation display: reqCancelDisplayYnCalendarIdList. Calculating the remaining valid calendar id list in the db library as the set of dbYnCalendarIdList minus reqCancelDisplayYnCalendarIdList as dbSurplusYnCalendarIdList.

[0130] In operation S618, reqCancelDisplayYnCalendarIdList and dbSurplusYnCalendarIdList are returned.

[0131] Among them, the request cancellation display valid layer can be determined according to reqCancelDisplayYnCalendarIdList. The remaining valid layer that has been displayed can be determined according to dbSurplusYnCalendarIdList.

[0132] Through the above embodiments of the present disclosure, by calculating the invalid layer, the problem that if there is an invalid calendar when different clients operate the calendar layer, it can be identified and collaboratively updated on different clients, reducing user confusion and improving experience.

[0133] According to the embodiments of the present disclosure, after determining the valid layer, the above determining the target rendering layer according to the valid layer can include: obtaining the remaining number of layers that can be displayed by subtracting the number of layers that have been displayed from the maximum number of layers that can be displayed configured for the current view; obtaining a new display layer list, and the initial value of the new display number of the new display layer list is 0; in response to determining that the new display number does not reach the remaining number of layers that can be displayed, reading a target request valid display layer from the request valid display layer; in response to determining that the target request valid display layer does not exist in the remaining valid layer that has been displayed, adding the target request valid display layer to the new display layer list, and adding 1 to the new display number; in response to determining that the new display number reaches the remaining number of layers that can be displayed, assembling the new display layer in the new display layer list and the remaining valid layer that has been displayed to obtain the target rendering layer.

[0134] Continuing to refer to Figure 6 , the above process of obtaining the target rendering layer can correspond to Figure 6 operation S619~operation S631 in

[0135] In operation S619, the number of layers that can still be displayed is calculated.

[0136] In operation S620, the maximum number of layers that can be displayed is subtracted by the length of dbSurplusYnCalendarIdList.

[0137] In operation S621, the number of layers that can still be displayed availableNum is returned.

[0138] The maximum number of layers that can be displayed can come from system configuration. The number of layers that have been displayed remaining effective layers can be determined according to the length of dbSurplusYnCalendarIdList. availableNum can represent the above remaining number of layers that can be displayed.

[0139] After obtaining the remaining number of layers that can be displayed based on operation S619~operation S621, the effective list requested to be displayed can be traversed, and operation S622~operation S625 can be executed. After the traversal ends, operation S626~operation S631 can be continued.

[0140] In operation S622, availableNum calendar Ids are obtained from reqYnDisplayCalendarIdList.

[0141] In operation S623, when it is determined that the calendar Id in the request is not contained in the db effective remaining calendar Id list, it is added to the new display layer list newDisplayIdList, and the number of new displays is increased by 1.

[0142] In operation S624, when it is determined that the number of new displays is equal to the number of layers that can be displayed availableNum, the loop is interrupted.

[0143] In operation S625, newDisplayIdList is returned.

[0144] In operation S626, after dbSurplusYnCalendarIdList adds newDisplayIdList, the user's calendar layer display Id table is updated based on the overlay.

[0145] In operation S627, the execution result is returned.

[0146] In operation S628, the corresponding calendar layer information is queried according to newDisplayIdList.

[0147] In operation S629, the calendar layer information newDisplayCalendarList is returned.

[0148] Among them, the new display layer can be determined according to newDisplayCalendarList.

[0149] In operation S630, the calendar server assembles the return result: the new calendar layer display list newDisplayCalendarList, the canceled calendar layer Id list reqCancelDisplayYnCalendarIdList and the invalid calendar layer Id list invalidCalendarIdList.

[0150] In operation S631, the assembled result is returned to the calendar client.

[0151] Through the above embodiments of the present disclosure, by configuring the maximum displayable layer number in the current view, the problem that the system has no limit on the maximum upper limit of displayable calendars can be effectively solved, the maximum upper limit setting of the system can be increased, the query speed can be improved, and the user experience can be enhanced.

[0152] According to the embodiments of the present disclosure, the target rendering layer obtained based on the above method can include at least one of the following: a new display layer, a request to cancel display of a valid layer, and a total invalid layer. On this basis, in order to realize the final layer update rendering, the above layer rendering method can further include: displaying the new display layer in the current view; hiding the request to cancel display of the valid layer in the current view; and deleting the total invalid layer from the current view.

[0153] Continuing to refer to Figure 6 , the above process of realizing layer update rendering based on the target rendering layer can correspond to operations S632-S635 in Figure 7 .

[0154] In operation S632, the calendar server coordinates the service and pushes the assembled result.

[0155] In operation S633, other online clients are notified to update the calendar layer update.

[0156] In operation S634, the calendar server releases the lock.

[0157] In operation S635, the calendar client performs calendar layer update rendering according to the returned data.

[0158] Specifically, the operation S635 can include: highlighting and displaying the corresponding calendar layer data for the added calendar layer list, unhighlighting and hiding the displayed calendar layer data for the canceled calendar layer, and deleting the invalid calendar layer in the calendar list and deleting the corresponding layer data.

[0159] According to the above embodiments of the present disclosure, based on the above layer rendering method, the remote control effect of different clients can be realized, and the office efficiency and innovative intelligence are greatly improved. For example, a large screen is controlled by a mobile phone, and the to-do tasks are passed through the large screen every day. The host subscribes to the to-do calendar of each person participating in the morning meeting, and when entering the calendar view of his own on the large screen, the to-do tasks of each person are passed, and only the to-do calendar of the person is checked on the mobile phone calendar view. The to-do tasks of the person can be seen on the large screen. When passing the to-do tasks of the next person, only the to-do calendar of the next person is checked and the to-do calendar of the previous person is unchecked.

[0160] The layer update rendering realized based on the above method can effectively improve the operation efficiency, and has the advantages of easy maintenance, good performance, good experience and intelligence.

[0161] Figure 7 A block diagram of a layer rendering device according to an embodiment of the present disclosure is schematically shown.

[0162] As shown in Figure 8 The layer rendering device 700 includes a request analysis module 710, a target rendering layer calculation module 720, a rendering module 730, and a collaboration module 740.

[0163] The request analysis module 710 is configured to analyze the layer operation request and determine the request layer of the request operation in response to receiving the layer operation request for the existing layer in the current view based on the first communication connection, wherein the current view represents the view in the current client, the current view includes the displayed layer, and the first communication connection is used for communication between the server and the current client.

[0164] The target rendering layer calculation module 720 is configured to calculate the target rendering layer according to the displayed layer and the request layer.

[0165] The rendering module 730 is configured to send the target rendering layer to the current client for rendering through the first communication connection.

[0166] The collaboration module 740 is configured to call the collaboration service and send the target rendering layer to other clients that have subscribed to the current view for rendering through the second communication connection, so that the rendering effects of the other clients and the current client for the current view are consistent, wherein the second communication connection is used for communication between the other clients and the server.

[0167] According to an embodiment of the present disclosure, the target rendering layer calculation module comprises a to-be-verified layer obtaining submodule, an effectiveness reading submodule, an effective layer determining submodule, and a target rendering layer calculation submodule.

[0168] The to-be-verified layer obtaining submodule is configured to perform set addition on the displayed layer and the request layer to obtain a to-be-verified layer.

[0169] The effectiveness reading submodule is configured to read an effectiveness attribute of the to-be-verified layer from the layer information table, the effectiveness attribute being effective or ineffective.

[0170] The effective layer determining submodule is configured to determine an effective layer from the to-be-verified layer according to the effectiveness attribute.

[0171] The target rendering layer calculation submodule is configured to calculate a target rendering layer according to the effective layer, the displayed layer, and the request layer.

[0172] According to an embodiment of the present disclosure, the target rendering layer calculation submodule comprises a request invalid layer obtaining unit, a displayed invalid layer obtaining unit, a total invalid layer obtaining unit, and a target rendering layer determining unit.

[0173] The request invalid layer obtaining unit is configured to subtract the effective layer from the request layer set to obtain a request invalid layer.

[0174] The displayed invalid layer obtaining unit is configured to subtract the effective layer from the displayed layer set to obtain a displayed invalid layer.

[0175] The total invalid layer obtaining unit is configured to perform set addition on the request invalid layer and the displayed invalid layer to obtain a total invalid layer.

[0176] The target rendering layer determining unit is configured to determine a target rendering layer according to at least one of the request invalid layer, the displayed invalid layer, and the total invalid layer, and the displayed layer and the request layer.

[0177] According to an embodiment of the present disclosure, the layer operation request comprises at least one of a check request for displaying a layer and an uncheck request for not displaying a layer. The request layer comprises at least one of a request display layer for which a check is requested and a request non-display layer for which an uncheck is requested.

[0178] According to an embodiment of the present disclosure, the target rendering layer determining unit comprises a request effective display layer obtaining submodule, a displayed effective layer obtaining submodule, a request uncheck effective layer obtaining submodule, a displayed remaining effective layer obtaining submodule, and a target rendering layer determining submodule.

[0179] The request valid display layer obtaining sub-unit is configured to obtain the request valid display layer by subtracting the request invalid display layer from the request display layer set.

[0180] The displayed valid layer obtaining sub-unit is configured to obtain the displayed valid layer by subtracting the displayed invalid layer from the displayed layer set.

[0181] The request non-display valid layer obtaining sub-unit is configured to obtain the request non-display valid layer by taking the intersection of the request non-display layer and the displayed valid layer.

[0182] The displayed remaining valid layer obtaining sub-unit is configured to obtain the displayed remaining valid layer by subtracting the request non-display valid layer from the displayed valid layer.

[0183] The target rendering layer determining sub-unit is configured to determine the target rendering layer according to the request valid display layer and the displayed remaining valid layer.

[0184] According to an embodiment of the present disclosure, the target rendering layer determining sub-unit comprises a remaining displayable layer number obtaining sub-unit, a newly displayed layer list obtaining sub-unit, a target request valid display layer reading sub-unit, an adding sub-unit, and an assembling sub-unit.

[0185] The remaining displayable layer number obtaining sub-unit is configured to obtain the remaining displayable layer number by subtracting the number of layers of the displayed remaining valid layer from the maximum displayable layer number configured for the current view.

[0186] The newly displayed layer list obtaining sub-unit is configured to obtain the newly displayed layer list, and the initial value of the newly displayed number of the newly displayed layer list is 0.

[0187] The target request valid display layer reading sub-unit is configured to read the target request valid display layer from the request valid display layer in response to determining that the newly displayed number does not reach the remaining displayable layer number.

[0188] The adding sub-unit is configured to add the target request valid display layer to the newly displayed layer list and increase the newly displayed number by 1 in response to determining that the target request valid display layer does not exist in the displayed remaining valid layer.

[0189] The assembling sub-unit is configured to assemble the newly displayed layer in the newly displayed layer list and the displayed remaining valid layer to obtain the target rendering layer in response to determining that the newly displayed number reaches the remaining displayable layer number.

[0190] According to an embodiment of the present disclosure, the target rendering layer comprises at least one of the newly displayed layer, the request non-display valid layer, and the total invalid layer. The layer rendering apparatus further comprises a display module, a hiding module, and a deleting module.

[0191] a display module, configured to display the newly-added display layer in the current view.

[0192] a hiding module, configured to hide the display valid layer from the current view according to the request.

[0193] a deleting module, configured to delete the total invalid layer from the current view.

[0194] Any one or more of the modules, sub-modules, units, sub-units according to the embodiments of the present disclosure, or at least part of the functions of any one or more of them, can be implemented in one module. Any one or more of the modules, sub-modules, units, sub-units according to the embodiments of the present disclosure can be split into multiple modules for implementation. Any one or more of the modules, sub-modules, units, sub-units according to the embodiments of the present disclosure can be implemented at least in part as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on chip, a system on substrate, a system on package, an application specific integrated circuit (ASIC), or any other reasonable way of hardware or firmware through integration or packaging of circuits, or in any one of software, hardware and firmware or in a proper combination of any of them. Alternatively, one or more of the modules, sub-modules, units, sub-units according to the embodiments of the present disclosure can be implemented at least in part as computer program modules, which can perform corresponding functions when running.

[0195] For example, any of the request analysis module 710, the target rendering layer calculation module 720, the rendering module 730, and the collaboration module 740 can be combined in one module / unit / sub-unit, or any of the modules / units / sub-units can be split into multiple modules / units / sub-units. Alternatively, at least part of the function of one or more of the modules / units / sub-units can be combined with at least part of the function of other modules / units / sub-units, and implemented in one module / unit / sub-unit. According to an embodiment of the present disclosure, at least one of the request analysis module 710, the target rendering layer calculation module 720, the rendering module 730, and the collaboration module 740 can be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on chip, a system on board, a system on package, an application specific integrated circuit (ASIC), or any other reasonable manner of integrating or packaging a circuit, etc. or implemented by hardware or firmware, or implemented in any one of software, hardware, and firmware or in a proper combination of any of them. Alternatively, at least one of the request analysis module 710, the target rendering layer calculation module 720, the rendering module 730, and the collaboration module 740 can be at least partially implemented as a computer program module which can perform corresponding functions when the computer program module is run.

[0196] It should be noted that the layer rendering device part in the embodiments of the present disclosure corresponds to the layer rendering method part in the embodiments of the present disclosure, and the description of the layer rendering device part is specifically referred to the layer rendering method part, which will not be repeated here.

[0197] Figure 8 A block diagram of an electronic device suitable for implementing the layer rendering method according to an embodiment of the present disclosure is schematically shown. Figure 8 The electronic device shown is merely an example and should not bring any limitation to the functions and use range of the embodiments of the present disclosure.

[0198] As shown in ​ The electronic device 800 according to an embodiment of the present disclosure includes a processor 801 which can perform various appropriate actions and processes according to programs stored in a read only memory (ROM) 802 or loaded from a storage part 808 to a random access memory (RAM) 803. The processor 801 can include, for example, a general purpose microprocessor (such as a CPU), an instruction set processor, and / or a related chipset, and / or a special purpose microprocessor (such as an application specific integrated circuit (ASIC)), etc. The processor 801 can also include an on-board memory for cache use. The processor 801 can include a single processing unit or multiple processing units for performing different actions of the method processes according to the embodiments of the present disclosure.

[0199] In the RAM 803, various programs and data required for the operation of the electronic device 800 are stored. The processor 801, the ROM 802, and the RAM 803 are connected to each other via the bus 804. The processor 801 performs various operations of the method flow according to the embodiments of the present disclosure by executing the programs in the ROM 802 and / or the RAM 803. It is to be noted that the programs can also be stored in one or more memories other than the ROM 802 and the RAM 803. The processor 801 can also perform various operations of the method flow according to the embodiments of the present disclosure by executing the programs stored in the one or more memories.

[0200] According to the embodiments of the present disclosure, the electronic device 800 can further include an input / output (I / O) interface 805, which is also connected to the bus 804. The electronic device 800 can further include one or more of the following components connected to the input / output (I / O) interface 805: an input part 806 including a keyboard, a mouse, and the like; an output part 807 including a cathode ray tube (CRT), a liquid crystal display (LCD), and the like, and a speaker, and the like; a storage part 808 including a hard disk, and the like; and a communication part 809 including a network interface card such as a LAN card, a modem, and the like. The communication part 809 performs communication processing via a network such as the Internet. A drive 810 is also connected to the input / output (I / O) interface 805 as necessary. A removable medium 811 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, and the like is mounted on the drive 810 as necessary, so that a computer program read therefrom is installed in the storage part 808 as necessary.

[0201] According to the embodiments of the present disclosure, the method flow according to the embodiments of the present disclosure can be implemented as a computer software program. For example, the embodiments of the present disclosure include a computer program product including a computer program carried on a computer-readable storage medium, the computer program containing program codes for executing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network by the communication part 809, and / or installed from the removable medium 811. When the computer program is executed by the processor 801, the above-described functions defined in the system of the embodiments of the present disclosure are performed. According to the embodiments of the present disclosure, the system, the device, the apparatus, the module, the unit, and the like described above can be implemented by computer program modules.

[0202] The present disclosure also provides a computer readable storage medium, which can be included in the device / apparatus / system described in the above embodiments, or can exist independently without being assembled into the device / apparatus / system. The above computer readable storage medium carries one or more programs, which, when executed, implement the layer rendering method according to the embodiments of the present disclosure.

[0203] According to an embodiment of the present disclosure, the computer readable storage medium can be a non-volatile computer readable storage medium. For example, it can include, but is not limited to: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, the computer readable storage medium can be any tangible medium that contains or stores a program, which can be used by or in connection with an instruction execution system, apparatus, or device.

[0204] For example, according to an embodiment of the present disclosure, the computer readable storage medium can include the ROM 802 and / or the RAM 803 described above, and / or one or more memories other than the ROM 802 and the RAM 803.

[0205] The embodiments of the present disclosure also include a computer program product, which includes a computer program containing program codes for executing the method provided by the embodiments of the present disclosure, and when the computer program product is run on an electronic device, the program codes are used to make the electronic device implement the layer rendering method provided by the embodiments of the present disclosure.

[0206] When the computer program is executed by the processor 801, the above functions defined in the system / apparatus of the embodiments of the present disclosure are performed. According to an embodiment of the present disclosure, the system, apparatus, module, unit, etc. described above can be implemented by computer program modules.

[0207] In one embodiment, the computer program can rely on a tangible storage medium such as an optical storage device, a magnetic storage device, etc. In another embodiment, the computer program can also be transmitted, distributed, and downloaded in the form of a signal on a network medium, and be downloaded and installed through the communication part 809, and / or installed from the detachable medium 811. The program codes contained in the computer program can be transmitted by any appropriate network medium, including but not limited to wireless, wired, etc., or any suitable combination of the foregoing.

[0208] According to embodiments of the present disclosure, program code of the computer program for performing the methods provided by the embodiments of the present disclosure can be written in any combination of one or more programming languages, including a high-level procedural and / or object-oriented programming language, and / or an assembly / machine language. Programming languages include, but are not limited to, Java, C++, python, "C" language, or the like. The program code can execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on a remote computing device, or entirely on the remote computing device or server. In the latter scenario, the remote computing device can be connected to the user's computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computing device, such as through the Internet using an Internet Service Provider.

[0209] The computer program product of the present disclosure can be a computer program product, which is a machine-readable medium (media) having explicit instructions, program, code sequences, or

[0210] Embodiments of the present disclosure have been described above. However, these embodiments are merely intended to illustrate the present disclosure, and are not intended to limit the scope of the present disclosure. Although the respective embodiments are described above separately, this does not mean that the measures in the respective embodiments cannot be used advantageously in combination. Various alternatives and modifications to disclosed embodiments can be apparent to those skilled in the art in view of the above teachings without departing from the scope of the disclosure. It is therefore intended that the present disclosure be construed as including all such alternatives and modifications.

Claims

1. A layer rendering method, comprising: In response to receiving a layer operation request for an existing layer in the current view based on a first communication connection, the layer operation request is analyzed to determine the requested layer for the operation, wherein the current view represents the view in the current client, the current view includes the displayed layers, and the first communication connection is used for communication between the server and the current client; Calculate the target rendering layer based on the displayed layer and the requested layer; The target rendering layer is sent to the current client for rendering via the first communication connection; The collaborative service is invoked, and the target rendering layer is sent to other clients that have subscribed to the current view for rendering via a second communication connection, so that the rendering effect of the current view on the other clients and the current client is consistent. The second communication connection is used for communication between the other clients and the server.

2. The method according to claim 1, wherein, The step of calculating the target rendering layer based on the displayed layer and the requested layer includes: The displayed layer and the requested layer are summed to obtain the layer to be verified; Read the validity attribute of the layer to be verified from the layer information table, wherein the validity attribute is valid or invalid; Based on the validity attribute, a valid layer is determined from the layers to be verified; The target rendering layer is calculated based on the valid layer, the displayed layer, and the requested layer.

3. The method according to claim 2, wherein, The step of calculating the target rendering layer based on the valid layer, the displayed layer, and the requested layer includes: Subtract the valid layers from the requested layer set to obtain the invalid request layers; Subtract the valid layers from the set of displayed layers to obtain the displayed invalid layers; The requested failure layers and the displayed failure layers are summed to obtain the total failure layers; The target rendering layer is determined based on at least one of the requested invalid layer, the displayed invalid layer, and the total invalid layer, as well as the displayed layer and the requested layer.

4. The method according to claim 3, wherein, The layer operation request includes at least one of the following: a request to display a layer by checking the box, or a request to not display a layer by unchecking the box; the requested layer includes at least one of the following: a request to display a layer by checking the box, or a request to not display a layer by unchecking the box. Determining the target rendering layer based on at least one of the requested invalid layer, the displayed invalid layer, and the total invalid layers, as well as the displayed layer and the requested layer, includes: The valid request display layers are obtained by subtracting the invalid request layers from the requested display layer set. Subtracting the invalid displayed layers from the set of displayed layers yields the set of valid displayed layers; The intersection of the request not to display the layer and the already displayed valid layers is the result of the request to cancel displaying the valid layers. The remaining valid layers that have been displayed are obtained by subtracting the requested layers that were canceled from the set of displayed valid layers. The target rendering layer is determined based on the requested valid display layers and the remaining valid display layers.

5. The method according to claim 4, wherein, The step of determining the target rendering layer based on the requested valid display layer and the remaining valid display layers includes: The remaining number of displayable layers is obtained by subtracting the number of remaining valid layers that have already been displayed from the maximum number of displayable layers configured for the current view; Get the list of newly added display layers, where the initial value of the number of newly added displays in the list is 0; In response to determining that the number of newly added displays has not reached the number of remaining displayable layers, the target requested valid display layer is read from the requested valid display layers; In response to determining that the target request valid display layer does not exist in the remaining valid display layers, the target request valid display layer is added to the list of newly added display layers, and the number of newly added displays is incremented by 1; In response to determining that the number of newly added displays has reached the number of remaining displayable layers, the newly added display layers in the list of newly added display layers and the remaining valid display layers are assembled to obtain the target rendering layer.

6. The method according to any one of claims 1-5, wherein, The target rendering layer includes at least one of the following: a newly added display layer, a request to cancel the display of valid layers, and a total of invalid layers; the method further includes: The newly added display layer will be displayed in the current view; The request will hide the valid layers in the current view; Remove the total failure layer from the current view.

7. A layer rendering apparatus, comprising: The request analysis module is used to respond to a layer operation request received via a first communication connection for an existing layer in the current view, analyze the layer operation request, and determine the requested layer for the operation. The current view represents the view in the current client, and the current view includes the displayed layers. The first communication connection is used for communication between the server and the current client. The target rendering layer calculation module is used to calculate the target rendering layer based on the displayed layer and the requested layer; The rendering module is used to send the target rendering layer to the current client for rendering via the first communication connection; The collaboration module is used to invoke the collaboration service and send the target rendering layer to other clients that have subscribed to the current view for rendering through a second communication connection, so that the rendering effect of the current view on the other clients and the current client is consistent. The second communication connection is used for communication between the other clients and the server.

8. An electronic device, comprising: One or more processors; Memory, used to store one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors implement the method of any one of claims 1-6.

9. A computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, cause the processor to perform the method of any one of claims 1-6.

10. A computer program product comprising a computer program that, when executed by a processor, implements the method according to any one of claims 1-6.