CN111930330B - Method, device and system for synchronizing shared views - Google Patents
Method, device and system for synchronizing shared views Download PDFInfo
- Publication number
- CN111930330B CN111930330B CN202010977078.4A CN202010977078A CN111930330B CN 111930330 B CN111930330 B CN 111930330B CN 202010977078 A CN202010977078 A CN 202010977078A CN 111930330 B CN111930330 B CN 111930330B
- Authority
- CN
- China
- Prior art keywords
- screen
- size
- clients
- display
- shared
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000010801 machine learning Methods 0.000 claims description 16
- 238000012935 Averaging Methods 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 9
- 230000001360 synchronised effect Effects 0.000 abstract description 5
- 238000004891 communication Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000000691 measurement method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1454—Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4092—Image resolution transcoding, e.g. by using client-server architectures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
The invention discloses a method, a device and a system for synchronizing shared views. The method comprises the following steps: firstly, sending the size of a client screen to a server by a client; then, after receiving the size of the client screen sent by each client, the server determines the size of a target screen according to the sizes of all the client screens, wherein the screen size is used for appointing the display range of the shared file in the view; then, the server broadcasts the size of the target screen to all the clients; after receiving the size of the target screen broadcasted by the server, the client divides the size of the target screen by the size of the client screen to obtain the scaling of the display object, scales the object to be displayed in the view according to the scaling and displays the scaled display object on the screen of the client, so that the display range in the shared view of each client is completely synchronous and consistent, and good experience is realized.
Description
Technical Field
The present invention relates to the field of collaborative work using shared files, and in particular, to a method, an apparatus, and a system for synchronizing shared views.
Background
With the development of communication technology and internet, online shared files are more and more commonly applied to work, study and life of people because real-time synchronization can be realized and multi-person cooperative work can be supported.
However, as the variety of terminal devices is increasing, the client for editing or viewing the online shared file may be a notebook computer, a desktop computer, a mobile phone or other portable devices, and the resolution and the screen size of each device are different, so that there may be a situation that although the shared file is the content of the same file, the shared view cannot be completely synchronized due to the fact that the screen of the client is too small, and the efficiency of the collaborative work and the user experience may be affected to a certain extent.
Therefore, in the situation that the screen sizes of the clients are different from one another, how to keep the views of the online shared files completely synchronized is a technical problem to be solved.
Disclosure of Invention
In view of the above problems, the present inventors have innovatively provided a method, apparatus and system for synchronization of shared views.
According to a first aspect of the embodiments of the present invention, there is provided a synchronization method for shared views, which is applied to a server side, and the method includes: receiving the size of a first screen of at least two clients, wherein the first screen is a screen used by the clients for displaying a shared view; determining the size of a second screen according to the sizes of the first screens of at least two clients, wherein the second screen is a virtual screen for appointing the display range of the shared view; broadcasting the size of the second screen to at least two clients.
According to an embodiment of the present invention, the method further includes: and defining a first message type, wherein the first message type is used for transmitting a shared view synchronization message between the server side and the client side, and the shared view synchronization message comprises at least one of the size of the first screen and the size of the second screen.
According to an embodiment of the present invention, determining the size of the second screen according to the size of the first screen of at least two clients includes: and judging whether the number of the clients of the at least two clients is more than or equal to 3, if so, removing a maximum value and a minimum value from the sizes of the first screens of the at least two clients, and averaging the rest values to obtain the size of the second screen.
According to an embodiment of the present invention, determining the size of the second screen according to the size of the first screen of at least two clients includes: after the sizes of the first screens of the at least two clients are weighted and summed, the average value is obtained to obtain the size of the second screen, wherein the weight value corresponding to the size of the first screen is preset.
According to an embodiment of the present invention, after performing weighted summation on sizes of first screens of at least two clients, before averaging to obtain a size of a second screen, the method further includes: the method includes the steps that a weight value corresponding to the size of a first screen is preset, wherein the smaller the size of the first screen is, the larger the weight value is.
According to an embodiment of the present invention, determining the size of the second screen according to the size of the first screen of at least two clients includes: and taking the size of a first screen of at least two clients as the input of a machine learning model, and determining the size of a second screen through the operation of the machine learning model, wherein the machine learning model is established in advance.
According to a second aspect of the embodiments of the present invention, there is provided a synchronization method for shared views, which is applied to a client, and the method includes: acquiring the size of a first screen, wherein the first screen is a screen used by a client for displaying a shared view; sending the size of a first screen to a server side; receiving the size of a second screen broadcasted by a server to at least two clients, wherein the second screen is a virtual screen used for appointing the display range of the shared view, and the size of the second screen is determined according to the size of a first screen of the at least two clients; dividing the size of the first screen by the size of the second screen to obtain the scaling of a display object, wherein the display object is an object to be displayed in the shared view; and zooming the display object according to the zooming scale and displaying the zoomed display object on the first screen.
According to a third aspect of the embodiments of the present invention, there is provided a synchronization apparatus for sharing a view, which is applied to a server side, the apparatus including: a first screen size receiving module, configured to receive a size of a first screen of at least two clients, where the first screen is a screen used by a client to display a shared view; the second screen size calculation module is used for determining the size of a second screen according to the size of a first screen of at least two clients, wherein the second screen is a virtual screen used for appointing a display range of a shared view; and the second screen size broadcasting module is used for broadcasting the size of the second screen to at least two clients.
According to an embodiment of the present invention, the apparatus further includes: and the message definition module is used for defining a first message type, the first message type is used for transmitting a shared view synchronization message between the server side and the client side, and the shared view synchronization message comprises at least one of the size of the first screen and the size of the second screen.
According to an embodiment of the present invention, the second screen size calculating module includes: the client number judging submodule is used for judging whether the number of the clients of the at least two clients is more than or equal to 3; and the calculation submodule is used for averaging the rest values to obtain the size of the second screen after removing a maximum value and a minimum value from the sizes of the first screens of the at least two clients.
According to an embodiment of the present invention, the second screen size calculating module is specifically configured to perform weighted summation on sizes of first screens of at least two clients, and then obtain a size of the second screen by averaging, where a weight value corresponding to the size of the first screen is preset.
According to an embodiment of the present invention, the apparatus further includes: the weight value setting module is used for presetting a weight value corresponding to the size of the first screen, wherein the smaller the size of the first screen is, the larger the weight value is.
According to an embodiment of the present invention, the second screen size calculating module is specifically configured to determine the size of the second screen through calculation of a machine learning model by using the sizes of the first screens of the at least two clients as input of the machine learning model, where the machine learning model is established in advance.
According to a fourth aspect of the embodiments of the present invention, there is provided a synchronization apparatus for sharing a view, which is applied to a client, the apparatus including: the device comprises a first screen size acquisition module, a first display module and a second display module, wherein the first screen size acquisition module is used for acquiring the size of a first screen, and the first screen is used for displaying a shared view by a client; the first screen size sending module is used for sending the size of the first screen to the server side; a second screen size receiving module, configured to receive a size of a second screen broadcasted by the server to the at least two clients, where the second screen is a virtual screen used for appointing a display range of the shared view, and the size of the second screen is determined according to a size of a first screen of the at least two clients; the scaling calculation module is used for dividing the size of the first screen by the size of the second screen to obtain the scaling of a display object, wherein the display object is an object to be displayed in the shared view; and the zooming display module is used for zooming the display object according to the zooming proportion and displaying the zoomed display object on the first screen.
According to a fifth aspect of the embodiments of the present invention, there is provided a synchronization system for shared views, the system including a server and a client, wherein: the server side is used for executing the synchronization method applied to the shared view of the server side; and the client is used for executing the synchronization method applied to the shared view of the client.
The embodiment of the invention provides a method, a device and a system for synchronizing shared views. The method comprises the following steps: firstly, sending the size of a client screen to a server by a client; then, after receiving the size of the client screen sent by each client, the server determines the size of a target screen according to the sizes of all the client screens, wherein the screen size is used for appointing the display range of the shared file in the view; then, the server broadcasts the size of the target screen to all the clients; after receiving the size of the target screen broadcasted by the server, the client divides the size of the target screen by the size of the client screen to obtain the scaling of the display object, scales the object to be displayed in the view according to the scaling and displays the scaled display object on the screen of the client, so that the display range in the shared view of each client is completely synchronous and consistent, and good experience is realized.
It is to be understood that the teachings of the present invention need not achieve all of the above-described benefits, but rather that specific embodiments may achieve specific technical results, and that other embodiments of the present invention may achieve benefits not mentioned above.
Drawings
The above and other objects, features and advantages of exemplary embodiments of the present invention will become readily apparent from the following detailed description read in conjunction with the accompanying drawings. Several embodiments of the invention are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which:
in the drawings, the same or corresponding reference numerals indicate the same or corresponding parts.
FIG. 1 is a schematic diagram of an application scenario of a synchronization method for sharing views according to an embodiment of the present invention;
fig. 2 is a schematic flow chart of an implementation process of the synchronization method for shared views at the server side according to the embodiment of the present invention;
FIG. 3 is a schematic flow chart of an implementation process of a synchronization method for shared views at a client according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of a server-side structure of a synchronization apparatus for sharing views according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of a synchronization apparatus sharing views at a client according to an embodiment of the present invention.
Detailed Description
In order to make the objects, features and advantages of the present invention more obvious and understandable, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention, and it is apparent that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
In the description herein, references to the description of the term "one embodiment," "some embodiments," "an example," "a specific example," or "some examples," etc., mean that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least two embodiments or examples of the invention. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Furthermore, various embodiments or examples and features of different embodiments or examples described in this specification can be combined and combined by one skilled in the art without contradiction.
Furthermore, the terms "first", "second" and "first" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least two of that feature. In the description of the present invention, "a plurality" means two or more unless specifically defined otherwise.
First, an application scenario of the following embodiment of the present invention is described. As shown in fig. 1, the embodiment of the present invention is mainly applied to a scenario in which an operation is performed on an online shared file and a displayed range in each client view is required to be consistent all the time, where an online shared file system generally includes a server 10 and at least two clients 20. Generally, the client 20 performs various operations on the content of the online shared file, including adding, modifying, formatting and the like, and the server 10 is mainly responsible for broadcasting the changes of the file content, which are generated by these operations performed by the client 20, to other clients, so as to implement sharing and synchronization of the online shared file at each client.
In contrast, in the embodiment of the present invention, the server 10 is mainly responsible for adjusting the size of the display object in the shared view in cooperation with each client 20, so that even if the size of the screen of each client 20 is different, the display range (e.g., the row range and the column range in the spreadsheet) in the shared view is consistent.
For this reason, the server 10 and the client 20 of the online shared file system need to perform the following interactions:
firstly, the client 20 sends the size of the screen to the server 10; then, after receiving the size of the client screen sent by each client 20, the server 10 determines the size of a target screen according to the sizes of all the client screens, where the size of the target screen is used to determine the display range of the shared file in the view; then, the server 10 broadcasts the size of the target screen to all the clients 20; after receiving the size of the target screen broadcasted by the server, the client 20 divides the size of the target screen by the size of the client screen to obtain the scaling of the display object, scales the object to be displayed in the view according to the scaling and displays the scaled display object on the screen of the client, thereby realizing good experience that the display range in the shared view of each client 20 is completely synchronous and consistent.
In the following, a description is given of a synchronization method for shared views executed by a server and a client, respectively, according to an embodiment of the present invention.
According to a first aspect of the embodiments of the present invention, there is provided a synchronization method for shared views, which is applied to a server side, and as shown in fig. 2, the method includes: an operation 210 of receiving a size of a first screen of at least two clients, wherein the first screen is a screen used by the clients to display a shared view; operation 220, determining a size of a second screen according to the size of the first screen of the at least two clients, wherein the second screen is a virtual screen for appointing a display range of the shared view; in operation 230, the size of the second screen is broadcast to at least two clients.
In operation 210, the client may be any electronic device with a display screen that can be used to display a shared view, such as a desktop computer, a laptop computer, a tablet computer, a smart phone, and a wearable device. The first screen is a screen used by the electronic devices to display a shared view, and includes but is not limited to: CRT display screens, LCD liquid crystal screens, LED screens, projection screens, and 3D display screens. The screen aspect ratio of the first screen may be 4:3, 5:4, 16:10, 16:9, or the like. The size of the screen is generally referred to as the size of the screen, and is usually measured in inches, and is measured as the length of the diagonal of the screen, for example, the screen with a diagonal of 5 inches has a screen size of 5 inches. However, the embodiment of the present invention does not limit the measurement unit or the measurement method of the screen size, as long as the measurement unit or the measurement method that can be understood by each other is used at the server side and the client side. The synchronization method of the shared view in the embodiment of the invention is mainly used in the scene that more than two clients share the view, and each client is required to send the screen size to the server, so that the screen sizes of at least two clients are usually received.
In operation 220, the second screen is not an actual physical screen but a virtual target screen, and the content displayed on the target screen is the content to be displayed on each client screen. The size of this target screen directly determines how much content is displayed on each client screen, i.e., the range that can be displayed in the target screen with the default display size of the display object, such as the range of rows and the range of columns in a spreadsheet. Once the size and display range of the target screen are determined, each client may synchronize the display range of the respective screen according to the size and display range of the target screen. Typically, the size of the second screen is a median value of all client screen sizes, i.e. a value smaller than the maximum value but larger than the minimum value, and a median value closer to the minimum value may be taken to take care of the smaller client. In this embodiment, a specific method of how to determine the size of the second screen according to the size of the first screen is not limited, and an implementer may use any suitable method according to specific implementation conditions.
At operation 230, here, the communication channel employed to broadcast the size of the second screen to the at least two clients is typically the same channel as the existing communication channel employed to broadcast other messages, such as operations or content, to the at least two clients.
According to an embodiment of the present invention, the method further includes: and defining a first message type, wherein the first message type is used for transmitting a shared view synchronization message between the server side and the client side, and the shared view synchronization message comprises at least one of the size of the first screen and the size of the second screen.
In this embodiment, in order to facilitate the transmission of the shared view synchronization message between the server side and the client side, for example, the size of the first screen or the size of the second screen mentioned before, a new message type is defined. By the new message type, the receiving end of the message can definitely know that the content carried in the message is used for synchronizing the shared view, but not the shared file content, so that the corresponding operation can be quickly executed. Adding a new message type is usually achieved by using an existing field or attribute representing the message type and adding a message identifier and a corresponding symbolic constant stating the purpose of the message.
According to an embodiment of the present invention, determining the size of the second screen according to the size of the first screen of at least two clients includes: and judging whether the number of the clients of the at least two clients is more than or equal to 3, if so, removing a maximum value and a minimum value from the sizes of the first screens of the at least two clients, and averaging the rest values to obtain the size of the second screen.
In this embodiment, the purpose of removing a maximum value and removing a minimum value is mainly to eliminate the influence of the singular value on the target screen, so that the target screen is sized to fit most client screens better.
According to an embodiment of the present invention, determining the size of the second screen according to the size of the first screen of at least two clients includes: after the sizes of the first screens of the at least two clients are weighted and summed, the average value is obtained to obtain the size of the second screen, wherein the weight value corresponding to the size of the first screen is preset.
For different size screens, the change of the target screen size may have different effects on the display of the shared screen, for example, for a screen with a larger screen size, the effect on the display effect of the shared view is not too large no matter how the target screen size is changed, and for a screen with a smaller screen size, if the target screen is too large, that is, the display range is too large, the size of the display object must be reduced greatly to display all the objects in the display range, thereby causing poor experience which is difficult to see. For another example, to promote the application to the use of a certain type of screen, a higher weight may be given to the screen of the certain type, so that the display effect is better, and more client users can select the screen of the certain type, and so on.
Therefore, in the present embodiment, the averaging is not simply performed, but the corresponding weight is set in consideration of the difference in the influence of the target screen on the display of the shared view on the client screen.
According to an embodiment of the present invention, after performing weighted summation on sizes of first screens of at least two clients, before averaging to obtain a size of a second screen, the method further includes: the method includes the steps that a weight value corresponding to the size of a first screen is preset, wherein the smaller the size of the first screen is, the larger the weight value is.
The poor use experience results because a smaller screen is more likely to cause the display objects in the shared view to become smaller because the screen is smaller. Therefore, in the embodiment, the small-screen client can be given a higher weight without causing the target screen to be too large and causing the small-screen display effect to be poor.
According to an embodiment of the present invention, determining the size of the second screen according to the size of the first screen of at least two clients includes: and taking the size of a first screen of at least two clients as the input of a machine learning model, and determining the size of a second screen through the operation of the machine learning model, wherein the machine learning model is established in advance.
In this embodiment, a more intelligent machine learning model is used, and the model is trained through a large amount of actual display effects and evaluation data generated by different screen sizes, so that the size of a target screen closer to the best experience is given.
According to a second aspect of the embodiments of the present invention, there is provided a synchronization method for shared views, which is applied to a client, and as shown in fig. 3, the method includes: operation 310, obtaining a size of a first screen, wherein the first screen is a screen used by the client to display the shared view; operation 320, sending the size of the first screen to the server; operation 330, receiving a size of a second screen broadcasted by the server to the at least two clients, wherein the second screen is a virtual screen for appointing the display range of the shared view, and the size of the second screen is determined according to the size of a first screen of the at least two clients; operation 340, dividing the size of the first screen by the size of the second screen to obtain a scaling of a display object, wherein the display object is an object to be displayed in the shared view; and operation 350, zooming the display object according to the zoom ratio and displaying the zoomed display object on the first screen.
In operation 310, the first screen is a screen used by the client local device, and therefore, it can be obtained through some system function, for example, toolkit. The embodiment of the present invention does not limit a specific method for obtaining the size of the first screen, and an implementer may use any suitable method according to implementation conditions.
In operation 320 and operation 330, the size of the first screen transmitted to the server and the size of the second screen received from the server-side broadcast may be the same as the existing communication channels and communication methods. If necessary, new message categories can be added for distinguishing, and for this, related descriptions are already provided in the previous section, and are not described herein again.
In operation 340, in order to display the display range agreed by the second screen (target screen), it is necessary to calculate the scale of the display object: when the size of the first screen (local screen) is larger than that of the second screen, the display object needs to be enlarged to adapt to the size of the local screen; when the size of the first screen is smaller than that of the second screen, the display object needs to be reduced to fit the size of the local screen. The scale of this scaling is generally proportional to the proportional size of the first screen size to the second screen size.
In operation 350, the default size of the display object of the system may be scaled according to the scaling obtained in operation 340 to obtain the actual size to be displayed, and the display may be performed according to the scaled size. Existing systems generally provide scaling functions for display objects, and these scaling functions can be used to implement the above operations.
According to a third aspect of the embodiments of the present invention, there is provided a synchronization apparatus for sharing a view, which is applied to a server side, as shown in fig. 4, the apparatus 40 includes: a first screen size receiving module 401, configured to receive a size of a first screen of at least two clients, where the first screen is a screen used by a client to display a shared view; a second screen size calculating module 402, configured to determine a size of a second screen according to a size of a first screen of at least two clients, where the second screen is a virtual screen used for appointing a display range of a shared view; a second screen size broadcasting module 403, configured to broadcast the size of the second screen to at least two clients.
According to an embodiment of the present invention, the apparatus 40 further includes: and the message definition module is used for defining a first message type, the first message type is used for transmitting a shared view synchronization message between the server side and the client side, and the shared view synchronization message comprises at least one of the size of the first screen and the size of the second screen.
According to an embodiment of the present invention, the second screen size calculating module 402 includes: the client number judging submodule is used for judging whether the number of the clients of the at least two clients is more than or equal to 3; and the calculation submodule is used for averaging the rest values to obtain the size of the second screen after removing a maximum value and a minimum value from the sizes of the first screens of the at least two clients.
According to an embodiment of the present invention, the second screen size calculating module 402 is specifically configured to perform weighted summation on sizes of first screens of at least two clients, and then obtain a size of the second screen by averaging, where a weight value corresponding to the size of the first screen is preset.
According to an embodiment of the present invention, the apparatus 40 further includes: the weight value setting module is used for presetting a weight value corresponding to the size of the first screen, wherein the smaller the size of the first screen is, the larger the weight value is.
According to an embodiment of the present invention, the second screen size calculating module 402 is specifically configured to determine the size of the second screen through calculation of a machine learning model by using the size of the first screen of at least two clients as an input of the machine learning model, where the machine learning model is established in advance.
According to a fourth aspect of the embodiments of the present invention, there is provided a synchronization apparatus for sharing a view, which is applied to a client, and as shown in fig. 5, the apparatus 50 includes: a first screen size obtaining module 501, configured to obtain a size of a first screen, where the first screen is a screen used by the client to display a shared view; a first screen size sending module 502, configured to send the size of the first screen to the server; a second screen receiving module 503, configured to receive a size of a second screen broadcasted by the server to the at least two clients, where the second screen is a virtual screen used for appointing the display range of the shared view, and the size of the second screen is determined according to the size of the first screen of the at least two clients; a scaling calculation module 504, configured to divide the size of the first screen by the size of the second screen to obtain a scaling of a display object, where the display object is an object to be displayed in the shared view; and a zooming display module 505, configured to zoom the display object according to a zooming ratio and display the zoomed display object on the first screen.
According to a fifth aspect of the embodiments of the present invention, there is provided a synchronization system for shared views, the system including a server and a client, wherein: the server side is used for executing the synchronization method applied to the shared view of the server side; and the client is used for executing the synchronization method applied to the shared view of the client.
Here, it should be noted that: the above description of the embodiment of the synchronization apparatus for shared views and the above description of the embodiment of the synchronization system for shared views are similar to the description of the foregoing method embodiments, and have similar beneficial effects to the foregoing method embodiments, and therefore, no further description is given. For the description of the embodiment of the synchronization apparatus for shared views and the description of the embodiment of the synchronization system for shared views, which are not disclosed in the present invention, please refer to the description of the foregoing method embodiments of the present invention for understanding, and therefore will not be described again for brevity.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
In the several embodiments provided in the present application, it should be understood that the disclosed apparatus and method may be implemented in other ways. The above-described device embodiments are merely illustrative, for example, the division of a unit is only one logical function division, and there may be other division ways in actual implementation, such as: multiple units or components may be combined, or may be integrated into another device, or some features may be omitted, or not implemented. In addition, the coupling, direct coupling or communication connection between the components shown or discussed may be through some interfaces, and the indirect coupling or communication connection between the devices or units may be electrical, mechanical or other forms.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units; can be located in one place or distributed on a plurality of network units; some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, all the functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may be separately regarded as one unit, or two or more units may be integrated into one unit; the integrated unit can be realized in a form of hardware, or in a form of hardware plus a software functional unit.
Those of ordinary skill in the art will understand that: all or part of the steps for realizing the method embodiments can be completed by hardware related to program instructions, the program can be stored in a computer readable storage medium, and the program executes the steps comprising the method embodiments when executed; and the aforementioned storage medium includes: various media capable of storing program codes, such as a removable storage medium, a Read Only Memory (ROM), a magnetic disk, and an optical disk.
Alternatively, the integrated unit of the present invention may be stored in a computer-readable storage medium if it is implemented in the form of a software functional module and sold or used as a separate product. Based on such understanding, the technical solutions of the embodiments of the present invention may be essentially implemented or a part contributing to the prior art may be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for enabling a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the methods of the embodiments of the present invention. And the aforementioned storage medium includes: a removable storage medium, a ROM, a magnetic disk, an optical disk, or the like, which can store the program code.
The above description is only for the specific embodiments of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present invention, and the changes or substitutions should be covered within the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.
Claims (10)
1. A synchronization method of shared views is applied to a server side to realize that even if the screen sizes of various clients are different, the display ranges in the shared views are consistent, the screen sizes refer to the screen sizes, and the display ranges refer to row ranges and column ranges in a spreadsheet, and the method comprises the following steps:
receiving a size of a first screen of at least two clients, wherein the first screen is a screen used by the clients to display a shared view;
determining the size of a second screen according to the size of a first screen of the at least two clients, wherein the second screen is a virtual screen for appointing the display range of the shared view;
broadcasting the size of the second screen to the at least two clients.
2. The method of claim 1, further comprising:
defining a first message type, wherein the first message type is used for transmitting the shared view synchronization message between the server side and the client side, and the shared view synchronization message comprises at least one of the size of the first screen and the size of the second screen.
3. The method of claim 1, the determining a size of a second screen from a size of a first screen of the at least two clients, comprising:
and judging whether the number of the clients of the at least two clients is more than or equal to 3, if so, removing a maximum value and a minimum value from the sizes of the first screens of the at least two clients, and averaging the rest values to obtain the size of a second screen.
4. The method of claim 1, the determining a size of a second screen from a size of a first screen of the at least two clients, comprising:
and after the sizes of the first screens of the at least two clients are weighted and summed, averaging to obtain the size of the second screen, wherein the weight value corresponding to the size of the first screen is preset.
5. The method of claim 4, after the weighted summing of the sizes of the first screens of the at least two clients, and before averaging to obtain the size of the second screen, the method further comprising:
presetting a weight value corresponding to the size of the first screen, wherein the smaller the size of the first screen is, the larger the weight value is.
6. The method of claim 1, the determining a size of a second screen from a size of a first screen of the at least two clients, comprising:
and taking the size of a first screen of the at least two clients as the input of a machine learning model, and determining the size of a second screen through the operation of the machine learning model, wherein the machine learning model is established in advance.
7. A synchronization method of shared views is applied to clients to realize that the display range in the shared views is consistent even if the screen sizes of the clients are different from each other, wherein the screen sizes refer to the screen sizes, and the display ranges refer to row ranges and column ranges in a spreadsheet, and the method comprises the following steps:
acquiring the size of a first screen, wherein the first screen is a screen used by the client to display a shared view;
sending the size of the first screen to a server;
receiving the size of a second screen broadcasted by a server, wherein the second screen is a virtual screen used for appointing the display range of the shared view, and the size of the second screen is determined according to the size of a first screen of at least two clients;
dividing the size of the first screen by the size of the second screen to obtain a scaling of a display object, wherein the display object is an object to be displayed in the shared view;
and zooming the display object according to the zooming proportion and displaying the zoomed display object on the first screen.
8. A synchronization device for shared views, which is applied to a server side to realize that even though the screen sizes of various clients are different, the display ranges in the shared views are consistent, wherein the screen sizes refer to the screen sizes, and the display ranges refer to the row ranges and the column ranges in a spreadsheet, the device comprises:
a first screen size receiving module, configured to receive a size of a first screen of at least two clients, where the first screen is a screen used by the client to display a shared view;
a second screen size calculation module, configured to determine a size of a second screen according to a size of a first screen of the at least two clients, where the second screen is a virtual screen used for appointing a display range of the shared view;
and the second screen size broadcasting module is used for broadcasting the size of the second screen to the at least two clients.
9. A synchronization apparatus for shared views, which is applied to clients to achieve that the display range in the shared views is uniform even if the screen sizes of the clients are different from each other, the screen sizes refer to the screen sizes, and the display ranges refer to the row ranges and the column ranges in a spreadsheet, the apparatus comprising:
a first screen size obtaining module, configured to obtain a size of a first screen, where the first screen is a screen used by the client to display a shared view;
the first screen size sending module is used for sending the size of the first screen to a server;
a second screen size receiving module, configured to receive a size of a second screen broadcasted by a server, where the second screen is a virtual screen used for appointing a display range of the shared view, and the size of the second screen is determined according to sizes of first screens of at least two clients;
a scaling calculation module, configured to divide the size of the first screen by the size of the second screen to obtain a scaling of a display object, where the display object is an object to be displayed in the shared view;
and the zooming display module is used for zooming the display object according to the zooming proportion and displaying the zoomed display object on the first screen.
10. A synchronization system for shared views, the system comprising a server side and a client side, wherein:
the server side, configured to execute the synchronization method for shared views according to claim 1;
the client, configured to execute the synchronization method for shared views according to claim 7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010977078.4A CN111930330B (en) | 2020-09-17 | 2020-09-17 | Method, device and system for synchronizing shared views |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010977078.4A CN111930330B (en) | 2020-09-17 | 2020-09-17 | Method, device and system for synchronizing shared views |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111930330A CN111930330A (en) | 2020-11-13 |
CN111930330B true CN111930330B (en) | 2021-02-09 |
Family
ID=73335049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010977078.4A Active CN111930330B (en) | 2020-09-17 | 2020-09-17 | Method, device and system for synchronizing shared views |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111930330B (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113535645B (en) * | 2021-03-11 | 2023-08-18 | 北京字跳网络技术有限公司 | Display method and device of shared document, electronic equipment and storage medium |
CN113010136B (en) * | 2021-05-24 | 2021-09-07 | 全时云商务服务股份有限公司 | Method and system for intelligently amplifying shared desktop and readable storage medium |
CN115514736A (en) * | 2021-06-08 | 2022-12-23 | 广州视源电子科技股份有限公司 | Screen sharing method and device and intelligent interactive panel |
CN115499693B (en) * | 2022-08-09 | 2024-10-15 | 深圳市酷开网络科技股份有限公司 | Multi-screen different display control method, device and system, storage medium and electronic equipment |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102859480A (en) * | 2010-02-03 | 2013-01-02 | 斯凯普公司 | Screen sharing |
CN103294428A (en) * | 2012-03-02 | 2013-09-11 | 联想(北京)有限公司 | Information display method and electronic equipment |
CN104020968A (en) * | 2013-02-28 | 2014-09-03 | 中兴通讯股份有限公司 | Shared screen displaying control method and device |
CN106339192A (en) * | 2016-08-24 | 2017-01-18 | 腾讯科技(深圳)有限公司 | Area sharing method and device as well as system |
US10379593B2 (en) * | 2015-10-23 | 2019-08-13 | Samsung Electronics Co., Ltd. | Image displaying apparatus and method of operating the same |
-
2020
- 2020-09-17 CN CN202010977078.4A patent/CN111930330B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102859480A (en) * | 2010-02-03 | 2013-01-02 | 斯凯普公司 | Screen sharing |
CN103294428A (en) * | 2012-03-02 | 2013-09-11 | 联想(北京)有限公司 | Information display method and electronic equipment |
CN104020968A (en) * | 2013-02-28 | 2014-09-03 | 中兴通讯股份有限公司 | Shared screen displaying control method and device |
US10379593B2 (en) * | 2015-10-23 | 2019-08-13 | Samsung Electronics Co., Ltd. | Image displaying apparatus and method of operating the same |
CN106339192A (en) * | 2016-08-24 | 2017-01-18 | 腾讯科技(深圳)有限公司 | Area sharing method and device as well as system |
Also Published As
Publication number | Publication date |
---|---|
CN111930330A (en) | 2020-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111930330B (en) | Method, device and system for synchronizing shared views | |
RU2704495C1 (en) | Method and device for sending an electronic book | |
TWI556120B (en) | A method of determining a page element in a web page, and a device | |
CN106339192B (en) | Region sharing method, device and system | |
CN112965650B (en) | Thermodynamic diagram visualization method, thermodynamic diagram visualization system and thermodynamic diagram visualization computer equipment | |
EP4060455A1 (en) | Managing content based on battery usage in displaying the content on devices | |
CN112511856B (en) | Virtual resource pushing method, device and server | |
CN109640176B (en) | Method and apparatus for generating information | |
CN109460496B (en) | Method and device for realizing data display | |
CN108037904B (en) | Visual data pushing method and system | |
JP2012047945A (en) | Content display control method, content display control device and content display system | |
CN112463254A (en) | Method, device and equipment for acquiring webpage loading time and storage medium | |
CN115202599A (en) | Screen projection display method and related device | |
CN107247657B (en) | Method, device and system for displaying webpage coordinate click rate | |
CN106157347A (en) | Resource exchange data processing method, device and system | |
Testolina et al. | Towards JPEG AIC part 3: visual quality assessment of high to visually lossless image coding | |
CN106033576B (en) | Object information display method and device | |
CN113365088B (en) | Data processing method, data processing apparatus, electronic device, storage medium, and program product | |
CN113473240B (en) | Data processing method and device for live broadcasting room, electronic equipment and storage medium | |
WO2013152663A1 (en) | Method and device for presenting published information | |
CN114168130A (en) | Buried point data reporting method and device, electronic equipment and storage medium | |
CN112463089A (en) | Cross-terminal picture synchronous zooming method and device, electronic medium and storage medium | |
CN113760205A (en) | Picture display method and device | |
CN113535993A (en) | Work cover display method, device, medium and electronic equipment | |
CN112612847B (en) | Method and device for processing data based on drill-down analysis scene |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |