Online PPT content synchronization method, electronic equipment, medium and product

By using the Canvas element to draw PPT content in the online PPT system, and combining the minimized target instructions to the cache file for rendering, the high bandwidth consumption and inefficiency problems caused by traditional DOM rendering are solved, and more efficient content synchronization is achieved.

CN120353420AActive Publication Date: 2025-07-22ZHEJIANG PLANER TECH CO LTD

Patent Information

Application Number
CN202510869028.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-26
Publication Date
2025-07-22
Estimated Expiration
2045-06-26

AI Technical Summary

Technical Problem

When synchronizing content, traditional web-based online PPT editing system relies on the native DOM rendering architecture, resulting in redundant element state, large amount of synchronization data, high network bandwidth consumption, low synchronization efficiency, and frequent DOM operations lead to stuttering of PPT page.

Method used

The Canvas element is used to draw PPT content, and by drawing elements in the Canvas canvas layer, and combining the minimized target instructions into the Canvas canvas layer cache file, combining the PPT content layer cache file for synthesis and rendering, reducing the amount of data transmitted on the network and improving synchronization efficiency.

Benefits of technology

By reducing network bandwidth consumption and reducing the number of browser re-arrangement and repainting, the efficiency of online PPT content synchronization is improved, the amount of data transmission is reduced, and the synchronization speed and user experience are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120353420A_ABST
    Figure CN120353420A_ABST
Patent Text Reader

Abstract

The invention provides an online PPT content synchronization method, electronic equipment, a readable storage medium and a computer program product. The method comprises the following steps: in response to content synchronous push of a target PPT page, obtaining to-be-synchronized data in the content synchronous push; querying instruction data used for drawing elements in a Canvas layer in a target PPT file corresponding to the target PPT page in the local client; acquiring a Canvas layer cache file and a PPT content layer cache file corresponding to a local target PPT file of the client; the minimum target instruction is merged into a Canvas layer cache file, and a synchronized Canvas layer cache file is obtained; and performing synthesis rendering processing on the synchronized Canvas layer cache file and the PPT content layer cache file to obtain a synchronized target PPT page.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and particularly to a method for synchronizing the content of an online PPT, an electronic device, a storage medium, and a program product. Background Art

[0002] In contemporary distributed collaborative office scenarios, online PPT editing systems (such as web-based PPTs) have evolved into core productivity tools to support organizational digital collaboration. Their cross-platform collaboration features and real-time synchronization mechanisms are particularly suitable for the typical business requirements of multi-terminal device linkage and geographically distributed team collaboration. However, traditional web-based solutions generally rely on the native DOM rendering architecture. When synchronizing the content of a PPT, the redundant element states of the native DOM rendering architecture result in a large amount of synchronized data, consuming a large amount of network bandwidth and leading to poor content synchronization efficiency of the PPT. Summary of the Invention

[0003] The present disclosure provides a method for synchronizing the content of an online PPT, an electronic device, a storage medium, and a program product.

[0004] According to one aspect of the present disclosure, there is provided a method for synchronizing the content of an online PPT, including: in response to a content synchronization push of a target PPT page, obtaining the data to be synchronized in the content synchronization push; when the data to be synchronized includes a non-splittable minimized target instruction of the Canvas canvas layer of the target PPT page, querying the instruction data for drawing elements in the Canvas canvas layer in the target PPT file corresponding to the target PPT page on the client side; when the instruction data is not included in the target PPT file on the client side, obtaining the Canvas canvas layer cache file and the PPT content layer cache file corresponding to the target PPT file on the client side; merging the minimized target instruction into the Canvas canvas layer cache file to obtain the synchronized Canvas canvas layer cache file; and performing composite rendering processing on the synchronized Canvas canvas layer cache file and the PPT content layer cache file to obtain the synchronized target PPT page.

[0005] According to the content synchronization method of the online PPT according to at least one embodiment of the present disclosure, merging the minimized target instruction into the Canvas canvas layer cache file to obtain the synchronized Canvas canvas layer cache file includes: verifying the version matching degree between the minimized target instruction and the Canvas canvas layer cache file; when the version matching degree indicates that the versions between the minimized target instruction and the Canvas canvas layer cache file do not match, determining one or more intermediate versions separated between the minimized target instruction and the Canvas canvas layer cache file; sending an instruction acquisition request for an intermediate version synchronization instruction to the server, where the intermediate version synchronization instruction is used to synchronize the version of the Canvas canvas layer cache file to the intermediate version with the largest version number; merging the intermediate version synchronization instruction returned by the server and the minimized target instruction into a content synchronization instruction stream; and merging the content synchronization instruction stream into the Canvas canvas layer cache file to obtain the synchronized Canvas canvas layer cache file.

[0006] According to the content synchronization method of the online PPT according to at least one embodiment of the present disclosure, merging the intermediate version synchronization instruction returned by the server and the minimized target instruction into a content synchronization instruction stream includes: determining an instruction conflicting with the minimized target instruction in the intermediate version synchronization instruction returned by the server as a conflicting instruction; and integrating the non-conflicting instructions in the intermediate version synchronization instruction and the minimized target instruction based on the version number order to obtain the content synchronization instruction stream.

[0007] According to the content synchronization method of the online PPT according to at least one embodiment of the present disclosure, before obtaining the data to be synchronized in the content synchronization push in response to the content synchronization push of the target PPT page, it further includes: merging the Canvas canvas layer and the PPT content layer of the target PPT page into the same visual layer.

[0008] The content synchronization method of the online PPT according to at least one embodiment of the present disclosure combines the Canvas canvas layer and the PPT content layer of the target PPT page into the same visual layer, including: displaying the Canvas canvas layer and the PPT content layer on the online page of the target PPT file, and using the online page as the display of the target PPT page; in response to the content merging operation on the target PPT page, caching the instruction data of the Canvas canvas layer and the PPT structured data of the PPT content layer to obtain the Canvas canvas layer cache file and the PPT content layer cache file respectively; when the Canvas canvas layer cache file and the PPT content layer cache file are generated, performing a combined rendering process on the Canvas canvas layer and the PPT content layer to obtain a composite page layer; and displaying the composite page layer on the online page of the target PPT file, and using the online page as the display of the target PPT page.

[0009] The content synchronization method of the online PPT according to at least one embodiment of the present disclosure further includes: in response to the change operation of the content of the Canvas canvas layer of the target PPT page, uploading the content change operation instruction data corresponding to the content change operation to the server, and the server is configured to split the content change operation instruction data into the smallest non-splittable change operation instructions for synchronizing the content change operation.

[0010] The content synchronization method of the online PPT according to at least one embodiment of the present disclosure further includes: when the data to be synchronized further includes the smallest non-splittable PPT content change field of the PPT content layer, merging the smallest PPT content change field into the PPT content layer cache file on the client side to obtain the synchronized PPT content layer cache file.

[0011] According to another aspect of the present disclosure, there is provided an electronic device, including: a memory storing execution instructions; and a processor that executes the execution instructions stored in the memory, such that the processor executes the content synchronization method of the online PPT according to any embodiment of the present disclosure.

[0012] According to still another aspect of the present disclosure, there is provided a readable storage medium storing execution instructions, and when the execution instructions are executed by a processor, they are used to implement the content synchronization method of the online PPT according to any embodiment of the present disclosure.

[0013] According to yet another aspect of the present disclosure, there is provided a computer program product including a computer program, and when the computer program is executed by a processor, it implements the content synchronization method of the online PPT according to any embodiment of the present disclosure. Description of the Drawings

[0014] The accompanying drawings illustrate exemplary embodiments of the present disclosure and, together with the description thereof, are used to explain the principles of the present disclosure. These accompanying drawings are included to provide a further understanding of the present disclosure and are included in this specification and form a part of this specification.

[0015] Figure 1 It is a schematic flowchart of the content synchronization method for an online PPT according to an embodiment of the present disclosure.

[0016] Figure 2 It is a schematic diagram of an application scenario of the content synchronization method according to an embodiment of the present disclosure.

[0017] Figure 3 It is a partial schematic flowchart of the content synchronization method for an online PPT according to an embodiment of the present disclosure.

[0018] Figure 4 It is a partial schematic flowchart of the content synchronization method for an online PPT according to an embodiment of the present disclosure.

[0019] Figure 5 It is a schematic flowchart of the content synchronization method for an online PPT according to an embodiment of the present disclosure.

[0020] Figure 6 It is a partial schematic flowchart of the content synchronization method for an online PPT according to an embodiment of the present disclosure.

[0021] Figure 7 It is a schematic flowchart of the content synchronization method for an online PPT according to an embodiment of the present disclosure.

[0022] Figure 8 It is a schematic flowchart of the content synchronization method for an online PPT according to an embodiment of the present disclosure.

[0023] Figure 9 It is a schematic block diagram of the structure of a content synchronization device for an online PPT according to an embodiment of the present disclosure.

[0024] Figure 10 It is a schematic block diagram of the structure of an electronic device according to an embodiment of the present disclosure. Detailed Embodiments

[0025] The present disclosure will be further described in detail below with reference to the accompanying drawings and examples. It can be understood that the specific examples described herein are only used to explain the relevant content and do not limit the present disclosure. Additionally, it should be noted that, for the sake of convenience of description, only the parts related to the present disclosure are shown in the accompanying drawings.

[0026] It should be noted that, without conflict, the embodiments in the present disclosure and the features in the embodiments may be combined with each other. The technical solutions of the present disclosure will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.

[0027] Currently, in the scenario of collaborative editing of online PPT (PowerPoint), contents such as graphics and animations in the PPT page often rely on the native DOM (Document Object Model) rendering of the web page. However, each graphic (such as a rectangle, text) rendered by the native DOM is an independent node, and it is necessary to synchronize all attributes such as its position, style, and hierarchy. The redundancy of element states leads to a large amount of synchronized data, resulting in a large amount of data to be transmitted when synchronizing the content of the PPT, and thus the synchronization efficiency is low. Moreover, the operations of adding, deleting, and modifying DOM elements will trigger browser reflow and repaint. If high-frequency data synchronization is required in collaborative editing, it may cause the PPT page to freeze.

[0028] An embodiment of the present disclosure provides a method for synchronizing the content of an online PPT. This method can be executed by electronic devices such as mobile phones and computers. The method for synchronizing the content of an online PPT according to the embodiment of the present disclosure provides a solution for synchronizing the content of an online PPT based on drawing graphics, animations, etc. of the online PPT on a Canvas element (Canvas: drawing board) based on HTML5.

[0029] When drawing elements in the PPT through the Canvas element, all elements can be drawn on a single Canvas drawing board. When updating, only the Canvas drawing board needs to be redrawn. Each time the Canvas drawing board is drawn, it can directly overwrite the bitmap pixels, without a persistent object tree, and when modifying a graphic, only the affected area needs to be redrawn, and the browser does not need to maintain the element state. In this way, using the Canvas element to draw elements in the PPT can reduce the number of browser reflows and repaints, and improve the rendering performance.

[0030] On this basis, the method for synchronizing the content of an online PPT according to the embodiment of the present disclosure can synchronize the content of an online PPT page that draws some content based on the Canvas element. Compared with the traditional solution for synchronizing the content of an online PPT page, it can reduce the consumption of network bandwidth and improve the efficiency of synchronizing the content of the online PPT.

[0031] Figure 1 The overall flowchart of a method M10 for synchronizing the content of an online PPT according to an embodiment of the present disclosure is shown. As Figure 1 The method shown includes steps S13 to S18.

[0032] In step S13, in response to the content synchronization push of the target PPT page, obtain the data to be synchronized in the content synchronization push. The data to be synchronized is used to synchronize the content of the target PPT page of the client to the target version.

[0033] In a scenario where multiple clients collaborate to edit PPT content, multiple clients jointly edit the same PPT page. At this time, the PPT page being collaboratively edited is recorded as the target PPT page. When a certain client edits the target PPT page and changes the content of the page, other clients collaborating in the edit synchronize the content change operation of this client, so that the target PPT pages of each client present the same content.

[0034] In one implementation, the content synchronization of the target PPT page among multiple clients is achieved through a central server. When any client completes the content change operation of the target PPT page, submit the version of the changed target PPT page to the central server. The central server sends a content synchronization push to other clients, so that other clients synchronize their respective target PPT pages to the target PPT page of the central server version. When the central server sends a content synchronization push of the target PPT page to other clients, the version of the target PPT page on the central server is the target version in step S13.

[0035] The data to be synchronized pushed by the central server to the client is not the complete data of the target PPT page of the target version, but a part of the data that has changed in the target PPT page of the target version relative to the PPT page of the client being pushed. For example, when the target PPT pages of each client are all version V1.01, client A changes the content of the target PPT page, changes the color of a certain graphic element a to red, and updates the content of the target PPT page to version V1.02. Then, the data to be synchronized pushed by the central server to other clients except client A can be the data used to change the color of graphic element a to red. In this way, the amount of data transmitted during the content synchronization of the target PPT page can be reduced, the network bandwidth consumption can be reduced, and the client being pushed can quickly respond to the synchronized content.

