This disclosure relates generally to an electronic book technology, in one example embodiment, to a system, method and/or apparatus to create and expose an embedded secondary content data relevant to a primary content page of an electronic book through a Y-axis gesture at a notification region in the primary content page.
Humans have a curiosity to look behind things. For example, a person may look behind doors, peek out of windows, and open up presents. The sense of anticipation followed by surprise associated with such an act creates feelings of enjoyment and satisfaction at finding what was initially hidden from plain view. This curiosity does not diminish when one is reading a book or magazine. In both cases, the reader will often be curious to learn the meaning of a word or the history behind a subject presented in the text of the book or magazine. For example, a child reading the Harry Potter® book series may want to know the origin of the word “wizard” or brush up on the history of medieval Europe.
One way that a reader can satisfy this curiosity is by having, on hand, reference texts such as encyclopedias, dictionaries, or textbooks related to the various subjects the reader finds interesting. However, such reference texts are often expensive and cumbersome to transport and bringing such texts along whenever one is in the mood for a good story diminishes the reading experience. While electronic books (or e-books) have enabled readers to store multiple texts in one place, the reader is still required to predict which electronic reference texts are necessary to satisfy the reader's sense of curiosity going forward and to have such electronic reference texts loaded on the e-book before starting a new book or story. Unfortunately, the reader cannot always predict which reference texts will be necessary and whether such texts will satisfy his or her sense of curiosity before starting a good book.
Disclosed are several methods, apparatus, and a system to create, expose, and hide embedded secondary content data relevant to a primary content page of an electronic book generated by a content generating device. In one aspect, the method, system, and apparatus is enabled through a Y-axis slide apart gesture that is applied to a notification region of the primary content page such that the secondary content data is made visible when the Y-axis slide apart gesture is applied to the notification region. The method, system, and apparatus is also enabled through a Y-axis pinch close gesture that is applied to a boundary of an exposed pane that is appearing in the primary content page such that the Y-axis pinch close gesture collapses the exposed pane in which the secondary content data is made visible.
In one aspect, a system includes an association server, an electronic book distribution server, a primary content database, a secondary content database and a content rendering device. In one aspect, the association server embeds a secondary content data from a secondary content database with a primary content page of an electronic book from a primary content database. This may be done to make operable a Y-axis slide apart gesture that is applied to a notification region of at least one of the primary content pages such that at least one of the secondary content data may be made visible when the Y-axis slide apart gesture is applied to the notification region. The electronic book distribution server may provide access to the electronic book having at least one secondary content data and at least one of the primary content pages. The content rendering device may generate at least one of the primary content pages embedded with at least one secondary content data when the electronic book is accessed through the electronic book distribution server.
In one aspect, the association server makes operable a Y-axis pinch close gesture that may be applied to a boundary of an exposed pane that is appearing in at least one of the primary content pages such that the Y-axis pinch close gesture collapses the exposed pane in which at least one of the secondary content data is made visible.
In another aspect, at least one of the primary content pages may be part of a literary work of authorship comprised primarily of literary content such that the literary work of authorship is comprised of primary content pages in which each subsequent primary content page further builds upon content described in at least some previous primary content page in a fashion such that an internal content of the literary work of authorship maintains a cohesive whole describing a theme of the literary work of authorship.
In yet another aspect, at least one of the secondary content data may be related to at least one of the primary content pages in a manner such that at least one of the secondary content data maintains a thematic relationship with at least one of the primary content pages it references.
Moreover, the secondary content data may be comprised of: a textual content related to at least one of the primary content pages, a multimedia content related to at least one of the primary content pages, a video content related to at least one of the primary content pages, a pictorial data related to at least one of the primary content pages, an explanatory data related to at least one of the plurality of primary content pages, a translation of at least one of the plurality of primary content pages, an advertisement related to at least one of the plurality of primary content pages, a summary data related to at least one of the plurality of primary content pages, and an interactive game related to at least one of the plurality of primary content pages.
The Y-axis slide apart gesture may be applied to the notification region of at least one of the plurality of primary content pages to separate a content adjacent to the notification region in a manner such that the content adjacent to the notification region separates synchronously with an open tactile motion of the Y-axis slide apart gesture and reveals the exposed pane through which at least one of the secondary content data is made visible.
The content rendering device may access at least one of the secondary content data from a remote source through a network, so as to enable at least one of the secondary content data to be refreshed in real-time based on a present state of the secondary content data.
The content rendering device may also access at least one of the secondary content data from a local storage on the content rendering device, so as to enable the content rendering device to be untethered from a network when accessing at least one of the secondary content data.
In another aspect, a method of an association server comprises: determining that at least one of a secondary content data may be associated with at least one of a primary content page based on the relevancy of at least one of the secondary content data with a semantic analysis of the literal expression on the primary content page. The method also comprises compiling a compiled content of an electronic book having at least one primary content page and at least one secondary content data. In addition, the method includes selecting a notification type from a notification library and placing the notification type in a notification region of the primary content page. Finally, the method includes embedding a Y-axis slide apart gesture module to the notification region of at least one of the primary content pages and embedding a Y-axis pinch close gesture module to at least one of the primary content pages.
In yet another aspect, the method of an association server makes operable a Y-axis slide apart gesture applied to the notification region of at least one of the primary content pages through an open function of the Y-axis slide apart gesture module such that at least one of the secondary content data is made visible in an exposed pane on the primary content page.
Additionally, the method of an association server makes operable a Y-axis pinch close gesture applied to a boundary of an exposed pane that may appear in at least one of the primary content pages through a close function of the Y-axis pinch close gesture module. By doing so, the Y-axis pinch close gesture collapses the exposed pane in which at least one of the secondary content data is made visible.
Finally, disclosed is an association server comprising: a compilation module, a notification placement module, and a gesture application module. The compilation module may create a compiled content of an electronic book comprising a plurality of primary content pages and a plurality of secondary content data where least one of the primary content pages is thematically associated with at least one of the secondary content data. The notification placement module may select a notification type from a notification library and may place the notification type in a notification region of at least one of the primary content pages.
Finally, a gesture application module may make visible at least one of the secondary content data in at least one of the primary content pages through a Y-axis slide apart module when a Y-axis slide apart gesture is applied to a notification region of at least one of the primary content pages. A Y-axis pinch close gesture restores at least one of the primary content pages to its original form through a Y-axis pinch close module when a Y-axis pinch close gesture is applied to an exposed pane containing at least one of the secondary content data associated with a primary content page of an electronic book generated by a content rendering device.
The methods disclosed herein may be implemented in any means for achieving various aspects, and may be executed in a form of a machine-readable medium embodying a set of instructions that, when executed by a machine, cause the machine to perform any of the operations disclosed herein. Other features will be apparent from the accompanying drawings and from the detailed description that follows.
Example embodiments are illustrated by way of example and are not limited to the figures of accompanying drawings, in which like references indicate similar elements and in which:
Other features of the present embodiments will be apparent from accompanying drawings and from the detailed description that follows.
Example embodiments, as described below, may be used to provide several methods, a system, and an apparatus to create and expose secondary content data relevant to a primary content page of an electronic book. Although the present embodiments have been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the various embodiments.
Reference is now made to
In one embodiment, at least one of the plurality of secondary content data 114 may be embedded with at least one of the plurality of primary content pages 112 by associating a file object of the secondary content data 114 with the primary content page 112 expressed as machine-readable code. Such machine-readable code may comprise code expressed as at least one of a markup language, a syndication language, a metadata language, a style sheet language, a client-side scripting language, a server-side scripting language, and a database language. In one embodiment, the embedded secondary content data 114 may be activated using a plug-in. The embedded secondary content data 114 may be activated using a function call, a call program, an executable script, and/or a self-executing program.
In another embodiment, at least one of the plurality of secondary content data 114 may be embedded with at least one of the plurality of primary content pages 112 through an embed tag. In yet another embodiment, at least one of the plurality of secondary content data 114 may be embedded with at least one of the plurality of primary content pages 112 by attaching a file of the secondary content data 114 to at least one of the plurality of primary content pages 112 through a file attachment annotation.
In one embodiment, at least one of the plurality of primary content pages 112 is a page of content from at least one of an electronic book, an electronic periodical, an electronic manuscript, an electronic recipe, an electronic manual, and an electronic work of authorship.
In one embodiment, the association server 100 makes operable a Y-axis slide apart gesture 200 (see
In one embodiment, the association server 100 may comprise at least a processor, a memory, and a software program where the software program stored in the memory of the association sever 100 may be executed by the processor to make visible the secondary content data 114 when the Y-axis slide apart gesture is applied to the notification region 202 of the primary content page 112. In one embodiment, the program comprises an interface module allowing the user to interact with the content rendering device 108. The interface module may initiate a functional call to make visible the secondary content data 114 when the user applies the Y-axis slide apart gesture to a portion of display of the content rendering device 109 where the notification region 202 is located. In another embodiment, the Y-axis slide apart gesture 200 applied to the display of the content rendering device 108 may trigger a capacitive touch mechanism detected by the association server 100.
In one embodiment, the association server 100 references data comprising the primary content page 112 from the primary content database 102 through a wired and/or wireless network. The wired and/or wireless network may comprise at least one of a wireless communication network, an optical and/or infrared link, and a radio frequency link (e.g., Bluetooth®). The wireless communication network may be a local, proprietary network (e.g., an intranet) and/or may be a part of a larger wide-area network. The wireless communication network may also be a local area network (LAN), which may be communicatively coupled to a wide area network (WAN) such as the Internet.
In another embodiment, the association server 100 references database content from the secondary content database 104 through the previously described wired and/or wireless network (e.g., the Internet). The association server 100 may then transmit at least one of an associated electronic book, a compiled electronic book, and/or a compiled content 710 (see
The electronic book distribution server 106 may comprise at least a processor, a memory, and a software program where the software program is stored in the memory of the association sever 100 and may be executed by the processor having a set of instructions to perform a variety of functions on the set of data associated with the various embodiments. In one embodiment, the electronic book distribution server 106 provides access to the electronic book having at least one of the plurality of secondary content data 114 and at least one of the plurality of primary content pages 112. The electronic book distribution server 106 may include, but are not limited to: a Barnes & Noble electronic book distribution server, an Amazon® electronic book distribution server, a Google® distribution server, a Microsoft® distribution server, and/or an Apple® iTunes® distribution server. The electronic book distribution server 106 may, in turn, transmit at least one of an associated electronic book, a compiled electronic book, and/or the compiled content 710 (see
The primary content database 102 may contain a plurality of primary content pages 112 comprised of literary works serving as baseline content, storied content, central content, and/or overarching content. The primary content database 102 may contain a collection of primary content pages 112 from one particular work of literary authorship or from any number of works of literary authorship. The secondary content database 104 may contain the plurality of secondary content data 114 comprised of text, images, video, and/or other dynamic content serving as supplemental, augmenting, and/or enhancing content. Such dynamic content may be presented using HTML5, CSS, FLASH, COLLADA 3D files, and/or files in the Unity programming language.
The plurality of secondary content data 114 may be distinguished from the plurality of primary content page 112 by its supplemental, augmenting, enhancing and/or commercial nature. For example, at least one primary content page 112 may be comprised of a story with a central theme that flows throughout the entire content, while at least one of the secondary content data 114 may only have relevance to one section of the primary content page 112. In addition, one piece of a plurality of secondary content data 114 within one literary work and/or electronic book may not have relevance and/or thematic connectivity to other pieces of a plurality secondary content data 114 in the same literary work and/or electronic book.
The secondary content database 104 can operate in any number of back-end database languages, including, but not limited to, SQL, MySQL, and/or any EPUB 3 standards. The association server 100 and the electronic book distribution server 106 can operate in any number of middleware languages, including, but not limited to, C#, PHP and/or Ruby. The content rendering device 108 can retrieve at least one of a plurality of secondary content data 114 from the secondary content database 104 through the process depicted in
The content rendering device 108 may refer to at least one of: a thin client device, a tablet computer, a tablet reader, a smartphone, a personal digital assistant, a mobile phone, a Barnes & Noble Nook® reader, an Amazon® Kindle®, an Android® based phone and/or reader, a Microsoft 8® based phone and/or reader, a Sony® PRS®, a Kobo® electronic reader, and/or an Apple® iPhone® and/or iPad®. In one embodiment, the content rendering device 108 generates at least one of the plurality of primary content pages 112 embedded with at least one of the plurality of secondary content data 114 when the electronic book is accessed through the electronic book distribution server 106. In one embodiment, the content rendering device 108 may comprise a touch display and/or a touch screen. The touch display may comprise at least one of a multi-point touch input screen, a touch panel, and an LCD touch screen. In one embodiment, the multi-point touch input screen comprises a capacitive sensing medium configured to detect multiple touches (e.g., finger touches and/or finger gestures applied to a screen of the capacitive sensing medium) and/or near touches occurring at a distinct location in the plane of the touch panel and which produce a distinct signal representative of the touch at the distinct location of the multi-point touch input screen.
Reference is now made to
In another embodiment, the user may render Y-axis slide apart gesture 200 by quickly sliding two fingers in a quick vertical reverse pinch gesture and reveals the secondary content data 114 as a quickly expanding window. In yet another embodiment, the user may render a Y-axis slide apart gesture 200 using the tips of the user's index finger and thumb.
In yet another embodiment, the notification region 202 appears on the screen of the content rendering device 108 as at least one of a subtle horizontal line, a non-subtle horizontal line, a subtle dashed line, a non-subtle dashed line, a subtle image, a non-subtle image, a subtle object, and a non-subtle object. In any such case, the content notification region 202 may be interspersed among the various lines of ASCII and/or alphanumeric text on at least one primary content page 112 page and/or may appear above, below, and/or on the sides of the various lines of ASCI and/or alphanumeric text on at least one primary content page 112. In one embodiment, the symbol and/or line used to evidence the content notification region 202 may be located in the proximal vicinity of at least one of the embedded secondary content data 114.
In another embodiment, the end result of a Y-axis slide apart gesture 200 may be that the newly exposed secondary content data 114 has shifted the pre-gesture positioning of at least one primary content page 112 to a new location on the screen of the content rendering device 108. In yet another embodiment, the end result of a Y-axis slide apart gesture 200 may be that the newly exposed secondary content 114 is overlaid on top of at least one primary content page 112 and does not shift the pre-gesture positioning of the primary content page 112 to a new location on the screen of the content rendering device 108.
In yet another embodiment, the association server 100 may make operable a Y-axis slide apart gesture 200 applied to the notification region 202 of the primary content page 112 through an open function of a Y-axis slide apart gesture module 716 (see
Reference is now made to
In one embodiment, the user undertakes the close tactile motion 306 of the Y-axis pinch close gesture 300 using the tips of the user's index finger and thumb. In another embodiment, the user touches and/or nearly touches an X and/or a close box appearing on any of the corners of the exposed pane 304. In yet another embodiment, the user touches and/or nearly touches the side of the exposed pane 304. In yet a further embodiment, the user touches and/or nearly touches a region of the primary content page 112 still visible on the page of the content rendering device 109 to hide the exposed secondary content data 114 and restore the primary content page 112. In one more embodiment, the user touches the shifted and/or overlaid primary content page 112 to hide the exposed secondary content data 114 and restore the primary content page 112.
In one embodiment, the association server 100 makes operable the Y-axis pinch close gesture 300 applied to the boundary 302 of the exposed pane 304 through a close function of the Y-axis pinch close module 714 (see
Reference is now made to
The primary content page 112 may comprise a data file comprised of at least one of an ASCII text, an alphanumeric text, a multimedia content presented as a picture, a drawing, and/or an illustration in any number of formats including, but not limited to, JPEG, GIF, and/or PNG. The secondary content data 114 may be comprised of: a textual content related to at least one of the primary content pages 112, a multimedia content related to at least one of the primary content pages 112, a video content related to at least one of the primary content pages 112, a pictorial data related to at least one of the primary content pages 112, an explanatory data related to at least one of the plurality of primary content pages 112, a translation of at least one of the plurality of primary content pages 112, an advertisement related to at least one of the plurality of primary content pages 112, a summary data related to at least one of the plurality of primary content pages 112, and an interactive game related to at least one of the plurality of primary content pages 112.
The textual content may comprise a trivia content, a historical content, a background information content, and/or an auxiliary thematic content. All such content may be comprised of at least one of an ASCII text and/or an alphanumeric text. The multimedia content may be comprised of a picture file, a drawing file, an illustration file, and/or a sound file in any number of formats including, but not limited to, a Joint Photographic Experts Group (JPEG) format, a Graphics Interchange format (GIF), Tagged Image File format (TIFF), a Portable Network Graphics (PNG) format, a Musical Instrument Digital Interface (MIDI) format, a RealAudio® format, a waveform (way) format, a Windows® Media Audio format, and/or a dynamic content presented using a HyperText Markup Language (HTML), a Cascading Style Sheet (CSS), a Flash® format, and/or aCOLLAborative Design Activity (COLLADA) 3D file format. The video content may be comprised of a video file in any number of formats, including, but not limited to, an Audio Video Interleave (AVI) format, a Windows® Media Format (WMV), a Moving Pictures Expert Group (MPEG) format, a QuickTime® format, a RealVideo® format, and/or a Flash® format. The pictorial content may comprise a picture file, a drawing file, and/or an illustration file in any number of formats comprised of a Joint Photographic Experts Group (JPEG) format, a Graphics Interchange format (GIF), a Tagged Image File format (TIFF), and/or Portable Network Graphics (PNG) format.
The explanatory data may comprise an auxiliary thematic content, an explanatory thematic content, a definition, a synonym, and/or an antonym presented in at least one of the file formats described heretofore. The translation may include a translation of at least one of the primary content page 112 into at least one of a plurality of languages other than the original publication language of the primary content page 112. The advertisement may comprise an advertisement presented through an advertisement platform supported by at least one of a DoubleClick® platform, a 24/7 Media® platform, a MatchLogic® platform, and/or an Engage Technologies® platform. The summary data may be a file that summarizes any of the file content described heretofore. The interactive game may comprise at least one of a Flash® based game, an Alice® based game, a Java® based game, a Shockwave® based game, and/or a Unity® based game, in one embodiment.
Reference is now made to
In one embodiment, the local storage 500 enables the content rendering device 108 to be untethered from a network so a user can access the secondary data 114 without an active network connection.
Reference is now made to
Reference is now made to
In one or more embodiments, operation 602 may involve the association server 100 determining that at least one of the plurality of secondary content data 114 is associated with at least one of the plurality of primary content pages 112 based on a relevancy of at least one of the plurality of secondary content data 114 with a semantic analysis of a literal expression on at least one of the plurality of primary content pages 112. In one or more embodiments, operation 604 may involve the association server 100 compiling a compiled content 710 (see
In one or more embodiments, operation 606 may involve the association server 100 selecting a notification type from a notification library 712 (see
Reference is now made to
The compilation module 704 may create a compiled content 710 of an electronic book comprising a plurality of primary content pages 112 and a plurality of secondary content data 114, wherein least one of the primary content pages 112 is thematically associated with at least one of the secondary content data 114. In one embodiment, the compilation module 704 may reference the primary content database 102 to select at least one of the primary content pages 112 stored in the primary content database 102. The compilation module 704 may reference the primary content database 102 by sending a query to the primary content database 102.
In one embodiment, the primary content database 102 may be stored in a volatile memory of a server. In another embodiment, the primary content database 102 may be stored in a non-volatile memory of a server. These servers may be coupled to the association server 100. In another embodiment, the primary content database 102 may be stored in at least one of a non-volatile memory and a volatile memory of the association server 100. In the embodiment, the compilation module 704 may also be stored in at least one of a volatile memory and a non-volatile memory of the association server 100.
In one or more embodiments, the compilation module 704 may reference the primary content database 102 to select at least one of the secondary content data 114 stored in the secondary content database 104. The compilation module 704 may reference the secondary content database 104 by sending a query to the secondary content database 104. In one embodiment, the secondary content database 104 may be stored in a volatile memory of a server. In another embodiment, the secondary content database 104 may be stored in a non-volatile memory of a server. These servers may be coupled to the association server 100. In another embodiment, the secondary content database 104 may be stored in at least one of a non-volatile memory and a volatile memory of the association server 100. In the embodiment, the compilation module 704 may also be stored in at least one of a volatile memory and a non-volatile memory of the association server 100. The compilation module 704 may be written in any number of middleware languages including, but not limited to, C#, PHP, and/or Ruby.
In one or more embodiments, the compilation module 704 creates the compiled content 710. In one example embodiment depicted in
In one or more embodiments, the notification placement module 706 retrieves a notification type from the notification library 712 and embeds the notification type with the compiled content 710. The notification placement module 706 may embed the notification type by indicating a page location where the notification type should appear on the primary content page 112. The notification placement module 706 may also indicate the page location where the notification region 200 of
In one or more embodiments, the notification placement module 706 may reference the notification type by sending a query to the notification library 712. In one or more embodiments, the notification library 712 is a database. In the embodiment, the notification library 712 may be stored in a volatile memory of a server. In another embodiment, the notification library 712 may be stored in a non-volatile memory of a server. These servers may be coupled to the association server 100. In another embodiment, the notification library 712 may be stored in at least one of a non-volatile memory and a volatile memory of the association server 100. In the embodiment, the notification placement module 706 may also be stored in at least one of a volatile memory and a non-volatile memory of the association server 100. The notification placement module 706 may be written in any number of middleware languages including, but not limited to, C#, PHP, and/or Ruby. The notification library 712 may be updated upon a request by the user and/or remotely through a wide-area network.
In one or more embodiments, a gesture application module 708 makes visible at least one of the secondary content data 114 in at least one of the primary content pages 112 through a Y-axis slide apart module 716. In one embodiment, the Y-axis slide apart module 716 makes operable a Y-axis slide apart gesture 200 applied to the notification region 202 of at least one of the primary content pages 112. The gesture application module 708 also makes operable a Y-axis pinch close gesture 300 by restoring at least one of the primary content pages 112 to its original form when a Y-axis pinch close gesture 300 is applied to the boundary 302 of the exposed pane 304 indicated in
The notification placement module 706 may work alongside the gesture application module 708 to expose the secondary content data 114 to a user of the content rendering device 108. The gesture application module 708 may be triggered by at least one of the Y-axis pinch close module 714 and the Y-axis slide apart module 716. At least one of the gesture application module 708, the Y-axis pinch close module 714, and the Y-axis slide apart module 716 may be stored in a volatile memory of a server. In another embodiment, at least one of the gesture application module 708, the Y-axis pinch close module 714, and the Y-axis slide apart module 716 may be stored in a non-volatile memory of a server. These servers may be coupled to the association server 100. The gesture application module 708, the Y-axis pinch close module 714, and/or the Y-axis slide apart module 716 may be written in any number of middleware languages including, but not limited to, C#, PHP, and/or Ruby.
Reference is now made to
For example, as depicted in
In another embodiment, page location 15 of the electronic book may be associated with a primary content page 112b, which may, in turn, be associated with a secondary content data 114B. A compiled content 710Bb resulting from the page association, may be associated with a notification type 802B (e.g., a “custom” notification type) at a location ⅔ of the total distance down from the top of primary content page 112b. In this example, the association server 100 may fetch the secondary content data 114 from a server through a network.
In yet another embodiment, page location 24 of the electronic book may be associated with a primary content page 112c, which may, in turn, be associated with a secondary content data 114C. A compiled content 710Cc resulting from the page association, may be associated with a notification type 802C (e.g., an “image” notification type) at a location ⅞ of the total distance down from the top of primary content page 112c. In this example, the association server 100 may fetch the secondary content data 114 from both a client device and a server through a network.
The generic computing device 900 may include a processor 902, a memory 904, a storage device 906, a high speed interface 908 coupled to the memory 904 and a plurality of high speed expansion ports 910, and a low speed interface 912 coupled to a low speed bus 914 and a storage device 906. In one embodiment, each of the components heretofore may be inter-coupled using various buses, and may be mounted on a common motherboard and/or in other manners as appropriate. The processor 902 may process instructions for execution in the generic computing device 900, including instructions stored in the memory 904 and/or on the storage device 906 to display a graphical information for a GUI on an external input/output device, such as a display unit 916 coupled to the high speed interface 908. In other embodiments, multiple processors and/or multiple buses may be used, as appropriate, along with multiple memories and/or types of memory. Also, a plurality of generic computing devices 900 may be coupled with, with each device providing portions of the necessary operations (e.g., as a server bank, a group of blade servers, and/or a multi-processor system).
The memory 904 may be coupled to the generic computing device 900. In one embodiment, the memory 904 may be a volatile memory. In another embodiment, the memory 904 may be a non-volatile memory. The memory 904 may also be another form of computer-readable medium, such as a magnetic and/or an optical disk. The storage device 906 may be capable of providing mass storage for the generic computing device 900. In one embodiment, the storage device 906 may be comprised of at least one of a floppy disk device, a hard disk device, an optical disk device, a tape device, a flash memory and/or other similar solid state memory device. In another embodiment, the storage device 906 may be an array of the devices in a computer-readable medium previously mentioned heretofore, computer-readable medium, such as, and/or an array of devices, including devices in a storage area network and/or other configurations.
A computer program may be comprised of instructions that, when executed, perform one or more methods, such as those described above. The instructions may be stored in at least one of the memory 904, the storage device 906, a memory coupled to the processor 902, and/or a propagated signal.
The high speed interface 908 may manage bandwidth-intensive operations for the generic computing device 900, while the low speed interface 912 may manage lower bandwidth-intensive operations. Such allocation of functions is exemplary only. In one embodiment, the high-speed interface 908 may be coupled to at least one of the memory 904, the display unit 916 (e.g., through a graphics processor and/or an accelerator), and to the plurality of high speed expansion ports 910, which may accept various expansion cards. In the embodiment, the low speed interface 912 may be coupled to at least one of the storage device 906 and the low-speed bus 914. The low speed bus 914 may be comprised of a wired and/or wireless communication port (e.g., a Universal Serial Bus (“USB”), a Bluetooth® port, an Ethernet port, and/or a wireless Ethernet port). The low speed bus 914 may also be coupled to at least one of scan unit 928, a printer 926, a keyboard, a mouse 924, and a networking device (e.g., a switch and/or a router) through a network adapter.
The generic computing device 900 may be implemented in a number of different forms, as shown in the figure. In one embodiment, the generic computing device 900 may be implemented as a standard server 920 and/or a group of such servers. In another embodiment, the generic computing device 900 may be implemented as part of a rack server system 922. In yet another embodiment, the generic computing device 900 may be implemented as a general computer 920 such as a laptop computer. Alternatively, a component from the generic computing device 900 may be combined with another component in a generic mobile computing device 950. In one or more embodiments, an entire system may be made up of a plurality of generic computing devices 900 and/or a plurality of generic computing devices 900 coupled to a plurality of generic mobile computing devices 950.
In one embodiment, the generic mobile computing device 950 may comprise at least one of a mobile compatible processor 952, a mobile compatible memory 954, and an input/output device such as a mobile display 966, a communication interface 972, and a transceiver 958, among other components. The generic mobile computing device 950 may also be provided with a storage device, such as a microdrive or other device, to provide additional storage. In one embodiment, at least one of the components indicated heretofore are inter-coupled using various buses, and several of the components may be mounted on a common motherboard.
The mobile compatible processor 952 may execute instructions in the generic mobile computing device 950, including instructions stored in the mobile compatible memory 954. The mobile compatible processor 952 may be implemented as a chipset of chips that include separate and multiple analog and digital processors. The mobile compatible processor 952 may provide, for example, for coordination of the other components of the generic mobile computing device 950, such as control of user interfaces, applications run by the generic mobile computing device 950, and wireless communication by the generic mobile computing device 950.
The mobile compatible processor 952 may communicate with a user through the control interface 956 and the display interface 964 coupled to a mobile display 966. In one embodiment, the mobile display 966 may be at least one of a Thin-Film-Transistor Liquid Crystal Display (“TFT LCD”), an Organic Light Emitting Diode (“OLED”) display, and another appropriate display technology. The display interface 964 may comprise appropriate circuitry for driving the mobile display 966 to present graphical and other information to a user. The control interface 956 may receive commands from a user and convert them for submission to the mobile compatible processor 952. In addition, an external interface 962 may be provide in communication with the mobile compatible processor 952, so as to enable near area communication of the generic mobile computing device 950 with other devices. External interface 962 may provide, for example, for wired communication in some embodiments, or for wireless communication in other embodiments, and multiple interfaces may also be used.
The mobile compatible memory 954 may be coupled to the generic mobile computing device 950. The mobile compatible memory 954 may be implemented as at least one of a volatile memory and a non-volatile memory. The expansion memory 978 may also be coupled to the generic mobile computing device 950 through the expansion interface 976, which may comprise, for example, a Single In Line Memory Module (“SIMM”) card interface. The expansion memory 978 may provide extra storage space for the generic mobile computing device 950, or may also store an application or other information for the generic mobile computing device 950. Specifically, the expansion memory 978 may comprise instructions to carry out the processes described above. The expansion memory 978 may also comprise secure information. For example, the expansion memory 978 may be provided as a security module for the generic mobile computing device 950, and may be programmed with instructions that permit secure use of the generic mobile computing device 950. In addition, a secure application may be provided on the SIMM card, along with additional information, such as placing identifying information on the SIMM card in a non-hackable manner.
The mobile compatible memory 952 may comprise at least one of a volatile memory (e.g., a flash memory) and a non-volatile memory (e.g., a non-volatile random-access memory (“NVRAM”)). In one embodiment, a computer program comprises a set of instructions that, when executed, perform one or more methods. The set of instructions may be stored on at least one of the mobile compatible memory 954, the expansion memory 978, a memory coupled to the mobile compatible processor 952, and a propagated signal that may be received, for example, over the transceiver 958 and/or the external interface 962.
The generic mobile computing device 950 may communicate wirelessly through the communication interface 972, which may be comprised of a digital signal processing circuitry. The communication interface 972 may provide for communications using various modes and/or protocols, such as, at least one of: a Global System for Mobile Communications (“GSM”) protocol, a Short Message Service (“SMS”) protocol, an Enhanced Messaging System (“EMS”) protocol, a Multimedia Messaging Service (“MMS”) protocol, a Code Division Multiple Access (“CDMA”) protocol, Time Division Multiple Access (“TDMA”) protocol, a Personal Digital Cellular (“PDC”) protocol, a Wideband Code Division Multiple Access (“WCDMA”) protocol, a CDMA2000 protocol, and a General Packet Radio Service (“GPRS”) protocol. Such communication may occur, for example, through the radio-frequency transceiver 958. In addition, short-range communication may occur, such as using a Bluetooth®, Wi-Fi, and/or other such transceiver. In addition, a GPS (“Global Positioning System”) receiver module may provide additional navigation-related and location-related wireless data to the generic mobile computing device 950, which may be used as appropriate by a software application running on the generic mobile computing device 950.
The generic mobile computing device 950 may also communicate audibly using an audio codec 960, which may receive spoken information from a user and convert it to usable digital information. The audio codec 960 may likewise generate audible sound for a user, such as through a speaker (e.g., in a handset of the generic mobile computing device 950). Such a sound may comprise a sound from a voice telephone call, a recorded sound (e.g., a voice message, a music files, etc.) and may also include a sound generated by an application operating on the generic mobile computing device 950.
The generic mobile computing device 950 may be implemented in a number of different forms, as shown in the figure. In one embodiment, the generic mobile computing device 950 may be implemented as a smartphone 968. In another embodiment, the generic mobile computing device 950 may be implemented as a personal digital assistant (“PDA”). In yet another embodiment, the generic mobile computing device, 950 may be implemented as a tablet device 982.
Various embodiments of the systems and techniques described here can be realized in at least one of a digital electronic circuitry, an integrated circuitry, a specially designed application specific integrated circuits (“ASICs”), a piece of computer hardware, a firmware, a software application, and a combination thereof. These various embodiments can include embodiment in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.
These computer programs (also known as programs, software, software applications, and/or code) comprise machine-readable instructions for a programmable processor, and can be implemented in a high-level procedural and/or object-oriented programming language, and/or in assembly/machine language. As used herein, the terms “machine-readable medium” and/or “computer-readable medium” refers to any computer program product, apparatus and/or device (e.g., magnetic discs, optical disks, memory, and/or Programmable Logic Devices (“PLDs”)) used to provide machine instructions and/or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal. The term “machine-readable signal” refers to any signal used to provide machine instructions and/or data to a programmable processor.
To provide for interaction with a user, the systems and techniques described here may be implemented on a computing device having a display device (e.g., a cathode ray tube (“CRT”) and/or liquid crystal display (“LCD”) monitor) for displaying information to the user and a keyboard and a mouse 924 by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, and/or tactile feed-back) and input from the user can be received in any form, including acoustic, speech, and/or tactile input.
The systems and techniques described here may be implemented in a computing system that comprises at least one of a back end component (e.g., as a data server), a middleware component (e.g., an application server), a front end component (e.g., a client computer having a graphical user interface, and/or a Web browser through which a user can interact with an embodiment of the systems and techniques described here), and a combination thereof. The components of the system may also be coupled through a communication network.
The communication network may comprise at least one of a local area network (“LAN”) and a wide area network (“WAN”) (e.g., the Internet). The computing system can comprise at least one of a client and a server. In one embodiment, the client and the server are remote from each other and interact through the communication network.
An example will now be described in which the various embodiments will be explained in a hypothetical scenario. A reader may be reading Geoffrey Chaucer's The Canterbury Tales on a content rendering device 108 (e.g., a Barnes & Noble Nook® device). The reader may be reading a passage regarding the shrine of Saint Thomas Becket at Canterbury Cathedral and wondering if Canterbury Cathedral actually exists. The reader may see a notification icon next to the line of text mentioning Canterbury Cathedral. The reader, wanting to know more about Canterbury Cathedral, applies a Y-axis slide apart gesture 200 to the screen of the content rendering device 108 through an open tactile motion 204 using the tips of the reader's thumb and index finger. The content adjacent to the notification region 206 shifts as the exposed pane 304 appears on the screen of the content rendering device 108.
The user reads the secondary content data 114 (which, in this case, is a text passage on Canterbury Cathedral) appearing in the exposed pane 304 and learns that Canterbury Cathedral is located in Canterbury, Kent in England. The reader also learns that the cathedral was completed in the 11th century and was the site of Archbishop Thomas Becket's murder. After reading this, the user hides the exposed pane 304 by applying a Y-axis pinch close gesture 300 to the boundary 302 of the exposed pane 304 through a close tactile motion 306 using the same two fingers. Once the exposed pane 304 has been closed, the user continues reading The Canterbury Tales on the content rendering device 108 and eagerly reads on having obtained important context pertaining to a crucial element of the story.
A number of embodiments have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the claimed invention. In addition, the logic flows depicted in the figures do not require the particular order shown, or sequential order, to achieve desirable results. In addition, other steps may be provided, or steps may be eliminated, from the described flows, and other components may be added to, or removed from, the described systems. Accordingly, other embodiments are within the scope of the following claims.
It may be appreciated that the various systems, methods, and apparatus disclosed herein may be embodied in a machine-readable medium and/or a machine accessible medium compatible with a data processing system (e.g., a computer system), and/or may be performed in any order.
The structures and modules in the figures may be shown as distinct and communicating with only a few specific structures and not others. The structures may be merged with each other, may perform overlapping functions, and may communicate with other structures not shown to be connected in the Figures. Accordingly, the specification and/or drawings may be regarded in an illustrative rather than a restrictive sense.
This application is a continuation of U.S. application Ser. No. 13/615,710, filed Sep. 14, 2012, which claims the benefit of U.S. Provisional Patent Application No. 61/664,136 titled “Creation and Exposure of Embedded Secondary Content Relevant to a Primary Content Page of an Electronic Book Through a Y-Axis Gesture at a Notification Region in the Primary Content Page,” filed on Jun. 25, 2012. Each of these applications is herein incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
61664136 | Jun 2012 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13615710 | Sep 2012 | US |
Child | 14532628 | US |