The present invention relates to a book display program which displays a book on a display device and to a book display device.
Conventionally, there has been a technique of two-dimensionally or three-dimensionally displaying a book on display screens of a computer, a mobile terminal, and the like.
For example, the following techniques can be given as specific examples.
One of the techniques is to control a display system in a case where a specified number of virtual pages are split from one of two three-dimensional virtual objects and are turned and merged with the other three-dimensional virtual object. Here, the other three-dimensional virtual object is referred to as first three-dimensional virtual object. A three-dimensional virtual object formed of virtual pages remaining in the one three-dimensional virtual object after the specified number of virtual pages are split therefrom is referred to as second three-dimensional virtual object. A three-dimensional virtual object formed of the specified number of virtual pages is referred to as third three-dimensional virtual object. The third three-dimensional virtual object is moved from the second three-dimensional virtual object to the first three-dimensional virtual object as if the virtual pages are turned. In the movement of the third three-dimensional virtual object, the following states are maintained: two virtual pages of a spread are connected to each other at a first reference line; and two virtual pages of the third three-dimensional virtual object and the second three-dimensional virtual object which form a new spread as a result of the moving of the third three-dimensional virtual object to the position of the first three-dimensional virtual object are connected at a second reference line. Moreover, a plane of the virtual page of the first three-dimensional virtual object in the spread moves away from a virtual plane and a plane of the virtual page of the second three-dimensional virtual object in the new spread approaches the virtual plane. When the movement of the third three-dimensional virtual object to the position of the first three-dimensional virtual object is completed, the planes of the two virtual pages of the third three-dimensional virtual object and the second three-dimensional virtual object which form the new spread faces the virtual plane (for example, see Japanese Patent No. 4761764).
Moreover, another one of the techniques is as follows. A first turning boundary spanning the first and second pages is defined. The first turning boundary is defined by an arc having a radius defined by a distance between a first location and a top location of a shared boundary. The top location is located at the center of the arc defining the first turning boundary. A second turning boundary spanning the first and second pages is defined. The second turning boundary is defined by an arc having a radius defined by a distance between the first location and a bottom location of the shared boundary. The bottom location is located at the center of the arc defining the second turning boundary. The first and second turning boundaries intersect to define a turning area. A movement of a pointer from the first location to a second location within the turning area is traced. A visual effect of bending the second page boundary along the traced movement from the first location to the second location is produced (for example, see Japanese Patent No. 5992934).
The aforementioned conventional techniques belong to a field of displaying a virtual image of an actually-existing book and focus on faithfully reproducing the book on a screen as if the actual book is viewed. Accordingly, the technology has not yet reached the level of virtual display of a book with sufficient consideration to enable a user to read a book easily and to solve unique problems due to the particularity of displaying a book in a virtual space.
An object of the disclosed technique is to further improve convenience in reading of a virtual book displayed on a display screen by allowing the user to easily handle the virtual book in a virtual space.
The disclosed technique provides a non-transitory computer-readable medium storing book display program which causes a computer to execute instructions comprising: receiving a command to change a display image of a virtual book displayed on a display unit from an operator, the book including a content; generating display control information to be applied to the display unit and used to control transition of the display image of the book; and three-dimensionally or two-dimensionally displaying the book based on the display control information. The generating display control information includes: obtaining a display state of the book; and selecting one of command conversion rules based on at least the display state, the one command conversion rule selected to be applied to the received command and used to generate the display control information.
The disclosed technique can further improve convenience in reading of a virtual book displayed on a display screen by allowing the user to easily handle the virtual book in a virtual space.
An embodiment is described below with reference to the drawings. Note that elements in a method and a program can be executed with their orders changed as long as there is no contradiction. Moreover, each element can be executed in parallel with another element. Furthermore, not all elements are necessary and some of the elements may be eliminated or not executed as long as there is no contradiction. Moreover, the elements may be executed by an operating system or a hardware. Furthermore, the program may be stored in a tangible non-transitory medium and distributed.
Three-dimensionally displaying a book on a display screen as described above allows a user to read the book as in reading of an actual book.
The book display device 10 includes a display unit 102, a content state recognizer 104, a display control information generator 106, a command receiver 110, and a hardware state recognizer 108. Moreover, the display control information generator 106 includes a display state obtainer 114 and a command conversion rule selector 112.
The display unit 102 two-dimensionally or three-dimensionally displays a virtual book with a content.
The content state recognizer 104 recognizes content states. For example, the content state recognizer 104 recognizes content states such as whether there is a frame of a comic spanning across left and right pages of a spread of an opened book, whether the content includes a video, and whether the content includes a moving image. The display control information generator 106 can select an appropriate display rule based on this recognition result. Alternatively, additional display control information may be generated for the display rule.
The display control information generator 106 can control a display image of the virtual book to be displayed on the display unit 102 by generating display control information relating to the display image of the virtual book and providing the generated display control information to the display unit 102.
The command receiver 110 receives commands from a user operating the book display device, a user in a remote location, a server device to which the book display device 10 is connected via a network, and the like. The received commands are sent to the display control information generator 106 and are used for the generation of the display control information relating to displaying of the virtual book. Moreover, the display control information may be generated according to the received commands based on a command conversion rule selected by the command conversion rule selector 112.
The hardware state recognizer 108 recognizes states of a device such as a mobile terminal, a tablet, or a laptop or a computer such as a desktop personal computer having the display unit. For example, the hardware state recognizer 108 recognizes a hardware states such as whether the mobile terminal is in a portrait-oriented state or a landscape-oriented state by utilizing information of a gyroscope sensor of the mobile terminal and the like. Moreover, the hardware state recognizer 108 recognizes the hardware states such as whether a display of the desktop personal computer is in the portrait-oriented state or the landscape-oriented state by utilizing information of a sensor in a desktop display and the like. The recognized states are sent to the display control information generator 106.
Moreover, the display state obtainer 114 included in the display control information generator 106 can recognize display states such as, for example, whether the book is displayed as a spread, whether only one of left or right pages is displayed, whether the book is displayed as viewed in a tilted direction, and whether a content portion of the book is displayed in an enlarged manner. The display state obtainer 114 can obtain the display states by monitoring the display control information or display information of the book displayed on the display unit 102.
Moreover, the command conversion rule selector 112 included in the display control information generator 106 selects an appropriate command conversion rule from multiple command conversion rules based on various pieces of information, the command conversion rules used to convert the commands from the user to the display control information. Note that the display control information may be generated based not only on outputs obtained according to the command conversion rule but also on various states. Note that, although specific commands are described in the following embodiment, these commands are examples and other commands similar to the commands given as examples may be used as a matter of course.
The book display device 10 configured as described above can display a virtual book based on appropriate display control information while considering the commands of the user, the hardware states, the content states, the display states, and the like.
More detailed operations of the book display device 10 are the same as operations explained by using a case example and a processing flow. Specifically, since the more detailed operations of the book display device 10 are the same as the following description explaining the method and the program, description of the detailed operations of the book display device 10 is omitted to avoid overlapping explanation.
The network interface 205 is connected to a network 215. The network 215 includes a wired LAN, a wireless LAN, the Internet, a phone network, and the like. An input unit 216 is connected to the input interface 206. A display unit 217 is connected to the display interface 207. A storage medium 218 is connected to the external memory interface 208. The storage medium 218 may be a RAM, a ROM, a CD-ROM, a DVD-ROM, a hard disk, a memory card, a USB memory, or the like.
The program and the method for implementing the aforementioned embodiment can be executed by a computer including the hardware configurations illustrated in
The embodiments may be implemented as a hardware device.
The embodiments disclosed in this application do not limit the invention described in the claims and are handled as examples as a matter of course.
[S402] The book display program receives a command from a user who is an operator. Examples of the command include tap, flick, tracing, pinch-in, pinch-out, and the like on a touch panel provided on the display screen. Moreover, the examples of the command include click, drag, drop, and the like with a mouse. Furthermore, the examples of the command include voice, sounds, a sound made by tapping a housing with the finger or the like, and the like. Moreover, the examples of the command include a button operation, a key operation, and the like. Note that the command is not limited to the aforementioned examples.
Although the examples of the command are described above, all of the examples listed in the case example of the present application are examples and do not limit the present disclosure.
The processing flow proceeds to step S404.
[S404] The book display program recognizes the hardware states. Examples of the hardware states include the following states.
The aspect ratio of the mobile terminal is an aspect ratio of the landscape-oriented state.
The mobile terminal is slightly vibrating parallel to the display screen.
The display terminal is assumed to be a laptop, a desktop, a smartphone, a tablet, or the like from the aspect ratio of the display screen.
The set language of the operating system installed in the hardware is English.
These states are the examples of the hardware states. As described above, the state of a basic program such as the operating system may be also detected. The processing flow proceeds to step S406.
[S406] The book display program recognizes the content states. Examples of the content states include the following states.
A content of left and right pages of an opened book is a content having one meaning across two pages (for example, one frame in a comic or the like drawn over two pages).
A video is embedded in the content of the opened page.
A display effect is embedded in the content of the opened page.
A content generating sound is included in the opened page.
The recognition of the content may be achieved by analyzing the content or by including identifiers, flags, or the like corresponding to the content states in the content in advance. The processing flow proceeds to step S410.
[S410] The book display program generates the display control information based on the display states, the hardware states, the content states, and the like obtained in the aforementioned steps.
[S420] The book with the content is displayed on the display screen based on the display control information. The processing flow proceeds to step S422.
[S422] The book display program checks whether the processing is to be terminated. The processing is terminated in response to, for example, an explicit instruction of termination processing made by the operator. Alternatively, the termination of the processing may be triggered by execution of a menu operation or the like. When the result of this check is YES, the processing is terminated. When the result of this check is NO, the processing flow returns to step S402.
The flow of the outline of the processing is as described above.
[S502] The book display program obtains the display states of the displayed virtual book. The display states can be obtained by, for example, monitoring the display control information successively. Examples of the display states include the following states.
The entire book is displayed as a spread.
One of the left and right pages of the book is substantially entirely displayed and the other page is partially displayed.
A page is displayed as viewed in a direction of a line extending substantially perpendicular to a surface of the book.
A page is displayed as viewed in a direction tilted with respect to the surface of the book.
The processing flow proceeds to step S504.
[S504] The book display program selects the command conversion rule used to convert the received command to the display control information. The command conversion rule may be determined in advance and there are multiple command conversion rules. The command conversion rule may be selected from the multiple command conversion rules depending on the display states, the hardware states, the content states, and the like. Alternatively, the display control information outputted based on the command conversion rule selected depending on the recognized display states may be corrected depending on the hardware states, the content states, and the like.
When the processing of step S504 is completed, the processing flow returns to the caller of the processing.
In this case, an operation of page turning or turning of the book as described later is not performed and instead the portion of the magnified content which is displayed is moved. Specifically, in this case, the display state is recognized to be a state in which the content is displayed at a predetermined magnification ratio or more. In this case, the portion of the magnified content which is displayed can be slid and displayed by performing, for example, the operation of sliding the finger over the screen. Note that the same display control may be executed by performing a drag operation of a mouse instead of the operation of sliding the finger.
This can prevent display changes unexpected by the user such as an operation of page turning executed while the user is viewing the content with the content enlarged. Since the user naturally desires to view the magnified content which is displayed together with their surroundings, performing such display control can improve the convenience of the user.
[S702] The book display program checks whether the content is displayed at the predetermined magnification ration ratio or more. When the result of this check is YES, the processing flow proceeds to step S704. When the result of this check is NO, the processing flow returns to the caller of the processing.
[S704] Since the content is displayed at the predetermined magnification ratio or more, the book display program selects, for example, the command conversion rule according to which the content is slid and displayed in response to flick or slide command on the display screen. The display screen thereby slides depending on the movement of the finger and another portion of the content is displayed on the display screen. Note that the command is not limited to flick and slide and may be dragging with the mouse. Alternatively, the command may be pressing of an arrow key.
When this processing is completed, the processing flow returns to the caller of the processing.
[S902] The book display program checks whether the display image of the book on the display screen is a display image of a spread in which the left and right pages of the book are substantially entirely visible. When the result of this check is YES, the processing flow proceeds to step S904. When the result of this check is NO, the processing flow returns to the caller of the processing.
[S904] The book display program selects the command conversion rule according to which the page turning is displayed in response to a tap command or the flick or swipe command in the crosswise direction.
When this processing is completed, the processing flow returns to the caller of the processing.
When the user gives an instruction by giving the tap command or the flick or swipe command in the crosswise direction while the left and right pages of the book are substantially entirely displayed, it is highly likely that this instruction is the instruction of page turning. Accordingly, the page turning is displayed by the aforementioned processing. The convenience of the user can be thus improved.
At a terminal with a portrait-oriented display screen such as a mobile terminal, reading of a book can be made easier for the user by substantially entirely displaying one of the left and right pages of the book and not displaying or partially displaying the other page, rather than displaying the book as a spread.
However, it was found that, when the book is virtually three-dimensionally displayed, efforts to make the reading of the book easier for the user need to be made among the displaying of one page, the page turning, and smooth movement of the display region. The example described below is an example of display control.
First, the processing flow of
Window W1 denotes a window region displayed on the display screen of the mobile terminal or the like. Moreover, the pages of the book are denoted by numbers in the order of the pages to facilitate understanding.
At the time point t1, page 2 is displayed in the window W1. Assume that the book display device receives the page turning command from the user in this case.
At the time point t2, the page turning processing is performed. When the position of the window W1 is not moved in this case, page 4 is displayed in the window W1.
At the time point t3, the window W1 is smoothly moved in the direction m11 and page 3 is displayed in the window W1.
At the time point t4, the window W1 is smoothly moved in the direction m12 and page 4 is displayed in the window W1.
In the series of processes described above, the user views the pages in the order of page 2, page 4, page 3, and page 4 and page 4 is consequently displayed before page 3. The order of reading by user is thereby disturbed.
Next, the processing flow of
Window W2 denotes the window region displayed on the display screen of the mobile terminal or the like. Moreover, the pages of the book are denoted by numbers in the order of the pages to facilitate understanding.
At time point t1, page 2 is displayed in the window W2. Assume that the book display device receives the page turning command from the user in this case.
At the time point t2, the page turning processing is performed. In this case, the position of the window W2 is smoothly moved in the direction m21. Both of part of page 1 and page 3 in the middle of the page turning are displayed in the window W2.
At the time point t3, entire page 3 is displayed in the window W2.
At the time point t4, the window W2 is smoothly moved in the direction m22 and page 4 is displayed in the window W2.
In the series of processes described above, the user views the pages in the order of page 2, page 3 in the middle of page turning (and part of page 1), page 3, and page 4. Accordingly, it is possible to avoid the case where page 4 is displayed before page 3. This can sufficiently reduce the disruption to the order of reading by the user.
As described above, the processing of
When the page P1 is to be mainly displayed on the display screen, it is desirable that a three-dimensional image obtained based on the virtual line of sight B is displayed. This allows the content in a curved portion near a boundary between the left and right pages of the book to be displayed in a manner easily recognizable by the user.
Similarly, when the page P2 is to be mainly displayed on the screen, it is desirable that a three-dimensional image obtained based on the virtual line of sight A is displayed. This allows the content in a curved portion near the boundary between the left and right pages of the book to be displayed in a manner easily recognizable by the user.
[S1202] The book display program checks whether the one page is mainly substantially entirely displayed. When the result of the check is YES, the processing flow proceeds to step S1204. When the result of the check is NO, the processing flow returns to the caller of the processing.
[S1204] The book display program selects the command conversion rule according to which the page turning or switching from one page to another page is displayed in response to the tap command or the flick or swipe command in the left-right direction. Note that the command of turning the page forward or backward is not limited to these commands. The processing flow proceeds to step S1206.
[S1206] In the case of the page turning, the book display program selects the command conversion rule according to which the display region is moved from one side to the other side of a spread during the page turning such that the content in a region of a page on the back side of a virtual sheet being turned is substantially entirely displayed before the content of a page facing the page on the back side is substantially entirely displayed. This processing describes the processing illustrated in
Note that sliding the window W2 from one page to the other page of a spread allows a page not displayed yet out of the pages of the spread to be displayed. In this case, no page turning processing is performed as a matter of course. The processing flow proceeds to step S1208.
[S1208] The book display program selects a command conversion rule according to which the direction of viewing the page is changed. Specifically, it is desirable to change the direction of the virtual line of sight as illustrated in
The aforementioned processing enables execution of display processing which makes it easier for the user to view the book when one page is displayed on the portrait-oriented display screen of the mobile terminal or the like. When this processing is completed, the processing flow returns to the caller of the processing.
The instruction of page turning and the instruction of turning the display image of the entire book can be thus distinguished by giving the flick or swipe command in the substantially horizontal direction or the substantially vertical direction as described above. Instructions for various types of processing on the book can be thereby given by using a very simple user interface.
[S1402] The book display program checks whether the book is displayed in the spread state. When the result of the check is YES, the processing flow proceeds to step S1406. When the check result is NO, the processing flow proceeds to step S1404.
[S1404] The book display program checks whether the book is in the one-page display state. When the result of the check is YES, the processing flow proceeds to step S1406. When the result of the check is NO, the processing flow returns to the caller of the processing.
[S1406] The book display program selects the command conversion rule according to which the book is displayed such that the display image of the book is three-dimensionally turned in response to a series of commands inputted after the flick or swipe in the up-down direction until the finger is removed. This processing is the processing illustrated in
When this processing is completed, the processing flow returns to the caller of the processing.
Note that, since the processing illustrated in
It is often difficult for the user to recognize the content on the display screen displaying one page as viewed along a line of sight extending in a tilted direction. Accordingly, in moving to another page such as page turning and parallel moving to another page, it is desirable to change (return) a display image of the page after the moving to an image as viewed along the line of sight extending in a direction substantially perpendicular to the sheet surface.
[S1602] The book display program checks whether one page is displayed as viewed along a line of sight tilted at a predetermined angle or more with respect to the sheet surface. When the result of the check is YES, the processing flow proceeds to step S1604. When the result of the check is NO, the processing flow returns to the caller of the processing.
[S1604] The book display program selects a command conversion rule according to which the display image of the book is changed to a display image in which the book is viewed substantially from the front of the page at a predetermined magnification ratio in an event of executing display transition of the page turning of the book or display transition from one page to another page.
When this processing is completed, the processing flow returns to the caller of the processing.
In
Accordingly, it is desirable to store a range of magnification ratio as described above in advance and, when the magnification ratio is set within this range, maintain the set magnification ratio in an event of performing the page switching processing. The book can be thereby displayed in a way easy for the user to read with the magnification ratio preferred by the user maintained.
[S1802] The book display program checks whether the left and right pages are displayed as a spread and the content of the left and right pages is substantially entirely displayed within the predetermined range of magnification ratio or checks whether the content of one of the left and right pages is substantially entirely displayed and the content of the other page is not displayed or is partially displayed within the predetermined range of magnification ratio. When the result of the check is YES, the processing flow proceeds to step S1804. When the result of the check is NO, the processing flow returns to the caller of the processing.
[S1804] The book display program selects the command conversion rule according to which the page turning or sliding from one page to the other page is displayed with the magnification ratio of the display image maintained.
When this processing is completed, the processing flow returns to the caller of the processing.
Moreover, there may be a case where a terminal with a rectangular screen is turned to switch from a state where the screen is in the portrait-oriented position to a state where the screen is in the landscape-oriented position. In this case, if the mode employed in the portrait-oriented position is the mode of displaying one page, it is desirable to change the mode to the spread mode when the screen is switched to the landscape-oriented position.
A mode in which the user can easily read the book is thereby automatically selected.
Moreover, when the user turns the screen to the portrait-oriented position while the book is displayed as a spread on the screen in the landscape-oriented position, the mode may be switched to the mode of displaying one page. Alternatively, the configuration may be such that the user can set whether the mode is changed to the mode of displaying one page or maintained in the mode of double-page spread in initial settings.
[S2002] The book display program checks whether the display screen has a long width with the aspect ratio is wider than a predetermined aspect ratio. When the result of the check is YES, the processing flow proceeds to step S2004. When the result of the check is NO, the processing flow returns to the caller of the processing.
[S2004] The book display program generates the display control information that disables selection of the display mode of displaying only one of the left and right pages on the display unit.
When this processing is completed, the processing flow returns to the caller of the processing.
Note that, when the user turns the terminal from a landscape display mode to a portrait display mode, the processing as described with reference to
When the user is on a train or the like and the mobile terminal or the like is slightly moving parallel to the screen, the screen is sometimes difficult to view. Whether the screen is difficult to view varies depending on the amplitude, frequency, and the like of vibration. When the frequency of the vibration is low, the visibility of the screen often does not decrease. Moreover, when the amplitude is large, the body tends to move together with the mobile terminal or the like and thus the visibility of the screen often does not decrease.
Accordingly, it is desirable to set in advance whether to move the image displayed on the screen to cancel out the vibration of the screen or not, depending on the frequency and the amplitude of the vibration. Setting information includes ranges of the frequency and amplitude of the vibration and the like.
A display image easier for the user to view can be thereby achieved.
[S2102] The book display program checks whether the hardware including the display unit is slightly moving in a direction parallel to the display screen. When the result of the check is YES, the processing flow proceeds to step S2104. When the result of the check is NO, the processing flow returns to the caller of the processing. Note that, in this determination, it is desirable to set the ranges of the frequency and amplitude of the vibration in advance.
[S2104] The display position of the book is moved to cancel out the slight movement.
When this processing is completed, the processing flow returns to the caller of the processing.
When the book includes the content spanning across the left and right pages as described above, it is desirable to display the book in the spread mode.
In this case, the content may include a flag indicating that the book includes the content spanning across the left and right pages. Alternatively, the book display program may recognize that the book includes a content spanning across the left and right pages by means of pattern recognition.
[S2302] The book display program checks whether the opened book includes a content spanning across the left and right pages. When the result of the check is YES, the processing flow proceeds to step S2104. When the result of the check is NO, the processing flow returns to the caller of the processing.
[S2304] The book display program generates the display control information that causes the mode of displaying the left and right pages as a spread to be selected.
When this processing is completed, the processing flow returns to the caller.
As described above, processing of displaying a virtual book with excellent convenience for the user can be thereby achieved.
While several embodiments of the invention were described in the foregoing detailed description, those skilled in the art may make modifications and alterations to these embodiments without departing from the scope and spirit of the invention. Accordingly, the foregoing description is intended to be illustrative rather than restrictive.
Number | Date | Country | Kind |
---|---|---|---|
2019-107500 | Jun 2019 | JP | national |
This application claims priority to International Application Serial No. PCT/JP2019/035072, filed Sep. 5, 2019, which claims priority to Japanese Patent Application No. 2019-107500, filed Jun. 7, 2019. The contents of these applications are incorporated herein by reference in their entirety.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/JP2019/035072 | Sep 2019 | US |
Child | 17238208 | US |