[0036] In step S14, when the data to be synchronized includes the non - splittable minimized target instruction of the Canvas canvas layer of the target PPT page, query the instruction data for drawing elements in the target PPT file corresponding to the target PPT page on the client local.

[0037] Figure 2It is a schematic diagram of an application scenario of a solution for drawing elements such as text, graphics, or animations in an online PPT page based on the Canvas element provided by an embodiment of the present disclosure. In the editing interface of the target PPT page, a Canvas canvas layer and a PPT content layer are displayed. The Canvas canvas layer can call the Canvas API (API: Application Programming Interface) in JavaScript (a programming language) to implement the drawing of elements and the path control of elements, so as to draw text or graphic elements at specific positions on the Canvas canvas layer, and control the movement of the Canvas canvas layer along a specific path, etc. Among them, the operation instructions for operations such as the drawing, attribute modification, and position modification of elements processed by JavaScript on the Canvas canvas layer are recorded as the instruction data of the Canvas canvas layer.

[0038] That is to say, if it is necessary to synchronize the content changed by a client in the Canvas canvas layer to another client, the central server only needs to synchronize the instruction stream of the change operation used to change the content to another client. The other client can then execute the instruction stream of the change operation on the local Canvas canvas layer. Perform the same content change operation on the other client to achieve content synchronization.

[0039] Furthermore, the instruction stream of the change operation includes one or more non - splittable minimized instructions. For example, the instruction stream of the change operation can include a position movement instruction and a color modification instruction; the position movement instruction and the color modification instruction therein are respectively non - splittable minimized instructions. When the central server pushes the data to be synchronized, the instruction stream of the change operation can be split into non - splittable minimized instructions for synchronizing the content change of the Canvas canvas layer of the target PPT. The non - splittable minimized instructions in the data to be synchronized are recorded as minimized target instructions. In this way, if when the central server synchronously pushes the target PPT page to another client, the other client has already executed the position movement instruction in the instruction stream of the above - mentioned change operation, then at this time, the central server does not need to push the complete instruction stream of the change operation, and only needs to push the color modification instruction in the instruction stream of the change operation as the minimized target instruction to achieve content change synchronization. In this way, the data to be synchronized transmitted by the central server can be minimized, reducing network bandwidth consumption, and enabling the client being pushed to quickly respond to the synchronized content.

[0040] The number of minimized target instructions in the data to be synchronized can be one or more. When the number of minimized target instructions is multiple, the multiple minimized target instructions can include instructions acting on the same element, such as instructions for editing the size, color, and position of a certain rectangle respectively; the multiple minimized target instructions can also include instructions acting on different elements, such as instructions for editing a certain rectangle and instructions for editing a certain circle.

[0041] Referring to Figure 2 , in one embodiment, the Canvas canvas layer and the PPT content layer are two different visual layers, and the display effect of the content of the Canvas canvas layer on the PPT content layer can be viewed through the "Preview" function of the editing interface of the target PPT page. In Figure 2 the illustrated embodiment, the user can use a red dashed box to select the area range of the elements to be added to the Canvas canvas layer in the PPT content layer, and draw and edit the elements in the Canvas canvas layer. When the drawing or editing in the Canvas canvas layer is completed, the elements (text, graphics or animations) in the Canvas canvas layer can be merged and rendered with the content in the PPT content layer to the same visual layer for output, so that the elements in the Canvas canvas layer and the content in the PPT content layer are displayed on the same visual layer. For example, the elements in the Canvas canvas layer can be exported to the PPT content layer for display, or the elements in the Canvas canvas layer and the content in the PPT content layer can be exported to another visual layer for display.

[0042] In this process, before the merge and rendering process, when there is element A in the Canvas canvas layer, the target PPT file of the target PPT page contains the PPT content data of the PPT content layer and the instruction data of the Canvas canvas layer acting on element A. At this time, the content of the Canvas canvas layer is editable content. After the merge and rendering process, the elements in the Canvas canvas layer are merged into a visual layer other than the Canvas canvas layer, resulting in the absence of element A in the Canvas canvas layer. The data of the new visual layer is structured data with the same data structure as the PPT content data of the PPT content layer. At this time, the target PPT file of the target PPT page only contains the PPT content data and does not contain the instruction data of the Canvas canvas layer acting on element A, making the content (such as element A) in the Canvas canvas layer before the merge become uneditable after the merge.

[0043] Based on this, in step S14, the instruction data in the target PPT file corresponding to the target PPT page on the client local is queried, aiming to determine whether the elements in the Canvas canvas layer have been merged and rendered to other visual layers. If the instruction data in the target PPT file on the client local can be queried, it indicates that the elements in the Canvas canvas layer on the client local have not been merged and rendered to other visual layers. At this time, the content of the Canvas canvas layer is editable, that is, the content in the Canvas canvas layer can be edited by executing the minimized target instruction to synchronize the content of the Canvas canvas layer. If the instruction data of the Canvas canvas layer in the target PPT file on the client local cannot be queried, it indicates that the content of the Canvas canvas layer on the client local has been converted into non-editable content and merged into a visual layer other than the Canvas canvas layer. Then, the change operation of content synchronization cannot be achieved by executing the minimized target instruction in the Canvas canvas layer and further processing is required.

[0044] For the data used to change the content of the PPT content layer in the content synchronization push (denoted as PPT content change data), since the data structures of the PPT content layer before and after the merged rendering are the same, the PPT content change data can act on the content in the PPT content layer before the merged rendering or the content in the visual layer after the merged rendering, without additional processing.

[0045] In step S15, when the target PPT file on the client local does not contain instruction data, the Canvas canvas layer cache file and the PPT content layer cache file corresponding to the target PPT file on the client local are obtained.

[0046] In one implementation, before the elements in the Canvas canvas layer and the content in the PPT content layer are merged and rendered to obtain the merged target PPT file, the data of the Canvas canvas layer and the PPT content layer need to be cached as independent files respectively to obtain the Canvas canvas layer cache file and the PPT content layer cache file corresponding to the target PPT file. Among them, the target PPT file can be obtained by performing composite rendering processing on the Canvas canvas layer cache file and the PPT content layer cache file corresponding to the target PPT file.

[0047] When the target PPT file on the client side does not contain instruction data, it indicates that the content of the Canvas canvas layer is not editable. That is to say, the minimized target instruction cannot directly act on the current target PPT file to synchronize the content of the Canvas canvas layer. Therefore, it is necessary to use the Canvas canvas layer cache file corresponding to the target PPT file as a medium to synchronize the minimized target instruction. The minimized target instruction is synchronized in the Canvas canvas layer cache file, so that the content of the Canvas canvas layer corresponding to the Canvas canvas layer cache file is synchronized to the target version. Then, the Canvas canvas layer cache file and the PPT content layer cache file of the target version are subjected to composite rendering processing to obtain the synchronized target PPT file. In this way, the target PPT page in the synchronized target PPT file is the target PPT page after the content of the Canvas canvas layer is synchronized.

[0048] Based on this, when the target PPT file on the client side does not contain instruction data, it is necessary to obtain the Canvas canvas layer cache file and the PPT content layer cache file corresponding to the target PPT file from the cache path on the client side for the content of the target PPT page, so that when the minimized target instruction cannot directly act on the target PPT file after the composite rendering process, the Canvas canvas layer cache file before the composite rendering process is used as a medium for synchronizing the content of the Canvas canvas layer. During this process, the client does not need to request the target PPT file containing instruction data from the central server again, which can reduce the amount of data transmitted during content synchronization.

[0049] In step S16, the minimized target instruction is merged into the Canvas canvas layer cache file to obtain the synchronized Canvas canvas layer cache file.

[0050] The Canvas canvas layer cache file includes the instruction data of the Canvas canvas layer, and the minimized target instruction is the instruction data acting on the specific elements of the Canvas canvas layer, and has the same data structure as the instruction data in the Canvas canvas layer cache file. In one embodiment, the element on which the minimized target instruction acts can be determined as the target element, and the instruction stream acting on the target element is queried in the Canvas canvas layer cache file, and the minimized target instruction is incorporated into the instruction stream of the target element, so that the minimized target instruction is merged into the Canvas canvas layer cache file. By executing the instruction stream in the synchronized Canvas canvas layer cache file obtained after the merging process in step S16, the client can draw the synchronized content of the Canvas canvas layer of the target PPT page on the Canvas canvas layer.

[0051] In step S18, the synchronized Canvas canvas layer cache file and the PPT content layer cache file are synthetically rendered to obtain the synchronized target PPT page.

[0052] In one embodiment, the synthetic rendering of the synchronized Canvas canvas layer cache file and the PPT content layer cache file includes loading the synchronized Canvas canvas layer based on the synchronized Canvas canvas layer cache file, loading the PPT content layer (if the PPT content layer also needs to be synchronized, it is the synchronized PPT content layer) based on the PPT content layer cache file, and performing a combined rendering process on the synchronized Canvas canvas layer and the PPT content layer to obtain the synchronized target PPT page. At this time, the Canvas canvas layer cache file and the PPT content layer cache file are synthesized into the synchronized target PPT file.

[0053] In summary, the content synchronization method of the online PPT in the embodiments of the present disclosure provides a solution for synchronizing the content of the Canvas canvas layer of the target PPT page in the scenario of drawing the content of the PPT page based on the Canvas element. First, the content of the Canvas canvas layer can be drawn by executing the instruction data of the Canvas canvas layer. Therefore, if elements such as text, graphics, or animations on the PPT page are the content drawn on the Canvas canvas layer, only the instruction data of the Canvas canvas layer needs to be transmitted during content synchronization, which can greatly reduce the amount of data transmitted during content synchronization compared with the solution of transmitting the content of the elements (such as transmitting graphic files), and reduce the consumption of network bandwidth. Second, when synchronizing the content of the Canvas canvas layer, the data to be synchronized pushed by the central server is the minimized target instruction of the Canvas canvas layer that cannot be split. The amount of data of the minimized target instruction depends on the current content of the Canvas canvas layer of the receiving client, and can be less than or equal to the data volume of the data stream of the content that has changed in the target version of the content relative to the current content of the client, so as to further reduce the amount of data transmitted during content synchronization. Third, when the minimized target instruction pushed by the central server cannot directly act on the target PPT file on the client side for content synchronization, the Canvas canvas layer cache file cached on the client side can be used as a medium for content synchronization, and then the synchronized Canvas canvas layer cache file is used to generate the target PPT page after content synchronization. During this process, the client does not need to request the target PPT file containing instruction data from the central server again, further avoiding an increase in the amount of data transmitted during content synchronization.

[0054] In some embodiments of the present disclosure, step S16 may include steps S161 to S165 as Figure 3 shown.

[0055] In step S161, verify the version matching degree between the minimized target instruction and the Canvas canvas layer cache file.

[0056] In one embodiment, the version of the data to be synchronized pushed by the central server is the latest version of the target PPT page in the central server, denoted as the target version. At this time, the versions corresponding to the minimized target instructions in the data to be synchronized are all the target version. The version of the Canvas canvas layer cache file cached locally by the client is the current version of the target PPT page of the client. That is to say, the version matching degree between the minimized target instruction and the Canvas canvas layer cache file is the version matching degree between the target version and the current version of the target PPT page of the client.

[0057] In one example, the version of the target PPT page can be represented by a version number, and the first digit in the version number is called the version number prefix. For example, the version number prefix of the version number "V3.0.2" is 3. A content change operation of the target PPT page by the user on the client, that is, a content change operation caused by the user's editing operation rather than a content change operation caused by synchronous update, at most causes the version number prefix of the target PPT page of the client to increase by 1. Based on this, the data to be synchronized pushed by the central server based on a content change operation of the target PPT page by the user on the client is mainly used to synchronize two different versions of the target PPT page whose difference in version number prefix is less than or equal to 1. Based on this, when the difference in version number prefix between two different versions of the target PPT page is less than or equal to 1, it is denoted that the version numbers of the two target PPT pages match, and the version synchronization can be directly performed using the data to be synchronized pushed by the central server; when the difference in version number prefix between two different versions of the target PPT page is greater than 1, it is denoted that the version numbers of the two target PPT pages do not match, and further processing is required to perform version synchronization.

[0058] In step S162, when the version matching degree indicates that the versions between the minimized target instruction and the Canvas canvas layer cache file do not match, determine one or more intermediate versions between the minimized target instruction and the Canvas canvas layer cache file. The version matching degree indicating that the versions between the minimized target instruction and the Canvas canvas layer cache file do not match means that the target version does not match the current version of the target PPT page of the client, and there is a version gap in the middle. Each version of the gap is denoted as an intermediate version.

[0059] For example, the target PPT page of the client is version V2, and the version corresponding to the minimized target instruction is version V5, which is used to synchronize the target PPT page of version V4 to version V5. In this case, there are two versions, V3 and V4, between the minimized target instruction and the Canvas canvas layer cache file, and the client determines V3 version and V4 version as intermediate versions.

[0060] In step S163, send a request for obtaining an instruction for the intermediate version synchronization instruction to the server. The intermediate version synchronization instruction is used to synchronize the version of the Canvas canvas layer cache file to the intermediate version with the largest version number.

[0061] In one embodiment, the intermediate version synchronization instruction includes n streams of synchronization instructions for n versions. One stream of synchronization instructions for a version is used to synchronize the instruction data of the Canvas canvas layer of the previous version to the version of the synchronization instruction stream, where n is the number of intermediate versions. For example, if there are two versions, V3 and V4, between the minimized target instruction and the Canvas canvas layer cache file, the intermediate version synchronization instruction includes two streams of synchronization instructions for two versions, namely, the stream of synchronization instructions for version V3, which is used to synchronize the instruction data of the Canvas canvas layer of version V2 to version V3, and the stream of synchronization instructions for version V4, which is used to synchronize the instruction data of the Canvas canvas layer of version V3 to version V4. Thus, the version of the Canvas canvas layer cache file can be synchronized to version V4 through the intermediate version synchronization instruction.

[0062] In step S164, merge the intermediate version synchronization instruction returned by the server and the minimized target instruction into a content synchronization instruction stream.

[0063] In one implementation manner of the present disclosure, when the client obtains the intermediate version synchronization instruction returned by the server, it can merge the intermediate version synchronization instruction and the minimized target instruction through step S164 to obtain a content synchronization instruction stream, and then synchronously update the Canvas canvas layer cache file based on the content synchronization instruction stream. In this way, when merging the intermediate version synchronization instruction and the minimized target instruction, some repeated or redundant instructions can be merged into a single instruction, reducing the amount of data merged into the Canvas canvas layer cache file and improving the data synchronization efficiency.

[0064] In another embodiment of the present disclosure, when the client receives the intermediate version synchronization instruction returned by the server, it can update the Canvas canvas layer cache file version by version based on the intermediate version synchronization instruction, update the version of the Canvas canvas layer cache file to the intermediate version with the largest version number, and then merge the minimization target instruction into the Canvas canvas layer cache file updated version by version to obtain the synchronized Canvas canvas layer cache file. In this way, the synchronized Canvas canvas layer cache file is obtained by updating the Canvas canvas layer cache file before synchronization version by version, which can avoid data loss in a certain version during the update process and ensure the data integrity of the synchronized Canvas canvas layer cache file.

[0065] In step S165, the content synchronization instruction stream is merged into the Canvas canvas layer cache file to obtain the synchronized Canvas canvas layer cache file. The content synchronization instruction stream obtained in step S164 contains the instruction data that the Canvas canvas layer cache file of the current version on the client side lacks compared with the instruction data of the Canvas canvas layer of the target version. Therefore, by merging the content synchronization instruction stream into the Canvas canvas layer cache file, the Canvas canvas layer cache file of the current version on the client side has the instruction data of the Canvas canvas layer of the target version, and the Canvas canvas layer cache file of the current version on the client side can be synchronized to the target version.

[0066] In some embodiments of the present disclosure, step S164 may include steps S1641 to S1642 as Figure 4 shown.

[0067] In step S1641, the instructions in the intermediate version synchronization instruction returned by the server that have an operation conflict with the minimization target instruction are determined as conflict instructions. Among them, the instructions with an operation conflict refer to the instructions for editing the same attributes of the same element on the Canvas canvas layer. For example, if an instruction in the intermediate version synchronization instruction is used to change the color of a rectangle (see Figure 2 ) to blue, and the minimization target instruction is used to change the color of the rectangle to red, it is determined that this instruction in the intermediate version synchronization instruction has an operation conflict with the minimization target instruction, and this instruction is determined as a conflict instruction. In other examples, the conflict instructions can also be instructions for editing the position, shape, size, transparency and other attributes of the elements on the Canvas canvas layer, which are not limited here.

[0068] In step S1642, non-conflicting instructions and minimized target instructions in the intermediate version synchronization instructions are integrated based on the version number order to obtain a content synchronization instruction stream. In an embodiment of the present disclosure, the conflicting instructions and the minimized target instructions act on the same attribute of the same element, and the version of the conflicting instructions lags behind the version of the minimized target instructions. Based on this, the execution result of the conflicting instructions is overwritten by the minimized target instructions, and the editing effect on this element is the same as that of sequentially executing the conflicting instructions and the minimized target instructions. For example, assume that the element jointly acted on by the conflicting instructions and the minimized target instructions is denoted as element A. The conflicting instructions are used to modify the position of element A to the coordinates (X1, Y1), and the minimized target instructions are used to modify the position of element A to the coordinates (X2, Y2). Executing the conflicting instructions and the minimized target instructions sequentially on the Canvas canvas layer, compared with only executing the minimized target instructions, the obtained effect is to modify the position of element A to the coordinates (X2, Y2). That is to say, when updating the element content of the Canvas canvas layer based on the intermediate version synchronization instructions and the minimized target instructions, the execution of the conflicting instructions can be skipped. Therefore, when integrating the intermediate version synchronization instructions and the minimized target instructions to obtain a content synchronization instruction stream, there is no need to integrate the conflicting instructions into the content synchronization instruction stream, which can reduce the data volume of the content synchronization instruction stream and save computing resources when changing the element content of the Canvas canvas layer based on the content synchronization instruction stream.

[0069] Integrating the instructions based on the version number order is to integrate the execution order of the instructions in the order from the oldest version number to the newest version number. For example, the non-conflicting instructions in the intermediate version synchronization instructions include non-conflicting instructions of version V3 and non-conflicting instructions of version V4, and the minimized target instructions are instructions of version V5. Then the execution order of the integrated instructions is as follows: non-conflicting instructions of version V3, non-conflicting instructions of version V4, and minimized target instructions of version V5, as the instructions in the content synchronization instruction stream. In this way, problems of instruction logic conflicts can be avoided. For example, if the instruction of version V3 is to generate element A and the instruction of version V5 is to change the size of element A, then the instruction of version V5 cannot be executed before the instruction of version V3.

[0070] In some embodiments of the present disclosure, the content synchronization method M10 of the online PPT may further include step S11 as Figure 5 shown.

[0071] In step S11, the Canvas canvas layer and the PPT content layer of the target PPT page are merged into the same visual layer. Merging the Canvas canvas layer and the PPT content layer of the target PPT page into the same visual layer specifically means merging the content of the Canvas canvas layer and the content of the PPT content layer to be displayed in the same visual layer.

[0072] In one embodiment, the Canvas canvas layer obtains the Canvas element and operates on the attributes of the Canvas element through JavaScript to achieve the drawing of dynamic content on the Canvas canvas layer. On the other hand, the data structure of the PPT content layer (such as the PPTX format) only supports the storage of static content (shapes, pictures, text, etc.) and cannot directly be compatible with the data of the Canvas canvas layer. Therefore, it is necessary to convert the content of the Canvas canvas layer into static content for export in order to merge the content of the Canvas canvas layer and the content of the PPT content layer into the same visual layer.

[0073] After the content of the Canvas canvas layer is exported, the PPT file does not contain the instruction data corresponding to the dynamic content of the Canvas canvas layer. Therefore, it is possible to determine whether the content of the Canvas canvas layer has been exported based on whether the PPT file contains the instruction data of the Canvas canvas layer, so as to select different synchronization change schemes based on the export situation of the content of the Canvas canvas layer when synchronously changing the content of the Canvas canvas layer. That is, when the content of the Canvas canvas layer has not been exported, the minimization target instruction can be executed on the Canvas canvas layer to synchronously change the content of the Canvas canvas layer. When the content of the Canvas canvas layer has been exported, the Canvas canvas layer cache file is used as the medium for synchronously changing the content of the Canvas canvas layer for content synchronization.

[0074] In one example, taking the PPT content layer as the reference visual layer, the dynamic content of the Canvas canvas layer is converted into static content and exported to the PPT content layer, so that the content of the Canvas canvas layer after export is displayed on the PPT content layer. After export, the content of the Canvas canvas layer is cleared, and the content of the Canvas canvas layer is added to the PPT content layer.

[0075] In yet another example, the content of the Canvas canvas layer and the content of the PPT content layer are rendered and displayed on a new visual layer, and the data structure of the new visual layer is the same as the data structure of the PPT content layer. After the rendering is completed, the content of both the Canvas canvas layer and the PPT content layer is cleared, and the data of the new visual layer is used as the PPT file.

[0076] In some embodiments of the present disclosure, step S11 may include steps S111 to S114 as Figure 6 shown.

[0077] In step S111, a Canvas canvas layer and a PPT content layer are displayed on the online page of the target PPT file, and the online page is displayed as the target PPT page. Among them, the online page of the target PPT file is an online page obtained by loading the target PPT file in the browser page of the client and serves as the target PPT page of the target PPT file.

[0078] In one embodiment, the Canvas canvas layer is initially in a hidden state, and only the content of the PPT content layer is displayed on the target PPT page for the user to edit the PPT document. When it is necessary to draw graphics, animations, or text of certain styles, the Canvas canvas layer can be converted to a display state, and elements such as graphics, animations, or text can be drawn on the Canvas canvas layer to make the Canvas canvas layer display the drawn content. If other clients perform operations to change the content on the Canvas canvas layer, the content change will be synchronized on the Canvas canvas layer of the current client based on the minimized target instructions pushed by the central server.

[0079] In step S112, in response to the content merging operation on the target PPT page, the instruction data of the Canvas canvas layer and the PPT structured data of the PPT content layer are cached to obtain a Canvas canvas layer cache file and a PPT content layer cache file respectively.

[0080] When the client determines that the content drawing on the Canvas canvas layer is completed, the content of the Canvas canvas layer and the PPT content layer can be merged through the content merging operation on the target PPT page. Since the data structure of the merged visual layer is the same as that of the PPT content layer, it can only store static content and no longer contains dynamic content and the instruction data corresponding to the dynamic content. Therefore, after the content of the Canvas canvas layer and the PPT content layer is merged, if other clients perform operations to change the content on the Canvas canvas layer, the content change cannot be synchronized on the merged visual layer based on the minimized target instructions. Therefore, it is necessary to cache the instruction data of the Canvas canvas layer before merging the content of the Canvas canvas layer and the PPT content layer into the same visual layer to retain the editable Canvas canvas layer data for synchronizing the content change of the Canvas canvas layer. Among them, the cached instruction data of the Canvas canvas layer is stored independently of the target PPT file as the Canvas canvas layer cache file to avoid affecting the next drawing of content on the Canvas canvas layer of the target PPT page.

[0081] Furthermore, since the merged visual layer already contains the content of the non-editable Canvas layer, the content synchronization of the Canvas layer is performed based on the merged visual layer. Based on this, in response to the content merging operation of the target PPT page, while caching the instruction data of the Canvas layer, it is also necessary to cache the PPT structured data of the PPT content layer to retain the data of the PPT content layer that has not been mixed with the content of the Canvas layer for the content of the Canvas layer after hybrid synchronization. Among them, the cached PPT structured data of the PPT content layer is stored independently of the target PPT file as a PPT content layer cache file to avoid interfering with the merged visual layer in the target PPT file.

[0082] In step S113, when generating the Canvas layer cache file and the PPT content layer cache file, the Canvas layer and the PPT content layer are merged and rendered to obtain a composite page layer. Among them, the composite page layer is a visual layer for displaying the merged content after merging the content of the Canvas layer and the PPT content layer.

[0083] When generating the Canvas layer cache file and the PPT content layer cache file, the instruction data representing the Canvas layer and the PPT structured data of the PPT content layer have been retained, which can support the content synchronization of the Canvas layer after merging the Canvas layer and the PPT content layer. At this time, clearing the data of the Canvas layer and the PPT content layer will not affect the content synchronization of the Canvas layer, so the Canvas layer and the PPT content layer can be merged and rendered to obtain a composite page layer.

[0084] In step S114, the composite page layer is displayed on the online page of the target PPT file, and the online page is used as the target PPT page for display. When the target PPT page displays the composite page layer, the content included in the composite page layer includes the content of the Canvas layer before the merge process and the content of the PPT content layer.

[0085] In one embodiment, the composite page layer is used as a new PPT content layer. If the user needs to edit the content of the PPT content layer, corresponding editing operations can be performed on the composite page layer. If, in the case of displaying the composite page layer on the online page, the user draws new elements on the Canvas layer, the composite page layer can be regarded as the PPT content layer in the merge rendering processing task, caching the PPT structured data of the composite page layer, and performing merge rendering processing on the Canvas layer and the composite page layer to obtain a new composite page layer, and the new composite page layer contains the new elements drawn by the user on the Canvas layer.

[0086] In some embodiments of the present disclosure, the content synchronization method M10 of the online PPT may further include step S12 as Figure 7 shown.

[0087] In step S12, in response to a change operation on the content of the Canvas canvas layer of the target PPT page, the content change operation instruction data corresponding to the content change operation is uploaded to the server. The server is used to split the content change operation instruction data into multiple non - splittable minimized change operation instructions for synchronizing the content change operation. If the content change operation instruction itself is a non - splittable minimized instruction, there is no need to split it, but it is determined as the minimized change operation instruction.

[0088] For example, if the user performs a displacement operation and a color - change operation on element A of the Canvas canvas layer to change the content of the Canvas canvas layer, the content change operation instruction data corresponding to the content change operation of the Canvas canvas layer is an instruction stream including a displacement operation instruction and a color - change operation instruction. After the client uploads the content change operation instruction data to the central server, the central server splits the content change operation instruction data into a displacement operation instruction and a color - change operation instruction. In this way, when the central server synchronizes this content change operation to other clients, if another client has already performed the same displacement operation, the server can push the color - change operation instruction as the minimized target instruction to this client without pushing the displacement operation instruction. In this way, the amount of data required for content synchronization of the target PPT page can be reduced, and network bandwidth consumption can be reduced.

[0089] In some embodiments of the present disclosure, the content synchronization method M10 of the online PPT may further include step S17 as Figure 8 shown.

[0090] In step S17, when the data to be synchronized further includes non - splittable minimized PPT content change fields of the PPT content layer, the minimized PPT content change fields are merged into the PPT content layer cache file on the client side to obtain a synchronized PPT content layer cache file.

[0091] The data of the PPT content layer is static data. When the content of the PPT content layer changes, the non - splittable minimized data for the change is a field. For example, when it is necessary to change the text paragraph of the PPT content layer, only the content of the "text" field corresponding to the text paragraph needs to be changed. Based on this, when the central server needs to synchronize the content change of the PPT content layer to the client, the minimized PPT content change fields for changing the content of the PPT content layer can be pushed to the client as the data to be synchronized for content synchronization of the PPT content layer.

[0092] When the Canvas canvas layer and the PPT content layer on the client have been merged, it is necessary to use the Canvas canvas layer cache file to synchronize the changed content of the Canvas canvas layer. And perform composite rendering processing on the synchronized Canvas canvas layer cache file and the PPT content layer cache file to obtain the synchronized target PPT page. On this basis, if the data to be synchronized also includes the minimized PPT content change field, it means that the content of the PPT content layer also needs to be synchronized and changed. In this case, before performing the composite rendering processing on the synchronized Canvas canvas layer cache file and the PPT content layer cache file, the minimized PPT content change field can be merged into the PPT content layer cache file on the client side to obtain the synchronized PPT content layer cache file, so that the synchronized PPT content layer cache file contains the content of the synchronized and changed PPT content layer. Then, perform composite rendering processing on the synchronized Canvas canvas layer cache file and the synchronized PPT content layer cache file to obtain the synchronized target PPT page, so that the synchronized target PPT page contains the content of the synchronized Canvas canvas layer and the content of the synchronized PPT content layer.

[0093] In one embodiment, merging the minimized PPT content change field into the PPT content layer cache file on the client side may specifically be to overwrite the content of the minimized PPT content change field to the content of the same field in the PPT content layer cache file. For example, if the minimized PPT content change field is the "text" field, then merging the minimized PPT content change field into the PPT content layer cache file on the client side may be to replace the content of the "text" field in the PPT content layer cache file with the content of the minimized PPT content change field.

[0094] Based on any of the above embodiments, the present disclosure also provides a content synchronization device for an online PPT. Figure 9 It is a structural schematic diagram of a content synchronization device for an online PPT according to an embodiment of the present disclosure.

[0095] As Figure 9 shown, the content synchronization device for the online PPT includes: a push response module 110, a query module 120, a cache file acquisition module 130, a synchronization module 140, and a synthesis module 150.

[0096] The push response module 110 is used to obtain the data to be synchronized in the content synchronization push in response to the content synchronization push of the target PPT page. The data to be synchronized is used to synchronize the content of the target PPT page of the client to the target version. The query module 120 is used to query the instruction data for drawing elements on the Canvas canvas layer in the target PPT file corresponding to the target PPT page on the client side when the data to be synchronized includes the non-splittable minimized target instructions of the Canvas canvas layer of the target PPT page. The cache file acquisition module 130 is used to obtain the Canvas canvas layer cache file and the PPT content layer cache file corresponding to the target PPT file on the client side when the target PPT file on the client side does not contain the instruction data. The synchronization module 140 is used to merge the minimized target instructions into the Canvas canvas layer cache file to obtain the synchronized Canvas canvas layer cache file. The synthesis module 150 is used to perform synthesis rendering processing on the synchronized Canvas canvas layer cache file and the PPT content layer cache file to obtain the synchronized target PPT page.

[0097] The above content synchronization device for online PPT can be computer software, and each of its modules can be a computer software module. The implementation processes of the functions and roles of each module in the above content synchronization device for online PPT are specifically described in the implementation processes of the corresponding steps in the above method, and will not be elaborated here.

[0098] Based on any of the above embodiments, the present disclosure also provides an electronic device, which can execute the content synchronization method for online PPT in any of the above embodiments described in the present disclosure.

[0099] Figure 10 It is a structural schematic diagram of an electronic device 1000 according to an embodiment of the present disclosure.

[0100] The hardware structure of the electronic device 1000 can be implemented using a bus architecture. The bus architecture can include any number of interconnected buses and bridges, depending on the specific application of the hardware and the overall design constraints. The bus 1100 connects various circuits including one or more processors 1200, a memory 1300, and / or hardware modules together. The bus 1100 can also connect various other circuits 1400 such as peripheral devices, voltage regulators, power management circuits, external antennas, etc.

[0101] The bus 1100 can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, an Extended Industry Standard Architecture (EISA) bus, or the like. The bus can be divided into an address bus, a data bus, a control bus, etc. For the sake of convenience in representation, only one connection line is used in this figure, but it does not mean that there is only one bus or one type of bus.

[0102] The present disclosure also provides a readable storage medium storing a computer program, which is used to implement the above method when executed by a processor. The "readable storage medium" can be any device that can contain, store, communicate, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. More specific examples of the readable storage medium include the following: an electrical connection part (electronic device) having one or more wirings, a portable computer disk cartridge (magnetic device), a random access memory (RAM), a read only memory (ROM), an erasable programmable read only memory (EPROM or flash memory), an optical fiber device, and a portable read only memory (CDROM), etc.

[0103] The present disclosure also provides a computer program product. The method of the present disclosure can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instructions are loaded and executed, the processes or functions of the present disclosure are executed in whole or in part.

[0104] The computer program or instructions can be stored in a readable storage medium, or transmitted from one readable storage medium to another. For example, the computer program or instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center in a wired or wireless manner. The readable storage medium can be any available medium that can be accessed, or a data storage device such as a server or data center integrating one or more available mediums. The available medium can be a magnetic medium, such as a floppy disk, a hard disk, or a magnetic tape; it can also be an optical medium, such as a digital video disc; or it can be a semiconductor medium, such as a solid state drive. The computer readable storage medium can be a volatile or non-volatile storage medium, or can include both volatile and non-volatile types of storage media.

[0105] Those skilled in the art should understand that the embodiments of the present disclosure may be provided as a method, a system, or a computer program product. Therefore, the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present disclosure may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.

[0106] The present disclosure is described with reference to the flowcharts and / or block diagrams of methods, apparatus (systems), and computer program products according to the present disclosure. It should be understood that each flow and / or block in the flowchart and / or block diagram, and combinations of flows and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable content synchronization devices for online PPTs, such that the instructions executed by the processor of the computer or other programmable content synchronization devices for online PPTs generate means for implementing the specified functions in Figure 1 one or more of the processes Figure 1 or blocks or combinations of blocks.

[0107] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable content synchronization devices for online PPTs to operate in a specific manner, such that the instructions stored in the computer-readable memory generate a manufactured article including instruction means that implement the specified functions in Figure 1 one or more of the processes Figure 1 or blocks or combinations of blocks.

[0108] These computer program instructions can also be loaded onto a computer or other programmable content synchronization devices for online PPTs, such that a series of operating steps are executed on the computer or other programmable devices to generate a computer-implemented process, and thus the instructions executed on the computer or other programmable devices provide steps for implementing the specified functions in Figure 1 one or more of the processes Figure 1 or blocks or combinations of blocks.

[0109] In the description of this specification, the description with reference to terms such as "one embodiment / way", "some embodiments / ways", "example", "specific example", or "some examples" means that the specific features, structures, or characteristics described in connection with the embodiment / way or example are included in at least one embodiment / way or example of the present disclosure. In this specification, the schematic expressions of the above terms do not necessarily refer to the same embodiment / way or example. Moreover, the specific features, structures, or characteristics described can be combined in a suitable manner in any one or more embodiments / ways or examples. In addition, without contradiction, those skilled in the art can combine and combine the different embodiments / ways or examples described in this specification and the features of different embodiments / ways or examples.

[0110] Those skilled in the art should understand that the above embodiments are only for clearly explaining the present disclosure, rather than limiting the scope of the present disclosure. For those skilled in the art, other changes or modifications can be made on the basis of the above disclosure, and these changes or modifications are still within the scope of the present disclosure.

Claims

1. An online PPT content synchronization method, characterized in that, Including: In response to the content synchronization push of the target PPT page, obtaining the data to be synchronized in the content synchronization push; When the data to be synchronized includes the non-splittable minimized target instruction of the Canvas canvas layer of the target PPT page, querying the instruction data for drawing elements in the Canvas canvas layer in the target PPT file corresponding to the target PPT page on the client side; When the target PPT file on the client side does not contain the instruction data, obtaining the Canvas canvas layer cache file and the PPT content layer cache file corresponding to the target PPT file on the client side; Merging the minimized target instruction into the Canvas canvas layer cache file to obtain the synchronized Canvas canvas layer cache file; And Performing composite rendering processing on the synchronized Canvas canvas layer cache file and the PPT content layer cache file to obtain the synchronized target PPT page.

2. The content synchronization method of the online PPT according to claim 1, wherein Merging the minimized target instruction into the Canvas canvas layer cache file to obtain the synchronized Canvas canvas layer cache file, including: Verifying the version matching degree between the minimized target instruction and the Canvas canvas layer cache file; When the version matching degree indicates that the versions between the minimized target instruction and the Canvas canvas layer cache file do not match, determining one or more intermediate versions separated between the minimized target instruction and the Canvas canvas layer cache file; Sending a request for obtaining an instruction for the intermediate version synchronization instruction to the server, where the intermediate version synchronization instruction is used to synchronize the version of the Canvas canvas layer cache file to the intermediate version with the largest version number; Merging the intermediate version synchronization instruction returned by the server and the minimized target instruction into a content synchronization instruction stream; and Merging the content synchronization instruction stream into the Canvas canvas layer cache file to obtain the synchronized Canvas canvas layer cache file.

3. The content synchronization method of the online PPT according to claim 2, characterized in that, Merging the intermediate version synchronization instruction returned by the server and the minimized target instruction into a content synchronization instruction stream, including: Determining the instruction conflicting with the minimized target instruction in the intermediate version synchronization instruction returned by the server as a conflicting instruction; and Integrating the non-conflicting instructions in the intermediate version synchronization instruction and the minimized target instruction based on the version number order to obtain the content synchronization instruction stream.

4. The content synchronization method of the online PPT according to claim 1, wherein Before, in response to the content synchronization push of the target PPT page, obtaining the data to be synchronized in the content synchronization push, further including: Merging the Canvas canvas layer and the PPT content layer of the target PPT page into the same visual layer.

5. The content synchronization method of the online PPT according to claim 4, characterized in that, Merging the Canvas canvas layer and the PPT content layer of the target PPT page into the same visual layer, including: Displaying the Canvas canvas layer and the PPT content layer on the online page of the target PPT file, and making the online page serve as the target PPT page for display; In response to a content merging operation on the target PPT page, cache the instruction data of the Canvas canvas layer and the PPT structured data of the PPT content layer to obtain the Canvas canvas layer cache file and the PPT content layer cache file respectively; When the Canvas canvas layer cache file and the PPT content layer cache file are generated, perform a combined rendering process on the Canvas canvas layer and the PPT content layer to obtain a composite page layer; and Display the composite page layer on the online page of the target PPT file, and use the online page as the target PPT page for display.

6. The content synchronization method of the online PPT according to claim 1, wherein, It further includes: In response to a content change operation on the Canvas canvas layer of the target PPT page, upload the content change operation instruction data corresponding to the content change operation to the server, and the server is used to split the content change operation instruction data into non-splittable minimized change operation instructions for synchronizing the content change operation.

7. The content synchronization method of the online PPT according to claim 1, wherein It further includes: When the data to be synchronized further includes non-splittable minimized PPT content change fields of the PPT content layer, merge the minimized PPT content change fields into the PPT content layer cache file on the client side to obtain the synchronized PPT content layer cache file.

8. An electronic device, characterized in that, It includes: A memory that stores execution instructions; And A processor that executes the execution instructions stored in the memory, so that the processor executes the content synchronization method of the online PPT according to any one of claims 1 to 7.

9. A readable storage medium, characterized in that, Execution instructions are stored in the readable storage medium, and when the execution instructions are executed by the processor, they are used to implement the content synchronization method of the online PPT according to any one of claims 1 to 7.

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the content synchronization method of the online PPT according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Multi-terminal online PPT playing system and synchronization method, electronic equipment and storage medium

    CN115589408A

  • Interactive PPT design method

    CN116451654A

  • PDF collaborative labeling method based on OnChain PLM system

    CN118297038A

  • Document collaborative editing method and device, server and storage medium

    CN118690727A

  • Meeting collaboration systems, devices, and methods

    US20180011627A1

Cited By

  • PPT style conversion method and system

    CN121788662A