Selective visual display
By using a selective visual display system and eye-tracking technology, the problem of simultaneous display of visual and audio content has been solved, enabling the coordinated presentation of visual and audio content and improving user experience and information presentation efficiency.
Patent Information
- Application Number
- CN202480011368.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-02-10
- Filing Date
- 2024-02-11
- Publication Date
- 2026-01-30
AI Technical Summary
Existing technologies struggle to achieve synchronized display of visual and audio content, especially during reading and learning, as they cannot effectively coordinate the presentation sequence of visual and audio elements, resulting in a poor user experience.
A selective visual display system is adopted, which tracks the user's gaze through eye-tracking technology, displays and removes text content synchronously, and combines it with audio presentation. The processor coordinates the timing of visual and audio processes to achieve the coordinated presentation of visual and audio content.
It enhances the user's reading and learning experience by showcasing visuals and audio simultaneously, thereby increasing the accessibility and interactivity of content, improving the efficiency of information presentation, and enhancing user focus.
Smart Images

Figure CN121443220A_ABST
Abstract
Description
Cross-references to related applications
[0001] The U.S. Provisional Applications claiming priority to this application are: 63 / 552,134; 63 / 583,358; and 63 / 485,023. The entire contents of the above applications are incorporated herein by reference. Invention Background and Field
[0002] This invention relates in general to electronic reading devices and software, audiobook devices, text rewriting technology, and learning technology.
[0003] The methods, apparatus, computer-readable media, and systems described herein are intended to present information to users for reading, learning, testing, and content consumption. Invention Summary
[0004] According to one aspect of the present invention, a selective visual display system is provided, comprising: a processor configured to execute coded instructions to retrieve, process, and present content to a user; an integrated circuit for processing electrical audio signals, the circuit being capable of converting digital audio data into human-perceptible sound output, and further including audio features utilizing a digital audio format; a display screen for presenting digital content connected to a device, providing a medium for user interaction with the system-presented content; one or more computer storage devices for storing machine-readable instructions, content files, user data, or system operation logs; and an audio presentation module for presenting audio data to the user. The device is capable of performing the following operations: displaying content elements on the display screen; presenting audio segments corresponding to the content elements; removing the content element from the display screen when the audio segment ends; coordinating the presentation of content elements, wherein the audio content elements are derived from digital audio data and presented in a user-perceptible manner through an output mechanism; subsequently displaying the next content element and presenting the next audio segment, the system being equipped with content sorting logic to control the temporal progression of content elements and coordinate the order and timing of content accessibility. Brief description of the attached diagram
[0005] Figure 1 A selective visual display system is shown.
[0006] Figure 2 The exhibition showcases mobile devices that incorporate selective visual display systems.
[0007] Figure 3 Demonstrate and showcase the user interaction system.
[0008] Figure 4 Showcase the user interaction system.
[0009] Figure 5 An example of multimodal content is shown.
[0010] Figure 6This demonstrates an example of a multi-functional test user interaction system.
[0011] Figure 7 It demonstrates the process steps that the software may execute repeatedly when presenting content to the user.
[0012] Figure 8 It demonstrates the process steps that the software may execute after the user finishes reading.
[0013] Figure 9 This demonstrates another example of a user interaction system.
[0014] Figure 10 This demonstrates another example of a user interaction system.
[0015] Figure 11 An example of a text database record that can be created is shown.
[0016] Figure 12 A sample table of text element parameters is displayed.
[0017] Figure 13 This demonstrates a running example of the user interaction system in sample mode.
[0018] Figure 14 This demonstrates an example of a user interaction system in another example state.
[0019] Figure 15 This demonstrates an example of a user interaction system in a different instance state.
[0020] Figure 16 This demonstrates an example of a user interaction system in a different instance state. Detailed description
[0021] Figure 1The device 20 shown may include a selective vision display system 22 that displays text content 08 to a user 18 and plays audio through one or more speakers 30. The device may include an eye-tracking system 12, which may include a camera 14 connected to a processor 24. The camera can be used to capture images of the user 18's eyes 16. The system can accurately calculate the user's gaze direction 27, gaze point position 15, and track the dynamic changes of the gaze point 26 as the user's eyes move, or determine whether the gaze point is located in the region of interest 28 (i.e., the defined area of the user's gaze). The device may also include one or more microphones 32 for recording sound (possibly including the user's voice). The camera 14 may also be used to record the user's face 34 or other body parts (such as hands or gestures). The displayed content may also include non-textual forms, such as images, AR, VR, videos 36, etc. The system may also be equipped with head-mounted glasses 40, which have eye-tracking capabilities and may integrate a head-mounted camera 42 (for environmental object visualization or text recognition / OCR) and / or an AR / VR display 44. The software can break down complete content into individual text units (such as sentences in this example). The software can present single-sentence display content 08 as shown in the figure. The software can provide initial audio content 46 and make the audio of the corresponding single sentence start playing at approximately the same time. In this example, the presentation of the text-to-speech audio of the first word "This" in the single sentence can be basically synchronized with the start of the presentation of display content 08. In this example, the system may be providing text-to-speech audio 47 of the first word "This" in display content 08. The software can achieve temporal synchronization between the presentation of display content 08, the presentation of the corresponding audio content 46, and / or the user's gaze position 15. The software can present audio content corresponding to the content in the user's gaze area 28. This audio content can be represented as automatically styled text elements 48 (such as the underline effect in this example). This automatic styling can be controlled based on the timing of audio 46, the user's eye position 15, or a combination of both. In some cases, the software can remove display content 08 when the user's gaze position is near the end of display content 50. In other cases, the software may remove displayed content 08 when the presented audio content is near the end of the audio sequence of the corresponding text content. For example, displayed content 08 may be removed after the text-to-speech playback of the word "sentence" 52 is completed (with an optional delay). Displayed content 08 may be presented in a sentence-by-sentence format. Phrases may be presented in separate vertical lines as shown in this example. The content may include various visual and / or audio styles, such as the underline effect of multiple text styles 38 in this example, and the text-to-speech playback volume of the word "this" 47 may be higher than that of other letters in this example. The software may remove the sentence from the screen from displayed content 08 after the playback of the corresponding single-sentence audio (46, 52) has ended, and optionally after an additional delay.
[0022] Figure 2The mobile device 112 shown may include a selective visual display system 120 that can display content 114 including text 116 or other content and provide an interaction system 120 for the user. Audio content can be presented via headphones 102, with earpieces 104 connected via a jack 110 and a cable 106, or wireless headphones 112 can be used. The device may include a microphone 130, physical buttons 135, or a speaker 137. The device can collect user input through the selective visual display system 120 and / or the user interaction system 120 and can be used in conjunction with the physical buttons 135. The device may also be equipped with a camera 160 for eye tracking and recording the user's facial expressions, emotions, or gestures.
[0023] Device 200 can be used to track the fixation point 204 of user 220's eyes 222, or to determine the distance 230 between the device and the user's eyes 222. The eye-tracking system and software can estimate the user's fixation point 204 via camera 208. The software can define a region of interest 214, which can be part of the user 220's field of vision. The software can determine whether the user 204's fixation point / fovea is located within the region of interest (as shown at position 214) or outside the region of interest (as shown at position 203). The system can also track the eye movement trajectory of user 240 and detect the time and location of eye movements such as hopping from a first fixation point 250 to a second fixation point 240.
[0024] Figure 3The demonstration showcases a user interaction system. Such system elements may include, but are not limited to: 300: Presentation screen; 301: Document remaining time indicator; 302: ; 303: Reading speed; 304: Status panel indicator; 305: Elapsed time indicator; 306: Back button; 308: Play button, for example, displaying the current text element; 310: Next page button, for example, moving forward one text element and displaying that text; 312: Select text button, for example, highlighting or selecting the current text element; 314: Start button, for example, starting continuous playback mode; 316: Stop button, for example, stopping or pausing continuous playback mode; 318: Audio button; 320: Audio playback indicator; 322: Up option button; 324: Down option button; 326: Option number indicator; 328: Portrait mode button; 330: Portrait mode indicator; 332: Style toggle button; 334: Style toggle indicator; 336: T 338: TTS Voice Number Selector Down Button; 340: TTS Voice Number Selector Up Button; 342: Voice Number Indicator; 344: Audio Rate Selector Down Button; 345: Audio Rate Indicator; 346: Text Zoom Selector Down Button Indicator; 348: Text Zoom Selector Up Button; 349: Text Zoom Indicator; 350: Pitch Selector Down Button; 352: Pitch Selector Up Button; 354: Pitch Indicator; 356: Continuous Text; 358: Paragraph Title; 360: Text Element Selection Level Indicator; 362: Text Area; 363: Single Element Text (Sentence); 364: Current Status Description, which can be used to understand the functions of similar panels in subsequent illustrations; 366: Audio Currently Playing in the Software; 367: Sentence Highlight Level Display; 368: Sentence View Count Display; 370: Sentence Duration Display; 372: Current Execution Step Description.
[0025] Figure 4A user interaction system is demonstrated. Components of such a system may include, but are not limited to, the following: 400: User interaction system; 401: Menu: The software provides access to additional functions, settings, and user profiles. For example, the software may allow users to enable / disable text styles to display unformatted text, enable / disable portrait mode, and enable / disable single-sentence mode to view continuous text; 402: Application title; 405: Stop automatic reading speed adjustment. The software can stop automatically increasing the reading speed; 406: Reading speed selector. The software can adjust the audio playback rate; 407: Start automatic reading speed adjustment. The software can automatically increase the reading speed over time until a final value is reached; 408: Text scaling selector. The software may display a version of the content based on this text scaling setting, such as presenting a longer or shorter version of the text; 409: Current audio playback rate. The software may display the actual playback rate of the audio; 410: Text scaling level indicator. The software may display the text scaling level or text version; 416: Text speed or reading speed indicator. The software may display the user's target content presentation rate; 417: Reading speed reached (words per minute). The software can display the measured user reading speed; 418: Current document position: The software can display paragraph numbers, sentence numbers, and document progress percentage; 419: Reading time: The software can display the reading time of the current user or other users; 420: Remaining document time (calculated by the software). The software can calculate the remaining time for the currently presented document version; 421: Document title; 422: Highlight / selection indicator. The software can display the level at which text elements are highlighted / selected by the user (or others); 423: Text element display area; 424: Stylized text (such as keywords with borders); 425: Stylized text, such as key phrases with borders. The software provides various styles for different text elements (including words), such as underline and bold; 426: Navigation panel; 427: User-created comments / notes; 439: Navigation selector: backward navigation; 440: Review mode: back button (e.g., return to the previous highlight); 441: Highlight / user selection indicator; 442: Paragraph return button; 443: Sentence return button; 444: Continuous playback button. The software can enable continuous playback mode, this element may be replaced by a pause button; 445: Playback indicator: The software can use color to indicate continuous playback status (on / off); 446: Next sentence button. The software can remove the currently displayed nth sentence, increment the period to n+1 to jump to the next sentence n+1, and play the audio of the n+1th sentence; 447: Next paragraph button. The software can remove the currently displayed nth sentence, increment the period to n+m (where (n+m) = the first sentence of the next paragraph), jump to the n+mth sentence, and play the audio of the n+mth sentence; 448: Review mode: jump forward (e.g., move forward one highlight mark).The software can remove the currently displayed nth sentence, increment the period from n to n+j (where (n+j) is the period of the next highlighted mark), jump to the next highlighted sentence n+j, and play the audio of sentence n+j; 449: Highlight button: indicates an increase in the highlight level of the current text element; 450: Additional button: user-customizable button that controls other software functions; 451: Library button: jumps to the content selection interface; 452: Reading button: jumps to the content reading interface; 453: Notes button: jumps to the interface for viewing highlighted marks, selections, comments, notes, and other people's notes; 454: Navigation selector: navigates forward. 460: Text example. The software can provide styled text, including vertical phrase rendering, background, borders, underlines, shadows, different font weights, different opacities (as shown in the figure), or other styles; 462, 464: Text examples. The software can provide text with letter style variations within words, including character attribute changes such as weight, color, and transparency, or parameter gradient effects between letters within a word, or gradient effects starting from a specific letter, or automatic emphasis on selected letters, etc.; 466: Text Example. The software can provide styled horizontal text modes. 470: The software can provide graphical display elements (such as lines, rectangles, or other shapes) to indicate the following states of text elements (such as sentences) within a document: whether the text element has been presented and / or the number of times it has been presented (e.g., using color ranges to indicate the number of times); whether the user has successfully viewed the text element (e.g., using eye tracking to determine whether the user interacted with the text element and the duration of the interaction); the duration the text element was displayed to the user (e.g., using color ranges to indicate the duration of the display); whether the text element is selected or highlighted and / or the degree of selection; the time the text element was viewed (e.g., using color ranges to indicate the time interval); the importance or other parameters of the text element (e.g., using color ranges to indicate importance values or other parameter values); the time the text element was viewed (e.g., using color ranges to indicate the time interval). 475: The software can provide user interaction system elements for selecting positions within text, such as selecting sentence numbers via a slider. The software can update other elements of the display based on user selections, such as changing the displayed content, remaining time, or other features that change based on the text element or sentence selected by the user using the slider.
[0026] Figure 5An example of multimodal content is shown. This example illustrates the timing and processing flow that software can provide when presenting content in two modalities (audio and visual) to a user simultaneously. The software can present an audio waveform to the user, and the figure simultaneously shows the audio waveform amplitude changing over time (curve 500) and the frequency spectrum view (frequency changing over time) (510). The time reference 520 covers a time interval of about half a second, showing the presentation process of text content element 530—text content that can be presented to the subject in visual form by the software. The figure aims to illustrate that at about 0 seconds, the software visually presents the word "Is" to the user, while simultaneously playing the audio narration of the word to the user via text-to-speech. At about 0.05 seconds (540), the software visually presents the word "Not" to the user, and simultaneously plays the audio narration of the word, continuing until about 0.11 seconds (550). In the illustrated example, the text elements correspond to single words (such as "Is" and "Not"). The software can use a similar processing flow for other text elements (such as sentences). In a sentence text element scenario, the software can provide the user with a visually presented sentence and keep it visible while playing the audio waveform of that sentence to the user. Optionally, after the first text element (such as a word or sentence) is presented and before the next text element is presented, the first text element can be removed from the display interface under the control of the software, or moved to another location on the interface, or its display style and attributes (such as adjusting its size, color, font, transparency, background, or position) can be changed.
[0027] The software provides an independent modality for enabling / disabling. Visual elements can be presented to the subject through media such as the software device screen. The software can present visual elements to the subject via speakers, wired headphones, wireless headphones, virtual devices, or other audio devices. The start time of different speech content elements (such as words) is indicated, generated, manipulated, or controlled by the software. For example, the start time 540 and end time 550 of the word "not" in this sentence are both displayed. The audio waveform amplitude 560 and other waveform parameters can also be generated, manipulated, or controlled by the software. The software can provide non-speech sounds, including the audio icon in audio 565. Pauses in the audio (such as substantial silence paragraphs 570) can also be included. These pauses may correspond to optional delays between the presentation of subsequent text elements provided by the software.
[0028] Figure 5This section demonstrates examples of visual text that software, systems, or devices may provide. The software can present text elements using one or more different styles, such as bold font or adjusted transparency 580. The software can divide text into independent sentences and present them sentence by sentence. The software can break sentences down into independent phrases 585, 591, which can be styled individually within the same sentence 585, such as using enclosing buttons or outlines, different background colors 590, or color schemes such as light text with a dark background 592 and dark text with a light background 590. The software can set spacing 593 between different phrases or words. The software can provide text presentation effects with higher transparency (592) based on text importance or based on combinations of text element and visual style parameters. The software can support text display in vertical mode. In vertical mode, different phrases or text elements can be arranged in separate lines, such as using left-aligned vertical layout. The software can also achieve independent styling of text elements, including automatic independent styling of words, phrases, and other text elements. Automatic style application scenarios include, but are not limited to: important text elements identified by annotation software, user-selected content, specific parts of speech, user focus, currently playing audio content, text matching keywords / phrases, or elements that meet other text parameter conditions.
[0029] Figure 6 This demonstrates an example of a multi-feature testing user interaction system. 600: Question. 605: Multiple possible answers or answer elements. Answers or answer elements can be independent of each other. Answers or answer elements can be text elements, including words, phrases, sentences, or paragraphs. Answers or answer elements can form continuous text paragraphs, such as complete paragraphs. Users can be asked to "rate" each answer or answer component, i.e., to label each component as true / false and / or assign a quantitative score (such as an importance or relevance score), and / or label the element as true or false, and / or indicate the user's level of confidence in their assessment of each answer element or the entire operation. 606: Selector for deleting and / or requesting the software to replace an answer element with a new potential answer element. 610: Importance value for each answer element. The software may also provide a 610 function, allowing users to input a "rate" for each sentence, corresponding to their assessment of the sentence's contribution to answering the question. For example, the software allows users to indicate the degree to which each text element or sentence contributes to the correctness of the answer using + / -, likes / dislikes, numerical ratings, official ratings (AF), or other methods. 612: Remove rating selector. 651: True / False flag for answer elements. 620: Confidence rating for each potential answer element: Users can indicate their level of confidence in evaluating that answer element. 630: Time spent by the user completing the specified exercise. 640: A submit button provided by the software, allowing users to mark the exercise as completed and submit their answers. Figure 6 The presentation software may perform process steps 650 to 697 before presenting content to the user.
[0030] Figure 7 The software demonstrates 700 to 780 process steps that it may complete, such as executing them in a loop during content presentation to the user.
[0031] Figure 8 The flowcharts 800 to 855 show the possible steps the software might execute after the user finishes reading. Figure 8The software presents user interface elements 860 for measuring and displaying user attention, task focus, and emotional states (such as "focus"). It measures focused / task processing time 870, and / or distracted / unfocused / unprocessed task time 880. The software measures "hit" times (recorded moments when the user was focused on a task) and "miss" times (recorded moments when the user was not focused on a task) 890. It measures metrics such as the number of consecutive periods of focused attention 895. The software provides controls to start / stop / pause measurements. It provides user interface elements that allow users to select the category or task they are attempting to focus on, or to enter notes, comments, and other metadata. The software allows users to input goals or task completion status. The software can be used in conjunction with other activity tracking and performance tracking hardware and software, including wearable devices and health / fitness trackers. The software can detect user focus at preset times (e.g., random intervals). The software allows users to set the detection frequency or interval duration. This software can calculate scores or values based on user focus, such as value created (task time × value per unit time) and value lost (non-task time × value per unit time). The software can display measurement periods 898. The software detects user focus using various methods, including but not limited to: A) determining whether the user is focusing on task-related areas of interest based on eye-tracking data, such as focusing on task-related screen areas (e.g., specific applications or content). B) determining whether the user is focusing on areas they are trying to avoid, such as unexpected applications or content, based on eye-tracking data. C) using psychophysical methods, allowing the user to immediately perform a software-detectable gesture (e.g., clicking or releasing UI elements like button 899) when they perceive content disturbances, to determine whether the user has noticed the content change—this can be seen as a signal of user attention to the content. Visual disturbances may include, but are not limited to: changes in screen brightness, color, position, or content (e.g., using slight window movement to achieve a "shaking" effect to detect user perception), changes in volume / tone / AM / FM channel / content. D) Measure other biometric data that may be related to attention, such as eye movements, pupil dilation, facial features, emotion detection, and emotional state. The software can set a limited response time for the user to complete an effective operation; otherwise, it is recorded as an error. The software can measure reaction time, i.e., the time interval from the presentation of the distraction to the user's response. Based on the above indicators, the software can measure, display, and store user performance statistics (such as the percentage of focus per unit time) and compare this data with other users (e.g., displaying other users' data on a leaderboard). This software can provide focus measurement functionality for reading tasks in this way, for example, in conjunction with other reading and content consumption functions described in this document.The software can also provide similar attention measurement functions for other types of tasks, including but not limited to: use of applications or functions on the device, attention to specific window content on the device, consumption of specific types or elements of content, interaction with specific users or agents, completion of other types of tasks, health tracking, fitness tracking, relaxation training, attention tracking, and sleep induction.
[0032] Figure 9 User interaction system demonstration: 900: Content selection interface; 930: Selected text display interface; 960: Content search interface; 910: User rating input or other rating functions; 930: Selected / highlighted text interface; 931: Document period ascending / descending sorting selector; 932: Sort by highlighted sentence content alphabetically ascending / descending sorting selector; 934: Sort by user likes / comments ascending / descending sorting selector; 935: Single sentence example; 940: Sentence numbers in the book; 945: User comments related to sentences; 960: Content search interface; 961: Sort by sentence number in the document ascending / descending sorting selector; 962: Sort by the number of times multiple words match in a sentence ascending / descending sorting; 963: Sort by sentences within the content ascending / descending sorting; 964: The software provides a search / query input box, supporting user input of single words, multiple words, Boolean queries, etc.; 970: Search terms found in sentences.
[0033] Figure 10 This demonstrates a user interaction system. 1000: Example of a chat interface UIS component. This software provides a chat-style interface for text reading (including reading documents item by item 1010), content viewing, interacting with a chatbot 1020, interacting with other users 1030, and conducting Q&A 1040, supporting elements such as buttons, images, or icons. Components include, but are not limited to, the content shown. Components can be combined freely. Each text element can be presented independently. This type of UIS can be used for communication interaction and can also simulate a chat-style experience (including document text interaction), distinct from interaction modes between chatbots or other users.
[0034] Figure 11This example demonstrates how the software 1100 can create text database records. It illustrates how the software creates individual database records, one record per row (see rows 1102 to 1128). In this example, the software can process text elements in a document (i.e., the paragraph shown in row 1102, column 1140). The software can maintain logical units or database records for text elements. The software can automatically create text elements in paragraph form (as shown in the row marked "Paragraph" in text element type column 1138), for example, by using an algorithm to divide a complete document into individual paragraphs. The paragraph in row 1102, column 1140 is the starting paragraph for the software in this example. This software example allows you to assign parameters to text elements, as shown in columns 1130-1158: paragraph number 1130, sentence number 1131, index number 1132, version number 1134, text scaling level 1136 (in this example, the value is 1 or 2; other examples may have different values), text element type 1138, text content 1140, importance 1142, character count 1146, and keyword presence 1158—in this example, the presence of the keyword "technology" is represented by binary 0 / 1. These are just examples of parameters that the software might attach to logical text units or text element records. The software can use these parameters to perform various database operations, including sorting, filtering, querying, Boolean logic operations, and index generation.
[0035] The software can match corresponding versions of the same logical content across different versions. Different versions of text may correspond to different rewrites of the same text. For example, when text is scaled by AI (target length approximately half that of the original) by the software, it may correspond to version 2 (as shown in this example). Different versions may also correspond to different languages, different drafts, different versions, or other types. By maintaining the correspondence between different versions through logical units, the software can achieve seamless version switching. For example, when a user switches the text scaling level, the software can display the corresponding text without losing the user's current position.
[0036] For example, the software can search for the text of version 2 that corresponds to the sentence in row 1104, column 1140 of version 1. When searching for version 2, the software can use the paragraph number 1130 and sentence number 1131 displayed in row 1104 as indexes to locate the corresponding sentence in row 1118 in the database. Alternatively, the software can construct an index as shown in column 1132 and search using index value 1, which also points to row 1118. This allows the software to maintain logically related correspondences between different versions of text, such as versions derived through rewriting to adjust text length (or text scaling), language conversion, or other means.
[0037] The software can automatically generate sentence-based text elements (as shown in the row labeled "sentence" in text element type column 1138), for example, by algorithmically splitting a complete paragraph into individual sentences. In this example, the software splits the original paragraph (shown in row 1102, column 1140) into individual sentence records (shown in rows 1104-1108) and updates their sentence numbers. The software may rewrite blocks of text, for example, rewriting the original paragraph (shown in row 1102, column 1140) into rewritten text (shown in row 1102, column 1162). The software can also rewrite smaller text elements (such as sentences), for example, rewriting the sentence in rows 1104-1108, column 1140, into the rewritten text shown in column 1162 (this is for illustrative purposes only). The software may create additional version 2 records, as shown in rows 1116-1128 (where column 1134 is labeled 2), which are all rewritten versions. The number of sentences in the original text and the rewritten text may differ, which may cause the software to mark certain elements as "blank" (e.g., row 1128, column 1140) or annotate this in the data. The software can create correspondences that take this difference into account, such as associating "blank" records with the best-matching record.
[0038] This software may be based on a database-like structure for processing continuous text files. As mentioned earlier, this could allow the software to maintain logical connections between corresponding points in different text versions. This functionality allows users to maintain logical positions across versions when switching between them and supports sharing location pointers among users—pointers representing corresponding positions in different user documents, even if users are using different versions of the document. This could enable the software to calculate the remaining time of the text, for example, by accumulating the time spent on sentences in the user's currently selected version whose index value is higher than the user's current position. Based on discrete text elements, the software could also provide many other logical operations, similar to filtering, searching, indexing, sorting, querying, compound queries, and calculations in spreadsheets or databases.
[0039] Figure 12This document presents example tables 1200 for text element parameters, 1210 for text style attributes (including corresponding CSS descriptor examples), and 1240 for audio style attributes. The software can use parameter combinations including, but not limited to, the examples shown. The columns for text parameters 1200, text style attributes 1210, and audio style attributes 1240 are independent; except for the associated columns 1210 and 1220, row positions between columns do not indicate any association. The software can maintain a set of text element parameters 1200 for application to text elements (e.g., sentences in a document). The software can apply any text style 1210 based on text element parameters 1200, and also any audio style 1240 based on text element parameters 1200. The software can use mappings, functions, or numerical ranges for text styles 1210 or audio styles 1240, where these mappings correspond to numerical ranges for one or more text element parameters. The software can apply multiple text styles and / or multiple audio styles to a single text element. The software can render content based on the selected text styles and / or audio styles.
[0040] Figures 13 to 16 This demonstrates application scenarios of the user interaction system in different example states, such as the interface that might be presented during software demonstrations. Note: Figures 13 to 16 The image shown is a slightly modified demo UI, designed based on... Figure 3 and Figure 4 The UIS framework shown here includes some elements that have been described in detail in the aforementioned diagrams. Figure 13-16 Some element names or details have changed, but certain elements can be considered as corresponding relationships. Note: Figure 3 The 356 texts (continuous texts) that may be displayed are not included. Figure 14-1 In UIS version 7, this may be due to space limitations; the text may or may not be displayed in UIS.
[0041] Figure 133010: UI interface shown at startup. 3020: The software can be set to start continuous playback mode after clicking the "Start" or "Start Continuous" button 3029. In this mode, the software will loop through the content iteratively. This loop may include the following steps: the software removes previous content elements; the software presents content elements (visual and / or audio forms, with optional visual and audio styles); the software waits for the audio content to finish playing; the software waits for an optional pause duration; the software removes the presented content; the software increments the current text element indicator (e.g., incrementing the current sentence number 3024); then the software can continue to the next loop iteration. 3021 The text element may be presented, corresponding to sentence number 3024; 3022 Audio can be presented through devices such as headphones, and its content can be converted into text form. The presented audio may include text-to-speech content, audio style processing, and audio icons or other sound elements. 3023 Some operations in this demonstration are shown in the bottom panel. This panel is only for demonstration clarity and should not be considered as the final representation of the software's functionality. 3024 The currently presented text element may be sentence 0. 3025 The presentation may display the elapsed time. 3027 The software can estimate the remaining presentation time of the document, calculated based on the estimated presentation time of each text element. 3028 3030 As the presentation progresses, 3031 audio playback may complete. 3032 The software provides pause or delay functions. 3040 The software can remove text elements from the user interface after an optional delay. 3041 The software can automatically switch to the next text element (such as sentence 1 in this example), simultaneously displaying the corresponding text element and playing the corresponding audio. 3053 The software can update the display interface, indicating the number of views for each text element, 3054 or other text parameters. This display can be graphical, shown in text form in the illustration. 3060 The software can be configured to pause or terminate continuous playback mode, or interrupt loop execution, when the stop button is clicked. The software can immediately pause audio playback or continue playback until the current text element is fully displayed.
[0042] Figure 143070, 3080 The software allows users to jump to the previous text element (such as the previous period) by clicking a button. The software will update the user interface and play the corresponding audio. 3090, 3100 The software allows users to change style settings, such as switching styles by clicking the style button. The software can implement text element style changes and display updates, such as by switching the style's true / false state, or turning on / off the visual or audio style of the text element. 3110 The software can implement the following: when the user clicks the "here" button or the play button 308, the text element at the current position can be presented as visual text, audio text, video, image, or other forms. The software provides UIS elements for users to control the vertical mode presentation of text (3120), such as automatically splitting text into short text units (such as phrases) so that they can be stacked vertically. The illustration is only a simplified diagram of the height of continuous text (3122). More examples of vertical mode text can be found in 460 and 423.
[0043] Figure 15The software shown provides a toggle function 3130 to allow users to disable vertical mode, and can display an indicator 3131 and update the text element display 3132 to restore vertical mode. Note that in this simplified example, the software has automatically broken lines 3132 after the words "sample" and "prose," consistent with the display effect before disabling vertical mode in panel 3110. The software provides user interface elements (UIS) for users to select or adjust the text scaling level 3142, such as automatically rewriting content to generate a new version. This UIS element may include a slider 408, a selector, a button (as shown), or other methods for selecting the text scaling level, and may also be used to select parameters that affect how the software automatically rewrites content. Content can be automatically rewritten in a substantially real-time state, such as after a change in a user interface element but before the content is presented. The software can present a new version 3146 of the content, such as a rewritten version of a text element. This text element may correspond to a text element number 3148, such as sentence 0 in this example. Note that the software may maintain the corresponding text element number 3148 across different versions of the content. For example, sentence version 0 (text scaling 1x) presented in panel 3130 may differ from sentence version 0 (text scaling 2x, as shown by indicator 3144) presented in panel 3140. In this example, the software automatically rewrites the text by simply modifying the text element, changing "Here is your sample text with four prose sentences" to "Here is a sample text with 4 prosesentences". The software offers more complex text rewriting capabilities (see other parts of this document for details); this is just a highly simplified example. When the user selects "Next" 3150, the software increments the current text element position 3051 and presents sentence 1 in this example with text scaling = 2 version 3156. The software can also present the text of sentence 1 scaled to version 2 as audio (3158). (3160) The software allows users to instruct changes to the text scaling level (1x in this example) and rewrite the corresponding text (3146) – extending the text presentation time by adding the word "completely". Note that the software may maintain the current position (3051 / 3061) and preserve the corresponding presented text elements (3156 / 3166). Note that the software may present audio immediately after a text scaling level change, or it may delay playing the audio for the newly selected scaling level until the next text element is presented. It should be noted that this example only demonstrates two text scaling levels, but the software may offer multiple scaling levels and various rewrite modes. (3170) The software provides the ability to navigate to and present previous text elements. (3180) The software provides UI elements for users to select text or adjust text highlight levels. The software allows users to select text elements, change highlight levels, or other text parameters using a single gesture.For example, the software can increment the highlight level (from 0 to 1 in this example, as shown in 3183) with a single click of button 3181 or the surrounding area of text 3182. The software can provide a display interface 3184 showing the highlight levels of multiple text elements in the document, such as indicators of consecutive text elements, allowing users to navigate between highlighted text elements. This display can be implemented using graphical UI elements, and text can also be displayed in the illustration. The software can indicate the selection status of the highlight level of the text element at the current position, or display other labels / text element parameters, by changing the presentation style of text element 3184. The software can display an icon 3186 or other indicators to indicate the selection status and highlight level of a text element, or display other labels / text element parameters.
[0044] Figure 16 The .3190 software allows users to select multiple highlight levels for text elements, such as highlight level 2 in this example, and apply different styles and / or indicators. The software offers a review mode. In review mode, the software can focus navigation on a specific text element rather than other elements, such as navigating to the next selected text element 3200. The software provides user interface elements for users to move forward (or backward) to the next selected text element, such as the "Next Option" button shown. The software can increment the position of the currently displayed text element (e.g., the current period number 3202) until the next selected sentence is reached—in this example, from sentence 0 in panel 3190 to sentence 3 in panel 3200. In continuous playback mode, the software can also increment the selected text element. The software can also increment / decrement the selected text element using other selectors (such as slider 475 or other UI elements / controls). The software can then present the next selected text element. In this example, the software supports a review mode, with navigation paths from the currently selected text element to the next selected text element 3200 or the previous selected text element 3210. The software can jump from the current text element position of the 3rd sentence in panel 3200 to the current text element position of the 0th sentence in panel 3210, automatically skipping unselected sentences in between (these sentences may also be displayed as 3204). The software also supports navigation between text elements in review mode based on arbitrary text element parameters (such as queries, keyword / phrase searches, other user selections, comments, calculated importance levels, etc.). The software provides collapsible display elements 3220. For example, when a user clicks on the UIS element 3222, the displayed content can perform the following operations: remove from the interface 3220, restore display 3230, weaken presentation, or change style. This function can achieve "layer-by-layer expansion" of single or multiple text elements or similar collapsible hierarchical structures / bullet / outline formats. The software also provides pinch-to-zoom functionality or other gesture operations to control collapsible display elements or adjust text scaling levels 3140.
[0045] Figure 14-16 The examples shown are for illustrative purposes only and should not be considered as limitations on functionality (such as functionality described elsewhere). These examples are based on demo code rather than production code and may contain errors that should not be considered definitive indicators of the software's intended functionality. Multimodal document reader
[0046] This technology provides users with content consumption, creation, and editing capabilities. It supports multimodal reading and content consumption, such as simultaneously presenting text and its corresponding audio, images, or videos. This technology helps users read, consume, and understand information quickly and efficiently. The software offers a multimodal experience, enhancing processing speed and memory by engaging multiple senses. The software provides real-time automatic text rewriting, further improving processing speed, efficiency, and memory by making text more concise or tailored to user interests. This technology may offer several fundamentally innovative document interaction methods, enabling faster, more efficient, and more enjoyable content reading and digestion experiences in certain scenarios through novel logic and corresponding new interactive system elements and navigation controls, and / or significantly improving information retention rates. Text database Discrete text elements and continuous text
[0047] In some examples, this technology may offer a fundamentally new and different logic, presenting and manipulating text based on discrete logical units (such as discrete text elements like sentences), rather than, or at least not providing continuous text. Some reading methods and technologies may treat text as a continuous stream of content, then manipulate and segment it at arbitrary points. For example, books or e-readers may segment text at arbitrary points to fill the page or screen as much as possible, based on factors such as page size, font size, line width, and spacing. If the technology described herein treats text as a sequence of discrete text elements (such as single sentences representing independent concepts, or lines of code representing single instructions), these discrete text elements can be treated like database elements. The software can implement the ability to present text elements to the user individually. Text elements can be presented in a multimodal format: text and audio are displayed synchronously, then disappear or fade before the next element appears. The software can establish a logical correspondence between the start and end points of text elements and their corresponding audio. This allows users to navigate forward or backward in units of semantic logical units (such as sentences, phrases, paragraphs, highlighted text, or selected text). Other presentation modes may employ arbitrary navigation units unrelated to the logical meaning of the text, such as setting breakpoints at arbitrary locations based on audio duration in seconds, the number of characters or words the page can hold. The software can use discrete text elements, allowing users to manipulate these elements as data units. For example, the software may support selecting an entire sentence with a single click or adding highlight levels to sentences. The software can perform sentence selection, filtering, or sorting functions through queries or Boolean combinations based on text element parameters—for example, sorting by sentence importance or filtering sentences that simultaneously meet the criteria of "containing a specific keyword (Boolean condition) and having a high importance parameter." Different versions of text and their corresponding mappings
[0048] The software may also offer content rewriting capabilities, such as rewriting content into a more concise and shorter version for faster or more efficient reading. For example, the software can rewrite paragraphs from the original version (version 1) of a document into a new version (version 2). When "Text Scaling" = 2, the new version is approximately half the length of the original. In this example, because the text length is reduced by about half, the reader's reading speed in version 2 will be significantly improved. The software can also simplify and summarize continuous text, generating entirely new continuous documents. While users can still read the original text or the summary, there may be a lack of convenient version switching and navigation mechanisms, especially making it difficult to keep reading progress synchronized between different versions. The software can employ discrete text element logic—treating text elements as independent data units—allowing users to switch between corresponding positions in two versions while maintaining their logical position within the document. For example, when a user is at sentence 123 in the original document, they can simply tap the UIS item to switch to the corresponding sentence 123 in the rewritten version, or switch back from the rewritten version to the original version. This software offers a significant advantage: users can seamlessly switch between different versions while maintaining content location across versions. For example, when reading a condensed version of a document, if a user finds a particularly interesting sentence, a single tap will display the corresponding full original version. A second tap allows the user to either advance one sentence to continue reading the full text or switch back to the condensed version. The software can implement a text "zoom" function through a multi-version design, such as setting "text zoom" ratios of 0.5, 1, 1.5, 2, 3, 5, and 10. Users can zoom in or out to view and / or listen to different versions of the same logical point in the text document, such as versions expanded or compressed to different lengths. This advantage is achieved by maintaining a mapping relationship between corresponding points across different versions of the document. The software also supports applying similar logic to other rewriting types, such as translating into different languages or converting to different styles, while still enabling the switching of corresponding points between different versions. Operations that treat text elements as data elements
[0049] This software allows users to perform operations such as selection, filtering, querying, Boolean combination queries, probabilistic combination queries, fuzzy queries, and sorting on different versions of text, since text elements are treated as discrete data units rather than continuous text. The operational logic is similar to handling row data in a spreadsheet. For example, when a user enters the keyword "patent" to indicate interest in the topic in a book, the software can set text element parameters to mark sentences containing the word "patent" in the original text as true, allowing readers to navigate between the original and abridged versions of the book and skip any sentences that do not belong to paragraphs containing the word "patent."
[0050] The software may offer a variety of additional operations on text elements treated as data elements. Examples include, but are not limited to: Conditional formatting: Based on text parameters, the software can automatically format text to highlight or visualize data, similar to conditional formatting in spreadsheets. Data validation: The software can enforce or measure data integrity by setting rules for text elements (such as length limits, content, or formatting requirements). Formulas and calculated fields: Similar to spreadsheets or databases, the software can associate calculated fields with text elements, performing calculations, string concatenation, or operations based on logic. Pivot tables and summaries: The software can group and summarize text elements to discover patterns or compress information to accelerate analysis. Version control and audit trails: The software can track historical changes and save editing records, supporting rollback operations or version comparisons. This function can be handled individually for each text element, such as maintaining audit trails, editing history, or version control for a single sentence or text unit. Data association and integration: The software can associate text elements with other datasets or documents to build queryable and analyzable relational structures. Text elements treated as independent logical units can enable relational database functions, including relational tables, indexes, join operations, etc. Join Operations: The software can establish cross-table or cross-dataset text element relationships based on public keys, supporting more complex queries and analyses. Foreign Key Constraints: The software can establish mandatory referential integrity relationships between different text elements, ensuring database accuracy and consistency. Normalization: The software provides database structuring solutions to reduce redundancy and improve data integrity, which is valuable for managing text element versions, data maintenance, or saving space. ACID Transactions: The software supports transaction processing, treating multi-step data operations as a single atomic operation, ensuring data consistency. Indexed Search: The software can create indexes for text element fields to accelerate search queries and filtering operations. Views and Stored Procedures: The software can present data views based on database operations. It can create data views with specific presentation styles and encapsulate stored procedures for complex operations. Subqueries and Join Operations: The software can execute nested queries and combine data from multiple tables to create complex datasets based on text content. Scripting and Automation: The software supports automated processing of text elements through scripts, such as batch updates, batch updates after queries, or automatic rewriting. Access control: The software can manage permissions and access to text elements based on user roles or conditions, similar to database security mechanisms, including managing access permissions by text element, version, index, record, and other dimensions. Multimodal presentation and independent text elements Multimodal reading based on discrete text elements
[0051] The example is a reading device and method that allows users to read documents. Example before reading The text is automatically split into independent sentences.
[0052] This software allows for preprocessing of documents before user reading. This preprocessing can include automatically segmenting the document into individual text units (such as sentences). A simple method can be specified, using algorithms to segment the document at sentence breakpoints, employing "." location positioning or more complex sentence detection algorithms, and can be combined with human editing or intervention. The software can specify that after segmentation, the generated text units can be stored and used as input for subsequent steps. Document preprocessing may also include rewriting text units (such as sentences) into one or more new versions. The software can specify that the rewritten versions should be concise versions of the original text elements, allowing readers to read the document more quickly and efficiently, or focus on important content. The software can achieve rewriting through artificial intelligence, large language models, or other methods (including human intervention). The software can analyze and encode text to determine the importance of different parts, match keywords or user queries, and / or perform part-of-speech tagging and other automated analyses. The software can automatically generate synthesized audio from the processed text using text-to-speech / text-to-video software. This software can store information, allowing users to quickly or in real-time manipulate text content while reading, as preprocessing is completed beforehand. For example, when text is rewritten in segments of different lengths and text elements are converted to speech at different speeds, users can achieve multi-level "text zoom"—corresponding to different text versions—through user interface elements during reading, and can freely choose the reading speed without waiting for the processing program to generate the selected content. The software can calculate the remaining reading time based on the length of the pre-made text version after the user's current reading position. Examples during the reading process
[0053] The software also supports real-time execution of any of the above processing flows during the reading process, rather than pre-processing. For example, text element rewriting can be performed before the previous text element is presented, after the presentation begins, and / or before the user clicks to request a text element, or before the software automatically starts presenting the next text element. In the real-time implementation, text element rewriting can also occur after the previous text element is presented, after the user clicks to request a text element, or after the software automatically starts presenting the next text element. In addition to the real-time rewriting function, the software can achieve real-time text-to-speech conversion through text-to-speech technology, and supports real-time style adjustment and real-time presentation of text and speech elements, or a combination of the above functions.
[0054] This software allows users to view sentences, text elements, or document fragments in a single-modal or multi-modal manner during reading. Essentially, while the sentence / text element / document fragment is displayed on the screen, the corresponding audio content plays almost synchronously. The software can display content in visual, audio, video, VR, or AR formats, either individually or in combination, and users can control it via UIS controls. The software can also remove sentences, text elements, or document fragments from the screen after presentation. Subsequently, the software can repeat this process for the next sentence, text element, or document fragment and present it individually in a similar manner. User Interface Control and Navigation Single sentence mode
[0055] The software offers single-sentence or single-text-element modes, allowing users to control content navigation element by element, such as by clicking "Next Sentence" or "Previous Sentence" buttons. It also supports paragraph navigation via "Next Paragraph" or "Previous Paragraph" buttons. The software can present complete paragraphs and / or individual text elements (such as sentences) within paragraphs. It can simultaneously provide paragraph and sentence / other text element navigation, allowing users to combine these methods with text element selection and / or highlighting (see text element selection definition). It supports voice command-based text element navigation, including speech-to-text technology. Users can select sentences during or shortly after sentence presentation by clicking user interface buttons. The system can pre-select sentences based on historical user selection data, such as filtering sentences selected by a percentage of historical users exceeding or falling below a threshold. The software displays the text element number corresponding to the selected text element or sentence to the user. Continuous playback mode
[0056] This software allows users to start or stop continuous playback mode by clicking UIS controls. The software provides any of the following functions related to continuous playback mode: continuous playback mode can be started by clicking the play button or a similar button; continuous playback mode can be terminated by clicking the stop, pause, or similar buttons. Continuous playback mode can be started and maintained by pressing and holding a hardware / software button (such as the spacebar). Releasing the button pauses or stops the mode. Continuous playback can be started or stopped via voice commands (including voice-to-text technology).
[0057] The software can specify that, in continuous playback mode, after a text element is presented to the user, the presentation of the next text element will automatically occur after the display duration of the previous text element has ended. The next text element can be the next element in the document in sequence (as shown in the next sentence), or the next highlighted / selected element in the document (as shown in the next sentence); or the next text element in the document with an importance level higher than a set threshold (as shown in the next sentence); or the next element in the document determined based on text element parameters (such as query results) (as shown in the next sentence).
[0058] The software can specify the presentation duration as the audio duration corresponding to the text element, or the word / character count of the text element multiplied by the progress rate, and can add a user-adjustable pause duration, or multiply by a user-adjustable pause multiplier, or calculate it through other logic. The software can specify that after the calculated text element presentation time ends, the software can remove the text element, move it to a different position, or change its style (e.g., reduce its emphasis). The software will then automatically begin presenting the next text element. This process continues until the user expresses a stop intention, such as pressing the stop / pause button, releasing the hardware / software playback button, or issuing a voice command.
[0059] The software allows users to adjust audio playback rate parameters via UIS buttons, UIS sliders, or other interactive interfaces. The audio content corresponding to the text element will be selected in real-time or automatically adjusted to match the user-set playback rate. For example, if the user selects 2x rate, the audio duration can be compressed to half the original 1x speed speech-to-text audio duration. Alternatively, it can synthesize audio to match the user's selection, for example, using speech-to-text technology at twice the normal speech speed to synthesize 2x speed audio. The software uses techniques such as time offset algorithms to compress audio duration, ensuring that the pitch remains essentially unchanged during speed adjustments. Users can select the text presentation version or scaling ratio; for example, when selecting 2x text scaling, the displayed vocabulary is approximately half of the original. For instance, when the user simultaneously selects 2x text scaling and 1.5x audio rate, the system can output content with a combined reading speed of 2 × 1.5 ≈ 300% of the standard reading speed. The software allows the user interaction system to display the remaining text time to the user based on the selected version's remaining vocabulary / characters, remaining audio duration, or other calculations. This method also allows users to set their expected reading time, and the software automatically selects the appropriate version that matches that time. Review mode
[0060] The software offers a review mode where the User Interaction System (UIS) allows users to control the presentation order of text elements or sentences by clicking buttons and other elements via navigation. For example, clicking the "Next Selected Text Element / Sentence" or "Previous Selected Text Element / Sentence" button increments or decrements the text element number, jumping to the next selected text or sentence. The software can visually present text elements or sentences and / or simultaneously play corresponding audio. This navigation, based on text element selection (see definition), provides users with an efficient reading experience: only sentences or text elements previously marked as important by the user are read, skipping unselected content. The software can algorithmically skip unselected sentences or text elements, jumping to the next sentence after the previously selected one—for example, jumping to the sentence where the "Selected Text" element parameter is set to true. The software can algorithmically skip sentences or text elements, skipping corresponding content based on text element selection. The software can display the text element number corresponding to the selected text element or sentence to the user, 418,326. Click to select and highlight text (including multi-level highlighting effects).
[0061] This software offers a method based on discrete text elements, enabling more efficient text selection and highlighting. In some continuous text selection methods, users may need to spend considerable time and effort completing multiple steps: first locating and selecting the start and end points of a sentence, then selecting the middle area, and finally performing the highlighting operation. Each selection / highlighting operation can take several seconds. However, this software provides a method based on discrete text units or blocks, allowing users to select text units, sentences, or blocks almost instantly with a single tap. The software allows users to select text elements without pausing the visual / audio presentation of the text or interrupting continuous reading mode. Furthermore, the software supports users directly selecting single sentences or individual text elements without interacting with the visual text (e.g., listening to audio of text elements without clicking buttons or issuing voice commands). The software provides users with UIS elements for selecting or highlighting text elements at different levels—for example, tapping a text element increments or decrements the highlight level within ranges of 0-1, 0-3, or 0-5 to reflect increasing importance, selection status, or highlight intensity.
[0062] The software offers different visual styles for text highlighting levels. For example, highlighting levels can be associated with different presentation colors, which can be used as the background color, border color, text body color, or the color of icons used to mark highlighted text (such as bookmark icons).
[0063] In addition, the software can present a highlight screen for users to view highlighted text elements. The software provides a highlight screen 930, allowing users to filter or sort text elements based on highlight levels. Users can navigate to the highlighted text element to begin reading, or return to the reading screen 400 (optionally after filtering or sorting), by clicking on the text element or using other UIS functions designed specifically for this purpose, or by otherwise indicating navigation intent. This highlight screen, query or selection process, and navigation process can be combined with other text element parameters, such as using Boolean logic to query or filter based on selection level and text importance assessment, selection level, keyword content, or other criteria based on text element parameters. The software provides a way to store or export highlighted / selected text elements, or the text element results of this selection process. User-adjustable reading speed and related UI elements
[0064] This software provides users with means to control the content reading / consumption rate. Examples of means to control the reading rate include: a UIS slider 406, UIS buttons for increasing or decreasing the reading rate, and a UIS indicator 409 displaying the current or target rate. The reading rate can be set as a multiple of the standard rate; for example, using 2x speed (200%) indicates that the content will be presented at twice the standard rate. The software can also provide an algorithmic function to adjust the reading rate.
[0065] This software provides a means to control the speed at which content is read or consumed. This control mechanism can be implemented using user interaction system (UIS) elements, such as a slider 406, a button 344 for increasing or decreasing reading speed, or UIS indicators 303, 416, 417 displaying the current / target speed, as well as numeric input boxes, selectors, or other types of UIS input devices. The reading speed can be presented and selected as a multiple of the standard reading speed. For example, the software can be set to display the document at twice the standard speed when 2x speed (200%) is selected. This feature allows users to customize their reading experience according to their individual reading speed and comprehension level; this reading speed can be saved as a user profile setting.
[0066] In addition to manual control, the software also supports automatic adjustment of reading speed or consumption rate. The system uses machine learning algorithms to analyze user reading behavior and automatically adjusts the reading speed accordingly. The software provides a personalized reading experience tailored to each user's individual reading speed and comprehension level, dynamically adjusting the reading speed based on user interaction with the content. For example, if a user frequently pauses or rewinds content, or if eye-tracking software indicates that they take a long time to read text elements, the software can automatically reduce the reading speed. Conversely, if the user rarely pauses and progresses quickly, the software can increase the reading speed. This dynamic adjustment mechanism helps maintain an optimal balance between reading speed and comprehension. Eye tracking
[0067] This software uses eye-tracking technology to assess user intent and commands. Users can indicate their readiness to perform an operation through eye movements or eye positions (measured by the software via eye tracking). The software can use eye tracking to determine if the user's gaze is focused on a button or screen location indicating a command, such as command 370 indicating readiness to receive subsequent content. The software can also determine if the user has focused their fovea on a focal target location 318 near the end of the presented content or containing the last word, indicating readiness to continue. When the user indicates readiness by looking at this target, the software interprets this as a command to present the next text element or content. The software allows users to perform other content control operations via interactive system buttons 320, including pause, fast forward, rewind, quick rewind, and rewinding a specified number of text items. The software allows users to select the starting position of the presented content via commands: the beginning of the current sentence, the previous sentence, the beginning of the current paragraph, the beginning of the current chapter, the beginning of the next sentence, the beginning of the next paragraph, or the beginning of the next chapter. The software allows users to indicate their readiness to receive text content by using eye-tracking technology to gaze at screen elements 320 (e.g., the visual presentation of buttons or icons) that the user understands to have meaning, or by clicking the button / icon, or by gazing at visually presented text elements on the device screen (including user interaction system elements 310).
[0068] This software can be configured to determine whether a user intends to continue reading or interacting with the text, or is paying attention to the text, if the user gazes at the area containing the text. If the user stops gazing at the area or looks away within a threshold time, it is determined that the user is not engaging with the text or is not paying attention to it. The software can be used to calculate statistical data, such as the duration of user interaction with specific text elements or documents. The software supports users selecting UIS elements through gaze. For example, the software can provide the following selection methods: the user can select to enter the presentation interface of the next text element by gazing at the end of the current text element or gazing at the button / UIS indicator that indicates entering the next text element. The software can achieve this through eye-tracking technology: any navigation or other control element can be activated by the user gazing at the element or gazing at the element for a preset duration. Eye-tracking technology uses eye movement to estimate reading position and / or reading speed.
[0069] The software can also automatically adjust reading speed using eye-tracking technology. For example, when eye tracking shows that the user's gaze (or fixation point) has reached the end of a text element, the software can adjust the reading speed accordingly. The user's reading speed can be calculated by dividing the number of characters or words in the text element by the time it takes for the user to reach the end of the text element (indicating completion) from the first presentation or first fixation of the text element. The software can also calculate the average dwell time for each character across multiple text elements, thus providing insight into the user's reading speed and comprehension level. For example, when a user saccades to a new fixation point, the software can calculate the number of text characters skipped relative to the previous fixation point, and the time interval from the start of the previous fixation point to the end of the previous fixation period (i.e., the start of the new saccade). The reading rate during this period can be calculated using the following formula: Number of characters in the currently fixated text element divided by fixation duration: Number of characters / (Fixation end time minus fixation start time). By calculating this metric across multiple text elements (e.g., fixations during sentence reading), a summary statistic of the user's reading rate can be obtained, measured in characters per minute, words per minute, or text elements per minute. This statistic can be used to estimate the user's overall reading rate or the reading rate of a specific text element. For example, reading rate can be estimated by calculating the user's average or median words per minute through multiple measurements. The software's reading rate can automatically adjust to match the user's reading rate or automatically set a target rate—which can be set as a multiple (fast / slow) of the user's reading rate or a fixed value (fast / slow). The reading rate of a text element can also be calculated non-eye-tracking: dividing the number of characters in the text element by the time the user fixates on that element (e.g., # number of characters / (time to click the next sentence button - time to last click the next sentence button)). Reading rates calculated using eye tracking can be compared with those calculated using non-eye tracking. The calculated reading rate of a text element can be stored as a text element parameter.
[0070] If eye tracking shows that a user frequently retraces their reading path (i.e., their gaze jumps to a position in the text before the current reading point), it may indicate difficulty in comprehension or concentration. In this case, the software can reduce the reading speed to promote comprehension. The software can detect retracing behavior during the reading of text elements and intervene by extending the text presentation time or reducing the reading speed of that element (e.g., allowing time for rereading the retraced text). Similarly, the software can measure user reading behavior patterns. Patterns deviating from linear reading (such as frequent paragraph skipping or jumping between paragraphs) may indicate that the user is struggling with the content or reading speed, thus triggering the software to adjust the reading speed. By using eye tracking data, the software can provide a more personalized and adaptive reading experience, precisely matching the user's reading habits and abilities. Text rewriting and scaling functions Automatic text rewriting, simplification, and multi-length text scaling
[0071] This software allows users to select a text "zoom level" of 400, which determines the length of the presented text. This feature allows users to customize their reading experience by adjusting the depth of detail. For example, the software can automatically compress, simplify, summarize, rewrite, or expand the original text to provide more detailed content. The text compression or shortening process can also be considered part of the text scaling process. The software enables text scaling, allowing users to read text elements or documents faster and more efficiently, or improve comprehension efficiency (amount understood per unit time). The software refines the text while preserving conceptual content, similar to "lossless compression" in the digital realm. The software also provides functions for querying, filtering, or selecting important text elements, or selecting matching elements based on user keywords and other inputs, thereby achieving faster text browsing, similar to automatic skimming. This feature can be compared to intentional "lossy compression," discarding unnecessary parts of the text.
[0072] This software can compress text to different percentages of its original length. It can compress text to any length, including but not limited to 1%, 2%, 5%, 10%, 20%, 25%, 33%, 50%, 66%, 75%, 80%, 90%, and 100% of the original length. The software also supports text expansion to any length, including but not limited to 101%, 102%, 105%, 110%, 120%, 125%, 133%, 150%, 166%, 175%, 180%, 190%, 200%, 300%, 400%, 1000%, or higher. The software offers users a variety of options, from brief summaries to full text to more detailed versions. Text can also be expanded beyond its original length. The software supports adding more details, explanations, or examples to the original text, providing richer content relevant to the topic.
[0073] This software can automatically perform text compression, expansion, or rewriting processes using algorithms. The compression or expansion process can be automated using algorithms employing artificial intelligence or language models. For example, inputting the prompt "Compress the following text to approximately 50% of its original length: <Input Text>" into an AI language model such as Da Vinci or GPT will generate simplified text. This process can be repeated to generate multiple text variants. The generated text variants can then be filtered to ensure they are of appropriate length and adequately convey similar meaning and information. Example prompts provided in later chapters can be input into existing or future AI / language models such as GPT4 and Llama to complete specified tasks. This creation and filtering process can be assisted, edited, updated, or ultimately completed by humans. The software can support selection processes completed through algorithms or AI, for example, using the prompt: "Please select the option that best conveys the meaning of the original text from the following simplified text: Simplified Text 1: <Simplified Text 1> Simplified Text 2: <Simplified Text 2> Original Text: <Original Text>" Such compression or expansion can be based in part on: user-selected keywords, concepts, queries, questions, previous reading materials, knowledge level, and language proficiency. The compression or expansion can also be based in part of speech, word frequency in the corpus, or lexical importance / information content. Text rewriting and real-time rewriting
[0074] Document text can be rewritten in multiple versions, such as sentence-by-sentence, paragraph-by-paragraph, section-by-section, or the entire document. This process can be performed during the pre-reading stage or in real time. In pre-reading rewriting, text elements can be rewritten before the preceding text is presented to the user. Real-time rewriting refers to rewriting after the preceding text elements begin to be presented. Here, "before rewriting" or "after rewriting" can refer to either the algorithmic rewriting start time (before / after rewriting) or the algorithmic rewriting completion time (before / after rewriting). Text rewriting can be achieved manually or automatically, for example, using algorithms based on artificial intelligence (AI) or large language models. In the field of reading technology, text rewriting can be used to customize the reading experience, allowing users to interact with the text at different levels of detail. Rewrite the association mechanism between text versions
[0075] The software can maintain pointers or associations between corresponding elements in different rewritten versions of text. This feature enables seamless switching between text versions while maintaining the user's reading progress, thereby enhancing text navigation capabilities. Text priority-based selection mechanism
[0076] This software offers text scaling functionality, achieved by selecting sentences. This function can replace or combine sentence rewriting with text scaling. For example, to generate a version of text halved in length, the software can filter sentences whose importance parameter values reach 50% or higher of the text average. Furthermore, the software can simultaneously employ a combination of shortening text element versions and filtering based on text element parameters. For instance, the software can provide a text version where selecting sentences ensures the text importance parameter of the selected version (original or rewritten) reaches 50% or higher of the text average, and when multiple text element versions simultaneously meet this condition, this version is the shortest. The software can select based on text element parameters (such as importance) and use algorithms to achieve an overall length close to the user's selected scaling level. For example, when the user selects 2x text scaling, the software can query sentences by importance level and gradually add sentences until the selected total length reaches half of the original length. The software can determine its text element parameters based on algorithms that measure the relevance of text elements to the user's keyword / phrase selections or questions (e.g., using artificial intelligence). This feature allows the software to personalize text based on the user's specific interests or queries. Text duration display
[0077] The user interaction system can display elements showing the duration of text or text paragraphs, in units of words, characters, sentences, text percentages, or presentation time. This feature helps users clearly understand the text length, thus managing reading time more effectively. Target text duration selection
[0078] The user interaction system offers options that allow users to set a target text duration by word count, character count, or presentation time. The software will then rewrite the text accordingly to match the target length. This feature allows users to control reading time while ensuring that the same text content is covered. Text scaling and corresponding sentence positioning Text version switching
[0079] The user interaction system provides a text version switching function. When a user selects different versions, the software should ensure that the correspondence between points in the text remains unchanged. This function allows the user to switch between multiple versions while maintaining the current reading position (408, 346, 348). Display of corresponding text version
[0080] This software can display different versions of text side-by-side, for example, showing corresponding positions within the text. This function allows users to compare different text versions and also provides a "DIFF" difference comparison function to show the differences between versions or editing modifications.
[0081] Once the text is compressed or expanded to the desired length, the user can select the desired text "scaling level" for display. (400). This feature allows users to control the level of detail and complexity of the text they read, customizing their reading experience according to their personal preferences and learning goals. Text scaling Text zoom level selection
[0082] This software provides User Interaction System (UIS) components (such as sliders, buttons, or voice commands) for users to select text scaling ratios. For example, users can choose any ratio or percentage, such as 1x, 2x, 100%, 200%. This feature allows users to control the version of text they see at any time, thus enhancing the reading experience. For example, when a user selects 2x text scaling, the software can display text that has been rewritten to be approximately half the length of the original document. Furthermore, based on the selected text version, the software can provide users with the estimated reading time (in units of character count, word count, reading time, or audio playback duration) for the entire or a portion of the document through the interactive system. For example, the software can display the time spent on the current chapter or a completed portion of the book, as well as an estimated remaining time. Text scaling example
[0083] Text scaling software can generate different versions of input text. This software can automatically rewrite raw text into one or more versions, such as scaling levels, outline formatting, simplified versions, paragraph headings, different language versions, or other formats. The software can simplify text, for example, generating simpler sentence structures or versions tailored to the target reading level. The software can also generate heading or outline format versions. Below is an example of multiple versions of a single paragraph text element:
[0084] The text is scaled up to 1x. The original text reads: "If all the buildings, classrooms, teachers and properties in the Hamptons were removed, and the local people were allowed to have daily contact with General Armstrong, that in itself would constitute a liberal education. As I have grown older, I have become more and more convinced that no education that any books and expensive equipment can provide can compare to the enlightenment gained from contact with great men."
[0085] A simplified version: "Imagine if Hampton had no buildings, classrooms, teachers, or industries, but instead, students and teachers encountered General Armstrong daily. This experience alone constitutes a complete education. As I've grown older, I've become increasingly convinced that the education provided by books and expensive equipment is far less enlightening than the encounters with great men."
[0086] Enlarge the text by 2x: "I believe true education stems from interaction with outstanding individuals, not from resources. Hopefully, schools will recognize that studying people and their experiences is more valuable than reading books." Enlarge the text by 4x: "Education comes from people, not just books. Schools should focus more on learning from the experiences of others." Enlarge the text by 10x: "The Greatest Teachers Teach the Most Profoundly." Enlarge the text by 10x (Spanish): "La Grandeza" The text "Mejor" is enlarged by 10% (Spanish mixed with English): "Greatness" The paragraph heading "Best" reads: "Education through exposure to great ideas." In these examples, the selected text scaling ratio (e.g., 1 / 2, 1 / 4, 1 / 10 length) may not be fully achieved; that is, the final text length may be close to 1 / 2, 1 / 4, ... 1 The scaling factor is 1 / 10, but not a perfect match. The software can also provide users with more accurate scaling factor estimates, such as by comparing the original text length with the length of different versions, presenting the proportional relationship in terms of character count, word count, audio duration, display time, or other comparative indicators.
[0087] The example above was generated using the following AI prompt: "Rewrite the text to shorten its length based on the specified scaling factor. For example, at a 2x scaling factor, the text will be rewritten to approximately half the original number of characters. Use short sentences during rewriting to preserve the original style and core content. Input text: <Input text>. Scaling factor: <Scaling factor>." This is just a single example; different prompts can generate diverse results.
[0088] This software can generate different versions based on AI prompts, including hierarchical outlines, bullet points, lists, and other hierarchical formats. Example of AI prompt for outline generation: "Rewrite the following text as an outline: <Input Text>". This is just a single example; different prompt texts will achieve different effects. The following are example results:
[0089] A layered outline version generated from a simple rewrite:
[0090] "Education through exposure to great ideas" a. Imagine if Hampton had no school buildings, classrooms, teachers, or property. b. Instead, people encountered General Armstrong every day. i. This experience alone constitutes a complete education. c. As I grow older, I become increasingly convinced that the education gained from books and expensive equipment is far less valuable than the experience of meeting great people.
[0091] Simplified version of the hierarchical structure: ● Education through contact with great people Imagine Hampton without school buildings, classrooms, teachers, or property. Instead, local residents had daily access to General Armstrong. ■ This experience alone constitutes a complete education. ○As I grow older, I become increasingly convinced that the education gained from books and expensive equipment is far less valuable than the experience of meeting great people. Text scaling UIS controller Text scaling is based on the importance of selected text elements or algorithmic sentences.
[0092] The software may present filtered text to the user based on the "importance" level of text elements. Text elements can be selected in various ways, as detailed in the definition of "Selected Text Elements". For example, text elements with calculated importance values below or above a selected threshold may be excluded from the presentation or selected for presentation. In this case, the software may skip filtered or non-compliant text elements. The user experience will be that filtered text elements are not displayed, while the remaining text elements are presented normally. The software may also perform calculations based on text element selection and display the results to the user. For example, the software may allow the user to select a text zoom level, then filter elements within that zoom level range, and calculate the remaining document time based on the selected text elements—for example, by calculating the total audio duration, total number of characters, or total number of words within a specific text range, and multiplying it by a specific coefficient (such as a reading speed coefficient).
[0093] The screen displays a single sentence, visually distinguishing it from other content.
[0094] Text elements can be presented to the user independently and visually distinguished from other content. For example, when reading documents such as books, a single sentence from the document text can be presented to the user, making it visually distinct from other elements displayed at the same time. Text elements can achieve visual differentiation from the rest of the document in a variety of ways.
[0095] The software can achieve visual differentiation by displaying only a single text element within a rectangular area (which does not contain any other text elements in the document). The software can also achieve visual differentiation by displaying only a single text element within a rectangular area (which does not contain any other text elements in the document). Text can be visually differentiated by displaying only a single text element within a rectangle that does not contain any other text elements that are replaced in the document. Text can also be visually differentiated by displaying only a single text element within a rectangle that does not contain any other text elements that dynamically change during the user's browsing of the document. User Testing, Metrics, and Gamification User reading speed, reading volume, and other user metrics
[0096] This software provides the ability to estimate, measure, or receive user reading speed and / or reading volume through a user interface (UIS). The software can provide users with reading speed or reading volume metrics via a visual UIS or audio prompts, including the number of words read, reading time, number of characters read per unit time (e.g., characters per minute), number of words read per unit time (e.g., words per minute), and number of sentences or text elements read per unit time (e.g., sentences per minute). Reading speed, reading volume, and other metrics can be presented numerically on the display screen or as graphical elements (e.g., bar charts, graphics with varying sizes / colors). Reading speed, reading volume, and other metrics can also be presented via voice prompts (e.g., using text-to-speech technology). Reading speed, reading volume, and other metrics can also be presented as audio icons or other audio indicators, such as playing sounds to prompt the user that the speed has reached a target level, has increased or decreased, exceeded or fallen below a threshold, or that the user has completed the target reading volume (e.g., completed text units, sentences, paragraphs, chapters, sections, documents, or books).
[0097] Reading speed and other metrics may also include elements derived from tests, such as comprehension tests, memory retention tests, or other testing methods (see relevant sections). Reading speed metrics may include the estimated number of words or sentences understood per unit of time, and the estimated number of words or sentences retained or remembered per unit of time. User reading speed metrics may be specific to the current user or to one or more other users or user groups. Reading speed metrics compare the current user's metrics with those of other users or user groups. For example, the software may show the user the ratio of their reading speed to that of other users (or user groups), who may share (or not share) one or more characteristics with the current user, including but not limited to age, gender, education level, occupation, reading skill level, game level, team affiliation, or other user profile data. Other user data used by the software may be historical data or real-time data collected from other users online simultaneously with the current user, enabling real-time comparison, competitive interaction, gamified experiences, and multi-user collaborative reading scenarios. This software may use eye-tracking technology to estimate the time a user spends focusing on text elements, groups of text elements, or documents. This estimate can be used as a reference indicator for reading time, attention span, or concentration duration.
[0098] The software may include features to calibrate user reading speed or support multi-point reading speed comparisons, with the option to display the results to the user. The software can ask the user to read sample text of known length while measuring the time taken, thereby estimating the user's reading speed. This calibration process can be repeated periodically to adapt to changes in the user's reading speed over time. The software allows users to set reading speed goals, such as a target number of words per minute or the amount of reading within a specific time period. This time period can be set as a short cycle, such as a single reading session, or a longer cycle, such as a month. The software will continuously track the user's progress towards their goals and provide feedback and incentives. Feedback may take the form of visual indicators such as progress bars, badges, visual rewards, or charts displayed on the user interaction system, or audio feedback (such as encouraging voice prompts) such as voice icons or voice prompts to display reading speed, reading volume, and other indicators.
[0099] This software offers features to improve reading speed, including exercises designed to enhance reading speed (such as increasing presentation rate) and suggestions for faster reading techniques. The software also provides feedback on user performance, helping them identify areas for improvement. It can measure other metrics such as reading volume per unit time, consecutive reading days, and comprehension score.
[0100] In addition to measuring metrics such as reading volume per unit of time, consecutive reading days, and comprehension scores, the software can also calculate or measure other metrics to gain a more comprehensive understanding of the user's reading habits and performance. These additional metrics may include, but are not limited to: Reading speed: The software can calculate the user's reading speed in units such as words per minute (WPM), characters per minute (CPM), sentences per minute (SPM), or other metrics, which may also be assessed based on comprehension or memory retention. Reading consistency: The software can track metrics related to the user's reading consistency, such as consecutive reading days, daily reading time, average daily reading time, or fluctuations in reading time across different days. This feature helps assess the user's reading habits and persistence. The software can reward consecutive reading records through points, badges, and gamification mechanisms. Users can share reading records and awards to communication services, contacts, or social media, and can also create monitoring partners or groups. Reading comprehension: The software assesses the user's comprehension ability through methods such as text-based question-and-answer, content summarization, or text prediction. User answers are scored and compared with correct answers to determine comprehension levels. The software can also assess comprehension in various ways, including multiple-choice and essay questions, which can be graded manually or automatically by the software. Reading Memory: The software can assess a user's retention of text content by asking questions hours, days, weeks, months, or years after reading. User answers are scored and compared with correct answers to determine their retention level. Reading Engagement: The software can measure reading engagement by tracking user interactions with the text (such as eye tracking, reading time, annotations, notes, bookmarks, or sharing). Reading Difficulty: The software can assess the difficulty of text elements based on factors such as vocabulary complexity, sentence length, information density, and topic familiarity, and uses artificial intelligence to estimate the reading difficulty level. Reading Level: The software can assess a user's reading level based on the difficulty level of the text, reading speed, comprehension, memory, and other indicators, thereby matching the user with suitable reading materials. Reading Recommendations: The software may provide reading recommendations based on: materials similar to those already read or actively commented on by the user; materials read or actively commented on by similar users; materials at the user's reading level; or materials on topics similar to those previously read by the user. Comparison Metrics: The software may calculate or provide metrics for comparing the current user's metrics with those of other users or with a user group. For example, the software may calculate the percentile of the user's metrics within a user group distribution. This user group can be filtered based on user profile data, including selecting profile characteristics similar to or different from the current user. For example, if the current user is a 24-year-old male with a university degree, the software may provide the percentile of their reading speed, reading level, or reading volume over a specific period among users with similar demographic characteristics, such as their ranking among university-educated users aged 20-25 (regardless of gender). Reading Progress: The software can monitor the user's reading progress by tracking the number of pages read, chapters completed, or the percentage of books / documents completed.Reading Errors: When a user reads aloud and the software records their reading, the software can detect and analyze reading errors, including incorrect quiz answers, pronunciation errors, omissions, insertions, or substitutions. Reading Preferences: The software can record a user's reading preferences, including preferred reading time, reading environment, reading mode (such as silent visual reading, audiobook listening, multimodal reading, visual style features, and audio style features), or preferred reading material (such as genre, author, and topic). This information may be stored in a user profile. User profiles can be shared across multiple devices or platforms, for example, based on user accounts accessible across different devices. Multiplayer mode
[0101] This software offers a multi-user or multi-reader mode, including simultaneous or sequential collaborative reading. The software can display various information about other users to the current user, including profile data, reading metrics, reading position, marked content, and comments. The software supports game-like experiences or competitions between users, such as allowing two or more users to compete in reading contests. Such interactions can be performed in parallel mode (where users view others' reading progress in real time) or serial mode. In serial multi-user mode, the software can simulate real-time parallel reading based on the start time of other readers—that is, displaying the same information that would be shown if that reader were reading synchronously.
[0102] The software may support collaborative or competitive reading in teams. Users can view the text positions of other readers, including simultaneous readers (synchronous mode) or previous readers (asynchronous mode, tracking relative progress with respect to a participant's starting time). Readers or teams can earn points by collecting points, finding and marking "targets" (such as specific words, phrases, answers, or concepts) in the text.
[0103] This software offers additional features for multi-user mode, including but not limited to: User interaction: Supports sharing reading progress, comments, or annotations among users. Real-time and delayed competition: Multi-user mode supports both real-time and delayed competitions simultaneously, simulating a live competition even when users are not reading synchronously, for example, by providing users with a real-time reading simulation synchronized with another user. User performance metrics: The software can display specific user performance metrics to other users as a basis for competition or collaboration. Reading competition: The software can display the user's position in the text in a real-time or simulated real-time environment to promote reading competition. Content synchronization: The software enables multi-user synchronized reading of content, allowing users to share elements of the reading experience (such as viewing the same content simultaneously). Remote synchronization: The software supports cross-device content synchronization, allowing users to follow content or presentations in real time. Synchronous live streaming and real-time translation engine: This software can achieve synchronous live streaming to multiple devices and provide selected language translation services for text content to different users during the live stream. Language preference profile: Users can set language preferences in their profiles, and the software will automatically apply these settings, including in parallel or synchronous live streaming sessions involving multiple users. Text input, rating and gamification features
[0104] This software may offer testing, scoring, and gamification features, including but not limited to the following: Progressive Levels: A level-based system where users can gradually challenge themselves with increasingly difficult levels as their skills improve. Experience Points (XP): Users earn points for completing specific activities (such as reading a specified text element or achieving a reading volume goal), used to track progress. Leaderboards: Displaying or sorting scores and other reading metrics for multiple users. Comparing users based on reading volume, reading speed, comprehension, or specific text reading performance. Continuous Records: The software can measure and display information related to continuous records. For example, the software can count the number of consecutive days a user has read or the number of days they have achieved a reading goal. The software can provide features related to winning streaks, such as the ability to "repair" interrupted records. The software can display continuous usage information or reward users for maintaining regular usage habits such as hourly / daily / weekly. Users can share winning streaks to monitoring partners, contacts, social media, messaging apps, etc. Achievement Badges: The software allows users to earn badges by achieving milestones or completing specific challenges (such as reading volume, reading speed, completion of specific content, daily / weekly / monthly book completion challenges, daily document reading challenges, or other reading volume challenges). Users can create custom challenges or milestones, aligning their reading experience with personal goals. The software can adaptively award badges based on user reading habits and dynamically adjust the difficulty and type of milestones based on historical achievements. Non-player characters: The software may provide non-player characters (NPCs). For example, NPCs can simulate other user roles, creating a multiplayer experience. The software can deploy NPC participants in reading competitions. The software can simulate any interaction between users and other users within the software. The software can use artificial intelligence models to create NPCs or determine their behavior patterns. Timed challenges: Users must complete specific tasks within a limited time, such as reading through a designated text chapter. Heartbeat / Health system: The software can introduce gamification elements, such as users initially having a fixed number of health points; incorrect answers result in a loss of health points, while completing tasks (such as successfully reading a paragraph or finding a target element) earns rewards, thus adding a risk-reward mechanism to learning. The software can increase or decrease health points based on the user's reading volume, reading speed, or identification of specific target elements. Interactive stories: The software can provide interactive story scenarios where user skills directly affect the story's direction, such as dynamically changing content based on the number of correct answers. Chatbot: The software allows users to practice conversational skills with an AI chatbot, engage in dialogue, answer quizzes, and receive feedback and ratings. Peer Challenges: The software allows users to initiate reading competitions, reading volume contests, language duels, or quizzes with friends or other users. Users can participate in challenges automatically arranged by the software. The software can filter challenge groups based on reader profile information or reading metrics, such as selecting readers with similar reading levels or volumes to read the same material together within a specified time. Users can rate and compare their work. Unlock Content: The software provides users with the ability to unlock new content, such as books, courses, levels, or special features.Users can unlock content by completing preliminary tasks, achieving target scores, or other in-app achievements. Users can also unlock content by paying with real or virtual currency, referring others, registering an account, or other actions. Virtual Currency: The software allows users to earn points or virtual currency after completing tasks. These points or currency can be used to purchase in-app items or features, including content, reading materials, character outfits, or skills. Personalized Learning Paths: The software can test users' existing language skills and create personalized learning paths based on their strengths and weaknesses. Spaced Repetition Tests: The software can periodically test users' previously learned content, such as assessing or reinforcing long-term memory. Grammar Challenges: Design specific challenges or tests to test and reinforce grammar rules. Vocabulary Expansion Games: Provide games specifically designed to expand users' vocabulary. Pronunciation Practice: Score users' pronunciation skills using speech recognition technology. Listening Comprehension Tests: Test users' ability to understand spoken language in different contexts. Writing Practice: The software can score users' ability to write accurately on a given topic, specific document, or in a target language. Users can input written or oral expressions. The software can automatically score user input, such as using AI to determine a user's level of understanding of text elements or documents. For example, the software can use AI commands like: "Assess the user's level of understanding (0-100 points) based on their summary of the reading text. Reading text: <Reading text>. User summary: <User summary>". Reading comprehension quizzes: The software can include sections for testing user comprehension abilities. Quiz formats include: providing multiple-choice questions, requiring users to summarize text elements or documents, and posing questions about text elements or documents. The software can also automatically score answers, such as using AI to evaluate responses. For example, the software can use AI prompts like: "Determine the level of understanding (0-100 points) based on the user's answer to this question. Reading text: <Reading text>. Question: <Question>. User answer: <User answer>". Test users by combining feature questions
[0105] The software presents questions to users through a user interaction system that incorporates multiple features, and scores users based on combinations of these features (see [link to software]). Figure 6(600). For example, the software can be configured to include one or more additional question features in the multiple-choice questions received by the user. For example, the software can be configured to include a user-provided confidence rating feature in the multiple-choice questions received by the user. Furthermore, the software can include an independent confidence rating feature in the multiple-choice questions received by the user, which independently evaluates the potential answers to the multiple-choice question. The software can specify that the scoring of such questions should comprehensively consider whether the user provides a correct answer and its confidence rating. For example, it can calculate a positive score for a correct answer and a negative score for an incorrect answer, and perform weighted or multiplicative calculations based on the user's confidence rating. The software can set up a negative scoring mechanism to suppress user guessing behavior, thereby more accurately assessing their knowledge level. By adopting confidence rating, the user's mastery of the question can be more accurately measured, further reducing the influence of guessing and improving the sensitivity and specificity of the question in assessing the user's understanding of the answer or knowledge point. The software can provide a positive and negative scoring mechanism for the question (or its components such as options) and weighted calculations based on confidence rating. In addition, the software can time the user's answering process.
[0106] The software allows users to rank the importance of different potential answers or answer components. Figure 6 (610). For example, in multiple-choice questions, the software can provide multiple answer options and allow users to rank them according to their relative value or importance to the question. For example, in multiple-choice questions, the software can provide multiple answer options and allow users to quantitatively evaluate the relative value or importance of the answers to the question through numerical rating scales, visual analog scales, or graphical ranking methods. For example, in multiple-choice questions, the software can provide multiple options and ranking functions (such as dragging options or using a drag-and-drop interaction system). The software can score user answers by combining the quantitative scores of potential answers with the scores of the correct answers. The software can also provide mechanisms for users to mark incorrect answers, flip the true / false values of answers, or rewrite answers until the correct answer is found.
[0107] A user's score may be calculated by combining other scoring factors with the time taken to answer the question. For example, the score may be weighted according to the time taken to answer the question: a shorter time results in a higher score, while a longer time results in a lower score.
[0108] This software provides users with scoring or rating functions to rate individual components of single or multi-component answers, allowing users to act as raters rather than learners—regardless of their actual role as raters or readers / learners. For example, when a user receives an answer presented as an "argumentative answer" or paragraph text, the system can provide the following: assign numerical importance scores to text elements in the answer; invert the true / false values of elements or rewrite them as their opposites; or automatically convert elements to their opposites. For instance, a user can click on a sentence in a paragraph to highlight it to different levels based on its importance, or invert its expression. Subsequently, the software can calculate the user's total score based on the user's rating or rating results for the provided answer. For example, if a user receives five answers requiring rating, and the optimal rating for that answer (sorted by sentence) is [-1, 0, 2, 5, 1] (i.e., the first sentence is false, and the relative importance of the subsequent four sentences to the correct answer is 0, 2, 5, 1 respectively), when the user clicks on a sentence in the answer, the system will record the number of clicks and generate a user rating [-1, 3, 3, 4, 2]. The user score can then be calculated by combining multiple part ratings with one or more correct target ratings. This type of combined rating can be applied to any multi-part question or question sequence. For example, the correct answer [-1, 0, 2, 5, 1] can be compared with the user's submitted answer [-1, 3, 3, 4, 2], and the user's overall score can be determined by calculating metrics such as vector dot product, average error, correlation coefficient, or correlation coefficient. The user's score can be evaluated by comparing it with other users, such as determining the similarity between their answer and those of high-scoring or low-scoring users.
[0109] The software supports weighting user scores based on the difficulty of the question or question component. It also supports comparing user scores with the score distributions of different user groups, or using curve scoring methods, such as calculating the deviation of a user from the group average, the user's standardized score within the group, the user's Z-score within the group, or the user's percentile score within the group. Sentences are automatically segmented into visually independent segments.
[0110] This software can automatically segment text into visually separate block units. For example, it can break sentences down into individual phrases. The software can set top, bottom, left, and / or right margins or inner margins for each block to visually separate it from other phrases, and these margin settings differ from the spacing between words within the block. The software can also apply individual text styles to each block, making it appear as a visually independent unit. Text style, visuals and audio Text styles, audio styles, video styles
[0111] The software supports stylized processing of text elements. The software supports stylized processing of audio elements. The software supports stylized processing of video elements. The software supports presenting text or text and audio elements (any element can contain multiple text styles) to the user. The software supports automatic stylized processing of text and / or audio elements. The software allows users to set styles for text and / or audio elements, or to combine automatic styles with user-defined styles. The software can present text and / or audio elements to the user through style settings to highlight text content or specific text types. The software can provide content to the user through style settings to improve reading speed or efficiency. The software provides audio filtering functions, including bandpass filtering, bandstop filtering, and filtering that matches the user's hearing curve or hearing condition. The software provides equalizers, graphic equalizers, volume control, treble adjustment, bass adjustment, stereo / mono switching, waveform display, spectrogram / spectral graph display, audio effect selector, audio effect settings, mixer, and other user interface elements for audio filtering and enhancement functions. The software can store visual and / or audio styled data in user profiles, for example, to create a consistent experience across different sessions, devices, or platforms.
[0112] The software can provide any of the following functions:
[0113] Context Emphasis Algorithm: The software provides methods for emphasizing text based on context-related criteria, dynamically determined by the text content. For example, the software can provide an algorithm to identify text elements based on their context or role within a narrative or information structure. Dynamic Phrase Chunking and Styling: The software provides a system that automatically breaks down text into logical phrase chunks and applies styles to each chunk based on grammatical and semantic importance, which may vary depending on the user or content. Semantic Weight Mapping: The software provides a process for assigning "semantic weights" to words or phrases in a text document, thereby determining the text style. Predictive Styles Based on Reading Patterns: The software can analyze a user's past reading behavior, predict words or phrases they are likely to value, and automatically apply unique styles to these words or phrases in subsequent content. Multi-Level Style Application: The software can simultaneously assign multiple styles to text elements based on multiple factors such as grammatical category, part of speech, semantic importance, and user preferences, constructing a multi-dimensional emphasis and style system. The software can apply multiple text styles or audio styles to a single text element. Real-time text presentation adjustment: The system can adjust the text presentation in real time based on user feedback or input. For example, when the user pauses, rereads a paragraph, or makes UIS input, the style of words or phrases can be dynamically changed. Multiple visual styles
[0114] The software supports presenting text with various styles to users. It can apply styles to text elements. It can automatically style text elements. It can automatically apply styles 1, 2, 3, 4, 5, 6, etc. to text elements within a single sentence. 7, 8, 9, 10 or more styles. The software can automatically style text elements; a single word can be styled using 1, 2, 3, 4, or more styles. The software offers 5, 6, 7, 8, 9, and 10 styles. It can automatically style text elements, applying 1, 2, 3, 4, 5, 6, 7, 8, 9, and 10 styles to a single character. It can also automatically style phrases, applying 1, 2, 3, 4, 5, 6, 7, 8, 9, and 10 styles to a single phrase. The software can automatically detect phrases or phrase separators within sentences. It can use algorithms following language rules or employ non-linguistic rules (such as setting maximum / minimum values for character count, word count, or space count). The software provides phrase detection functions, including linguistic-based phrase separation detection, AI-based phrase separation detection, or phrase separation detection based on large language models. The software can apply styles to phrases using automatically detected phrases or phrase separators within sentences. The software supports users manually setting text element styles or using a combination of automatic and user-defined styles. The software can present text to users through style settings to highlight text elements or specific element types. The software can present text to users through style settings, thereby improving reading efficiency or reading speed.
[0115] Multiple word styles: The software can automatically apply multiple visual styles to different words within a sentence or to the same word. Based on lexical characteristics (such as whether it belongs to a keyword phrase, importance level, part of speech, user selection, other user selections, or other text element parameters), the software selects multiple visual styles and applies them to different words within a sentence or different positions of the same word to achieve visual presentation. The software can automatically apply formatting to the text, presenting differentiated words or phrases in a sentence through different visual styles corresponding to the numerical range of text element parameters. For example, when the word importance value range is 0-10, the software can provide styles corresponding to 0-1 opacity, 10-20px font size, or any style parameter with a numerical range or multiple values. The software can use multiple sizes to present different words or phrases within a single sentence. The software can automatically apply formatting to the text, presenting differentiated words or phrases within a single sentence through different size ranges corresponding to the numerical range of text element parameters.
[0116] Multiple character styles and style variations within words, syllables, and phrases: The software may automatically apply multiple visual styles to different characters within words, syllables, or phrases. The software can consider character characteristics (such as character ID / position within a word—including left / center / right position within a word, syllable, or phrase), character category (such as vowels and consonants), frequency of character occurrence in a corpus, a dictionary or mapping table assigning a rank to each character (which then maps to a specific style), the user's intention to scan the character during reading, and the probability, calculated or measured, that the current or previous user would scan that character during reading. For example, the software may select characters within a word to emphasize based on calculated importance and highlight them using visual styles (such as different weights, bolding, color changes, transparency adjustments, font changes, or other text styles). For example, the software may bold the third character of each word while leaving the others unchanged, or bold the first character of a word, or underline characters in the middle of a word, or set the third character from the right of a word to red while keeping the rest black. Examples are shown in Figures 462 and 464. The software can provide dynamically changing styles for words, phrases, or keyword groups. For example, the software can provide left-right / top-bottom / center gradient effects for words. The gradient can be expressed as a background color or other background gradient, or reflected in the style changes of characters within the word / phrase, such as the character transparency decreasing from the beginning to the end of the word (as shown in Figure 462), or other gradient styles such as color changes, 3D rendering positions, size adjustments, or arbitrary text styles (as shown in Figure 1210). The software can apply styles to a specific number of characters within a word, for example: applying bold to the first 3 characters, the last 3 characters, the first 1 / 3 of the characters, the middle phrase, or the first phrase.
[0117] The software can automatically apply formatting to text, displaying differentiated words or phrases within sentences by using different visual styles corresponding to the numerical range of the text element parameters. For example, if the word importance range is 0-10, the software can provide styles corresponding to 0-1 opacity, 10-20px font size, or any style parameter with a range or multiple values. The software can display different words or phrases using multiple font sizes within a single sentence. This software automatically applies formatting to text, displaying differentiated words or phrases within sentences by using different sizes corresponding to the numerical range of the text element parameters.
[0118] The software can present different words or phrases within the same sentence using multi-level transparency. It can automatically apply formatting, allowing different words or phrases within the same sentence to display varying transparency within the corresponding text element parameter value range. The software can also present different words or phrases within the same sentence using multiple fonts. It can automatically apply formatting settings to display different words or phrases within a sentence using different font weights within the corresponding text element parameter value range. The software can also present different words or phrases within the same sentence using multiple colors. It can automatically apply formatting to text to present different words or phrases within the same sentence using different colors within the corresponding text element parameter value range. Furthermore, the software can present different words or phrases within the same sentence using multiple background colors. Finally, the software can use multiple border types within a sentence to display different words or phrases. This software can automatically apply formatting settings, displaying different words or phrases within sentences using different border styles corresponding to the range of text element parameter values. It can also present different words or phrases within sentences using various text decoration styles. The software can automatically apply formatting to text, distinguishing and displaying words or phrases within sentences using different decoration styles corresponding to the range of text element parameter values. It can also present different words or phrases within sentences using various margin sizes. The software can automatically apply formatting processing, presenting different words or phrases within sentences using different margin sizes corresponding to the range of text element parameter values. It can also present different words or phrases within sentences using various inner margin sizes. The software can automatically apply formatting processing, presenting different words or phrases within sentences using different inner margin sizes corresponding to the range of text element parameter values. The software can present different words or phrases within sentences using various text styles, where the text styles are taken from... Figure 12 The software can automatically apply formatting to text, as shown in Figure 1210. Figure 12 The different text styles shown (corresponding to the numerical range of the text element parameters) present different words or phrases within a sentence. Multiple audio styles
[0119] The software offers the ability to present audio with various audio styles to users. It also provides the ability to style text elements. Furthermore, it offers the ability to automatically style text elements. The software allows users to automatically style text elements, or combines automatic style settings with user-defined styles. It can also present text to users through stylization to highlight text elements or text element types. Finally, it can present text to users through stylization to improve reading efficiency.
[0120] The software can apply independent audio styles to different words or phrases within a sentence. For example, it can set different volumes for different words or phrases within a sentence. It can set different silence durations before or after different words or phrases within a sentence. It can assign different stereo channels / binaural channels or 3D audio positioning to different words or phrases within a sentence. It can assign different stereo positioning to different words or phrases within a sentence. It can assign different pitches to different words or phrases within a sentence.
[0121] The software can apply multi-audio style gradients to different words or phrases within a sentence. Gradients can correspond to a sequence of increasing levels or a function defining levels. The software can apply this gradient to different text elements based on text attributes (such as importance, word length, or other text parameters). For example, the software can provide volume gradients for different words or phrases within a sentence. For example, the software can provide a volume gradient-based vocabulary processing scheme, where volume is proportional to or correlated with word importance, keywords, key phrases, or part-of-speech features. The software can also set differentiated silence duration gradients for different words or phrases within a sentence. The software can set gradual silence duration gradients after different words or phrases within a sentence. The software can set gradual stereo loudness gradients for different words or phrases within a sentence, assigning them to different binaural channels or audio localization points. The software can set gradual stereo localization gradients for different words or phrases within a sentence. The software can set gradual pitch gradients for different words or phrases within a sentence.
[0122] This software can present different audio words or phrases within a sentence using various audio styles, with the audio styles taken from... Figure 12 The software can automatically apply audio style processing, as shown in Figure 1240. Figure 12 Multiple audio styles (corresponding to the numerical range of text element parameters) present different audio words or phrases within a sentence.
[0123] Pitch: This software may use multiple pitches to present different audio words or phrases within a sentence. It may automatically apply audio styles to present different audio words or phrases within a sentence using a range of different pitches. These pitches correspond to a series of numerical values for the text element parameters. Volume Level: This software can use multiple volume levels within a single sentence to present different audio words or phrases. It can automatically apply audio styles to present diverse audio expressions within a sentence through combinations of different volume levels. Volume Level: The software can automatically apply audio styles to text, presenting different audio words or phrases within a sentence through different volume levels corresponding to the range of text element parameter values. Speech Rate: The software can use multiple speech rates to present different audio words or phrases within a sentence. It can automatically apply audio styles to text, presenting different audio words or phrases within a sentence through different speech rates corresponding to the range of text element parameter values. Voice Selection: This software can use various voice options (such as voice actors, voice clones, or selected synthesized voices) to present different audio words or phrases within a sentence. It can automatically apply audio styles, presenting different audio words or phrases within a sentence through various voice options. It can automatically apply audio styles to text, presenting different audio words or phrases within a sentence through various voice options corresponding to the text element parameter value range. Spatial Positioning: This software can present different audio words or phrases within a sentence through multiple audio spatial locations. It can automatically apply audio styles, presenting different audio words or phrases within a sentence through various audio spatial locations. It can automatically apply audio styles to text, presenting different audio words or phrases within a sentence through different spatial locations corresponding to the text element parameter value range. Multi-Style Text and Audio Presentation: This software can present text to the user using multiple styles. This function covers various visual and / or audio enhancement effects for text. Automatic and User-Custom Text Styles: This software provides automatic style application and user-customizable functions. Highlighting Text Elements: This software can highlight text elements such as words or sentences by changing audio styles (e.g., increasing volume, slowing speech, adjusting emphasis) to attract attention. Combined Style Application: The software can select from a large number of automated combinations of visual and audio style features and apply mapping relationships based on text element parameters. AI-Driven Keyword Identification: The software can use artificial intelligence to identify keywords in documents and apply visual and / or audio style variations to these keywords. Automatic determination of text element parameters and mapping of audiovisual styles
[0124] This software can automatically determine the parameters of text elements. Examples of text element parameters are shown below. Figure 12As shown in 1200. The software can apply the text style attribute 1210 to text elements. An example of the text style attribute is shown below. Figure 12 As shown. Text style properties can be applied to text elements via CSS or other methods. An example of a CSS descriptor is shown below. Figure 12 As shown in (1220). The software can use audio attributes, an example of which is shown below. Figure 12 As shown in (1240). The software can apply combinations of text parameters to text elements. The software can map style features to text elements based on one or more text element parameters. The software can map audio attributes to the audio text of the corresponding text element based on one or more text element parameters. Therefore, the software can... Figure 12 Arbitrary combinations and applications are shown in the large combination space.
[0125] Here is a simple example. The software might use artificial intelligence algorithms to identify keyword groups in a document. The software could provide user interface elements to request keywords or questions from the user and apply these to the text to identify keyword groups, for example, using an AI prompt like: "Find keyword groups related to the following keywords in the following text: <keywords><text>". The software might store the specific location of the keywords in the text based on text element pointers or start and end character positions. Subsequently, the software could apply text style attribute mappings to the keywords, such as setting the words inside the keywords to a "font weight: bold" or "font weight: 800" style. Furthermore, the software could apply audio attribute mappings, such as increasing the volume of key phrases.
[0126] This software can apply text style attributes using binary mapping based on text parameters. For example, for text within keywords, the software can apply the text style attribute `text-decoration:underline` to achieve an underline effect for the keywords. The software can also apply audio attributes using binary mapping based on text parameters. For example, for text within keywords, the software can apply the text audio attribute `speed=80%` to reduce the speech speed of the keywords.
[0127] The software can employ a hierarchical mapping mechanism, applying text style attributes based on text parameters. For example, for text with a text element parameter level of x, the software can apply the text style attribute `font-size:x+8` to amplify more important words. The software can also employ a hierarchical mapping mechanism, applying audio attributes based on text parameters. For example, for text with a specific speaker ID y (person y), the software can apply the text audio attribute "speaker identity" to generate synthesized speech that is always spoken by the same voice when associated with that person. User interaction system functions for style adjustment
[0128] The software provides a User Interaction System (UIS) that allows users to enable or disable the application of text visual styles and / or audio styles in near real-time. It allows users to individually enable or disable specific style elements and / or audio style elements, such as enabling / disabling style processing for keywords, key phrases, important text, specific parts of speech, specific language text, specific topics or query-related text, selected or highlighted text. The system provides options such as toggle buttons, sliders, or switches, allowing users to dynamically adjust the intensity or gradient effects of applied text and audio styles. For example, the software provides UIS slider elements for adjusting text font size or transparency, or toggle buttons for enabling / disabling voice tone changes. The UIS also provides real-time visual effects, allowing users to preview adjustments instantly.
[0129] Dynamic Text Presentation Adjustment: The software dynamically adjusts text presentation, with updates taking effect almost instantly. It dynamically adjusts text presentation based on user interactions with UI elements, such as pinching to zoom, swiping to change text size, dragging sliders, or switching options. Furthermore, the software can adjust text presentation based on detected changes in user behavior, reading speed, or comprehension level. For example, when slow reading speed is detected (indicating potential reading difficulties), the software can automatically enlarge the text. The software can also adjust speech styles (such as speech rate, volume, or background volume) based on the ambient noise level captured by the device's microphone. Visual and Auditory Style Fusion: The software can fuse visual and auditory styles, allowing one style type to influence or correspond to another. Visual styles (such as bold or highlighted text) can automatically coordinate with audio cues (such as volume boost or pitch changes) to enhance the multi-sensory reading experience. The software can customize audio output (such as adjusting volume, filtering, or equalization) using the user's audiogram or other hearing test data to suit the user's hearing ability. Automatic text highlighting function
[0130] This software provides a User Interaction System (UIS) component to facilitate user interaction and enable automatic text selection and highlighting. The UIS component allows users to input keywords, key phrases, topics, areas of interest, queries, searches, or other information. This information can be entered by typing, copying and pasting text, using STT speech-to-text software, or other methods. The software supports highlighting relevant paragraphs of text using keywords, phrases, or queries during reading. For example, after a user enters keywords or phrases such as a name, the system can highlight all or part of the sentences, paragraphs, and other text elements containing that input. The highlighting effect can be achieved through different colors, text styles, or audio styles compared to unhighlighted text, or user-defined colors, text styles, or audio styles can be used. Different keywords or queries can correspond to different colors, text styles, or audio styles. This software function helps users quickly identify and focus on text paragraphs of particular interest or relevance. The system can use AI prompts to determine the relevance of any text element to the user's input (such as keywords, key phrases, questions, topics, areas of interest, or queries). The system can integrate user interface elements, supporting user input queries such as "What is the protagonist's motivation?", "What does this word mean?", and "Summarize selected text." The system will use artificial intelligence to analyze the text and provide responses or generate new text to address user queries. This helps users gain a deeper understanding of the text content and engage more fully in the reading process. Vertical mode, vertically aligned text elements or text blocks
[0131] The software offers a "vertical mode" text presentation option via a user interface selector. The system can display content to the user using vertically aligned or vertically arranged text elements / blocks (see [link]). Figure 4(460). For example, a sentence can be split into text elements (such as phrases) using an algorithm, and the different text elements can be arranged in separate lines, vertically. Text lines can be vertically equidistant or non-equidistant—for example, adjusting spacing based on the importance of text elements, using random vertical spacing, adjusting spacing for visual effects, or using other spacing schemes. Text elements can be horizontally aligned using any mechanism, including left alignment, center alignment, right alignment, or alignment to a specific character position within the text element. Text elements can be vertically split at logical breakpoints (including phrase boundaries) using an algorithm, or vertically split at margins defined by the UIS or software. Margin positions can be defined using any unit or coordinates, including based on screen / display area position, screen / display area percentage, character size multiple, or character width. The software can provide user interface elements to adjust vertical rendering parameters, including whether to enable vertical mode; these parameters can be stored in user configuration files. The software allows setting a minimum / maximum width for text elements based on the UIS or software-selectable settings (in terms of character count, word count, or percentage of visible area). Elements exceeding this width will wrap to the next vertical line. Text elements can be displayed with a maximum width based on the number of characters to improve readability; alternatively, a percentage of the screen width selected by the UIS or defined by the software can be used as the maximum width reference. Text elements can use any selected character count as the maximum width for optimization, including but not limited to the following character counts: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 35, 40, 45, 50, 60, 70, 80, 90, 100, 1000, or any value in between. Text elements can be styled as groups within blocks on a single vertical line. Text elements can also be styled as groups within blocks that span multiple vertical lines. For example, if a border is placed around a key phrase that spans multiple lines, the border can be designed to span multiple lines or cover phrase elements on different lines separately (see [link to relevant documentation]). Figure 4 460, 423, and Figure 5 594, 590).
[0132] Text elements can be aligned based on measured eye-tracking data. Text elements can also be aligned based on the measured or calculated expected position of the saccade target. The eye-tracking target can be presented alongside the text or as part of the text style to help users guide saccades to the visible eye-tracking target in both vertical and non-vertical modes. Regardless of whether vertical mode is enabled, the software can present visual elements as saccade targets to guide the user's gaze to the target location. Saccade targets can include vertical lines, dots, images, or can be achieved by adjusting the style of specific parts of the text element (such as bolding, enlarging, underlining, changing color, or using other visual distinctions for the target characters).
[0133] If the software provides vertically aligned text elements, the eye movement distance required to move the gaze to subsequent text elements may be significantly shortened—because the starting points or saccade targets within vertical phrases are closer together, resulting in shorter saccade distances compared to horizontal saccades. If the software provides vertically aligned text, the reading neural mechanisms may be more efficient in determining the location of continuous eye movements or saccade targets, as the target locations for consecutive actions are essentially the same. Overall, the software provides vertically aligned text, thereby improving reading efficiency. The vertically aligned text provided by this software is particularly beneficial for individuals with dyslexia, including but not limited to those with dyslexia, gifted reading, attention deficit hyperactivity disorder (ADHD), visual processing disorders, auditory processing disorders, reading comprehension deficits, and language disorders. Additional features Dialogue between Artificial Intelligence and Users
[0134] The system can integrate user interface elements to facilitate dialogue between artificial intelligence and users, or it may have chatbot functionality. These elements may include text input boxes, buttons, or voice recognition capabilities, enabling users to interact with AI, chatbots, or virtual assistants, as well as communicate with real people, assistants, coaches, or document authors. The software can provide real-time assistance to users through this dialogue mechanism, such as answering questions, providing instructions, or recommending reading materials. Personalization settings and user preference management
[0135] This software offers personalized reading experiences, including the ability to select text, audio, and video styles for different applications or workflows. These text / audio / video style preferences can be stored in user profiles or other locations. The software provides a "style editor" interface, allowing users to create and preview custom style combinations. These configurations and other personal profile elements can be stored locally or synchronized across devices via cloud services. This will allow users to enjoy a consistent reading experience across different devices using the same configuration information and / or content. The software can also learn from user interaction behavior and style selections to recommend optimized settings for users. Content integration and sources
[0136] This software can integrate with other applications. For example, it can synchronize or exchange information across devices; synchronize with content libraries, physical library systems, document databases, rating databases, book rating databases, social media platforms, newspapers, magazines, and other content sources, podcast platforms, video platforms, e-book readers, and other content platforms. The information exchanged between the software and integrated applications may include user profiles, content information, and other data. The software can also integrate with educational applications to provide contacts, coaches, teachers, employers, and others with insights into reader speed, progress, annotations, comments, and other notes.
[0137] This software can read various types of content as input. Supported input sources and file formats include, but are not limited to: websites, HTML, epub, mobi, ebooks, podcasts, plain text, copied text, pasted content, images, video files, audio files, digital files, social media, chatbots, conversation logs, contracts, legal documents, regulations and public policy documents, textbooks, game content, AR / VR content, communication content (including telephone and VoIP), video call content, screen sharing content, emails, videos, audiobooks, Markdown format, audio files, and real-time audio (such as microphone capture). Personalized reading content recommendation function
[0138] This software can recommend reading content based on user characteristics. By collecting user profile data (including demographic information such as age and educational background, as well as reading-related data such as reading speed, comprehension level, and preferred subject matter), the software can analyze users' reading habits, preferences, and abilities, and then recommend materials that match their reading level and interests.
[0139] Based on user profile data, comparative metrics, reading summaries, and data analysis, the software can recommend personalized reading materials that match a user's reading level, interests, and goals. These recommendations may be presented in the form of book lists or article lists, and in some cases, they may include a brief description of the recommended content and the reasons for the recommendation.
[0140] This software calculates comparative metrics, comparing a user's reading performance with that of other users. For example, it can calculate the percentile of a user's reading speed or comprehension level within a user group with similar demographic characteristics or reading profiles. These comparative metrics help users understand their performance relative to others and guide the software in recommending reading materials that match their performance level. Reading Summary and Review
[0141] Reading can be divided into multiple reading sessions. These sessions can be defined based on target duration, target content volume, or fixed dividing points within the content (such as preset chapter or paragraph intervals). After completing a reading session, the software can prompt the user to pause. After a reading session ends, the software can provide the user (or different users in a multi-user mode) with reading metrics, performance data, or feedback. For example, when a user collaborates with a partner, coach, or AI assistant, the relevant parties can receive this information. The software can generate post-reading materials, such as reading summaries containing metrics like: content summary, total reading time, consecutive reading days, word count, reading speed, reading comprehension score, gamified points (such as experience points), and performance comparisons with other users. This material can be copied to online platforms, social media, or shared with friends. The software may collect user feedback or summaries, or provide questions and quizzes. The software can support users reviewing and summarizing materials and reflecting on the reading process in written or oral form, a process that may be recorded by the software. The software will use reading data to recommend reading materials that can help users improve, or recommend reading resources similar to the user's preferences or content that they have benefited from. Data Analysis
[0142] This software analyzes stored data from user reading sessions or profiles to provide feedback and insights into their reading behavior and preferences. Data analysis may involve techniques such as descriptive statistics, data visualization, and machine learning. Users can obtain reading progress charts (such as line charts, bar charts, calendar views, etc.), which visually demonstrate their learning progress. For example, the software can provide users with charts showing reading speed over time (e.g., words per minute per day over the past 30 days), trends in user reading volume over time, trends in reading comprehension ability over time, and other metrics changing or accumulating over time, or compare these metrics with similar metrics from different users or user groups. 3D / Virtual Reality / Augmented Reality / Extended Reality
[0143] This software offers 3D text rendering. It can display sentences or text fragments at different depths or positions within a rendered 3D space. It can also provide 3D audio, potentially using spatial audio technology to make sounds appear to come from different directions or distances. These positions may correspond to the text's location in 3D space. Furthermore, it provides 3D navigation controls, allowing users to navigate text in a simulated 3D space. This may include moving forward or backward within the text, moving up, down, left, or right between different levels of detail, or moving between different chapters or topics. Finally, it offers 3D interactive features, enabling users to interact with the text (including navigation controls) in 3D space. Finally, it can visualize the user's reading progress in 3D, showing their current position and text browsing path. This can be achieved through a trajectory / path display in 3D space or a 3D progress bar / timeline presentation.
[0144] The software can render text or documents as 3D objects, allowing users to navigate inside and outside these objects, or to locate different elements within 2D / 3D objects using 3D navigation. For example, a text document can be rendered as a rectangle, with the x / y coordinates within the rectangle corresponding to different positions in the text. The text content can be overlaid on the 3D shape. Text elements or other elements can be superimposed onto real-world objects by the software to achieve an augmented reality experience. Text can be rendered at a reduced size, allowing users to simultaneously view most of the document's content, thus grasping the overall structure or layout. Different parts of a document or object can be color-coded to enhance visibility.
[0145] For example, the software can create AR documents similar to reading documents / books, or present AR-style desktops, libraries, and other storage media, as well as virtual avatars, characters, and other elements. This content can be presented in AR, VR, XR (extended reality), 2D / 3D, or gaming environments. Used in conjunction with entity documents
[0146] The functions described herein can be optionally configured for physical documents, books, and other content. These functions can also be configured for various camera devices, including mobile phone cameras, webcams, head-mounted cameras, camera-enabled glasses, VR and AR headsets, other sensors, and other sensing methods for perceiving objects in the user's environment. The software can provide augmented reality presentations or audiovisual content, including visual / audio / video annotations on physical documents (such as signs, written documents, legal contracts, or books). For example, the software can use the device's camera and OCR technology to recognize text or identify the user's gaze position within a document / book. The software can provide augmented content overlaid on physical content or documents, such as presenting color-highlighted annotations or comments overlaid on the text of a physical book for AR device users. The software can combine or overlay any of the functions described herein with physical text documents, including: text selection, highlighting, note-taking, adding comments, voice control, voice memos, voice recording, reading speed measurement, and other text element calculation functions. The software can present audio elements corresponding to the content of physical documents or books, such as providing synchronized audiobook accompaniment when a user reads a physical book. The software can present visual elements corresponding to the spoken content, such as providing synchronized visual / audio / video or language translation accompaniment while the user listens to spoken language.
[0147] This software offers augmented reality capabilities, overlaying 3D visual content onto actual pages, documents, objects, or manuals. When the device is pointed at a specific object, image, or text, the user can interact with the 3D model through gestures or device tilting. The software supports object recognition (with optional augmented reality technology) and location recognition (e.g., via GPS or...). (Wi-Fi enabled). Space bookmark function
[0148] By combining the device's camera with AR technology, this software allows users to create real-world bookmarks. When users mark their reading progress in the text, the software simultaneously records the user's physical location and / or page numbers or location information within the text. In addition to standard search functions, this software also provides a location-based search function. Location-based content creation
[0149] This software integrates the reader's environment into the creation of content, including customized narratives. It scans the user's surroundings using a camera and generates virtual content containing characters, objects, or information based on the user's real location. Interacting with these elements by clicking or swiping reveals additional story details or branching plots. The software can provide users with customized information or relevant news about their current physical environment. For example, when the software determines that the user is approaching a landmark using GPS positioning or camera object recognition, it can provide or generate relevant landmark content; if it detects nearby physical objects or people through camera object / facial recognition, it can provide or generate relevant content about those objects or people.
[0150] Using spatial recognition technology, the software can help organize a virtual library. For example, by mapping physical spaces such as rooms, the application allows users to place digital representations of books on virtual bookshelves in the room, which users can then browse using AR technology. Interactive content
[0151] The software offers enhanced content. For example, clicking on a specific word in the interface will bring up a translation, pronunciation, or usage example. Such functionality can also be achieved through VR / AR elements. AR note-taking and annotation features
[0152] The software supports gesture controls; for example, drawing a circle in the air in front of the device can highlight or annotate text within the application. Other software examples include: swiping down in AR space to browse text, swiping right to mark text elements, and drawing actions to underline or annotate text. The software offers a virtual note function, similar to a sticky note sheet, which can be virtually attached to virtual or physical objects. When the user approaches the object, or subsequently points a virtual / real camera at the object, the note content will be displayed. Virtual notes can contain text elements, including preset information related to the object, or custom information added by the user through voice input / keyboard input, etc. AR Demo Mode and AR Sharing Experience
[0153] This software supports any of the above functions in VR / AR spaces (including multi-user VR / AR spaces and shared scenes). It utilizes AR technology to project text, images, audio, or video elements onto spaces or surfaces (such as screens, walls, and desktops), enabling users to present information to groups in the AR world. The software provides group interaction or group presentation capabilities in shared AR spaces. It supports gesture controls, allowing one or more users to navigate and control the presentation content, switch slides, highlight information, or manipulate various functions. Reading acceleration mechanism
[0154] This software enables automatic increases in text rendering rate or reading rate over time. For example, the software can increase the reading rate after consecutive text elements have been rendered. The software provides a user interface element (UIS) to initiate automatic text rendering rate increases (407) and also provides a UIS element to stop the automatic increase function. The software provides a user interface element for selecting the start or end rate of automatic text rendering rate control. The software provides a user interface element for controlling the duration of automatic reading rate control. For example, when a user begins a session, the software provides a function that allows the user to instruct the software to continuously increase the text rendering rate over time until a target level is reached. This function allows the user to gradually adapt to the accelerated reading pace. The software can also perform the reverse operation to slow down the rendering speed. The rendering speed can also be automatically increased based on user performance, estimated reading speed, eye movements, or reading behavior. For example, adaptive tracking or other adaptive methods can be used to increase the rendering rate based on the user's estimated reading speed or a set target speed (which must exceed the user's estimated speed by a certain multiple). The user's estimated reading speed can be calculated based on eye-tracking data; see the section on estimating reading speed based on eye tracking for details. Chat interface functions and their relationship with content reading
[0155] The software provides a chat interface. Users can interact with the content, ask questions, or request guidance through this interface. The chat interface includes dialogue functionality and presents the conversation in a simulated real-time conversation format.
[0156] This software presents content in discrete text units through an interface similar to the 1000 and 1010 communication chat interfaces. Users can read stories or content displayed in text dialogue format, with each message presented individually. The application can also be combined with a chat-style interface to provide multimodal presentation, TTS voice communication, and other functions described in this article.
[0157] The chat interface can be designed to display text content sequentially, similar to the presentation of messages in a chat conversation. Sentences or text blocks can be displayed as independent messages within the chat interface. The software can control the timing of these message displays based on the user's selected reading speed, thus creating a dynamic and interactive reading experience. Text-to-Speech (TTS) audio corresponding to the text can be played synchronously when messages are presented.
[0158] This software may provide users with common interactive features found in chat interfaces. For example, it may allow users to scroll through chat history to view previous conversations or text snippets. The software may support users uploading images, recording voice messages and playing them back, using a dot or similar icon to indicate new messages, or providing other common chat interface features.1030 The software may also include text input boxes where users can enter replies or commands, which the software will parse and respond to. Navigation, controls, customer support, payments, feedback, content requests, and other functions of the application can all be implemented through the chat functionality provided by the software, including the deployment of automated chatbots. The chat interface can also be used to communicate with other users and provides real-time or asynchronous chat functionality, encompassing the features described in this paragraph and other functions.
[0159] This software integrates a chat interface into the document reading experience. For example, it can present content from books, articles, documents, audiobooks, or podcasts within the chat interface, displaying different text elements, sentences, or paragraphs as separate messages. This approach provides an ideal reading experience for content containing dialogue. The software can also present comprehension questions, quizzes, or polls, or provide content explanations and summaries through the chat interface. Furthermore, it can provide feedback or guidance to users via the chat interface, such as highlighting difficult words and sentences, offering tips, tutoring suggestions, feedback, or operation instructions. Finally, the software can display user manuals through the reading interface.
[0160] The software also enables two-way communication between the current user and other users through a chat interface. These other users may be content authors, allowing users to provide feedback to authors and thus facilitating collaborative interaction between authors and readers. The software's chat interface can include collaborative editing features, such as commenting on or editing text elements. Interactive chat dialogue and user testing
[0161] This software can integrate interactive chat dialogues as a form of user testing. This feature can guide users to engage in text or voice conversations about content they have viewed. The chat dialogue system may be driven by artificial intelligence or large language models, capable of understanding user input and generating corresponding responses.
[0162] The dialogue system can assess a user's understanding and retention of content by asking questions, such as summarizing key points, explaining specific concepts, or expressing personal opinions. It can also guide users to rate and / or write comments on the content. The software can provide star ratings or numerical rating systems for users to evaluate content through a chat interface or other UI elements. The chat dialogue may ask users how they can apply what they've learned from the text to their own lives, current or potential challenges, and other situations. The system will then analyze the user's responses to assess their level of content comprehension. User test quiz scoring
[0163] This software can quantitatively or qualitatively score user test responses and provide quantitative or qualitative feedback (including written comments on user answers). For factual or objective questions, the software can compare user answers with correct answers. For example, when presenting multiple-choice, true / false, or other questions with discrete answers, the software can determine the correctness of the user's answer and determine the user's score or grade accordingly. For user text responses, the software can use natural language processing technology to evaluate based on the text content itself or answer similarity. Other relevance assessment methods can also be used. The final score can be calculated as a percentage of accuracy or a similarity score.
[0164] For subjective or open-ended questions, the software may employ machine learning models to evaluate the quality of user responses. These models are typically trained on a large number of historical user responses and their corresponding ratings, which may be automatically generated by the system or provided by human evaluators. User ratings are calculated using a predicted quality score, based on similarity to other users' answers and the level of their responses, for example, using Bayesian statistical methods. The software may also assess and store metrics such as the degree of user interaction with the chat conversation, including the number of questions answered, the length of responses, or the duration of the conversation. The system can adjust ratings based on interaction metrics to reward users who participate more actively in the conversation or who present their answers more quickly and concisely (including using fewer characters).
[0165] The software can provide feedback to users, such as displaying their ratings, tracking their long-term progress, or personalizing content and chat conversations. Rating data can also be used to evaluate the effectiveness of reading devices and methods, and based on this, improve the content, user interaction system, algorithms, or models used in the software. Cognitive load balancing: Adjusting the timing of text element presentation based on difficulty
[0166] This software uses algorithms to determine text element parameters, enabling dynamic adjustments to the presentation time or reading speed of individual text elements. For example, it can assign a cognitive load score to sentences based on a combination of factors, including but not limited to: length, vocabulary size, complexity, average word length, estimated reading level, language type, number of words in a multilingual environment, audio duration, sentiment analysis, language syntax, content importance, the number of other users who have annotated the content, and the average reading time of other users. This cognitive load score can be determined by the software using artificial intelligence technology. For example, it can use the prompt "Please rate the reading level of each sentence in this text from 0 to 10: <Enter text>" to calculate the cognitive load score. This cognitive load score can be stored or used as a text element parameter. Based on this score, the system can dynamically adjust the reading speed of sentences or text elements. For example, the presentation time of a text element can be multiplied by a coefficient related to the cognitive load score, thus extending the presentation time of sentences with higher reading difficulty and shortening the presentation time of sentences with lower reading difficulty.
[0167] The software can also achieve cognitive load balancing at the word level, sentence level, paragraph level, or text element level. For example, it can use word data to control the visual or audio presentation style. For instance, words that are more important, more difficult, or have specific text parameters can be highlighted by increasing the volume, decreasing the speaking speed, or increasing the silence intervals before and after them; visual enhancement techniques such as enlarging the font size, bolding, and increasing visual contrast can also be used to achieve a more prominent effect. Provide an outline / key points formatted version of the abstract concepts in the content.
[0168] This software offers content presented in outline or bulleted format. This mode is particularly useful for users who prefer a structured overview, want to browse quickly, or need to locate specific chapters / key points within a document. The software can convert text content into a series of bulleted, hierarchical, or outline format. This conversion is achieved through artificial intelligence or large language models to identify core ideas or concepts within text, paragraphs, text elements, or chapters. The software can break down text elements such as paragraphs or chapters into individual bulleted or outline entries, while providing concise text versions focusing on the main idea or keywords to improve browsing, scanning, and comprehension efficiency. The software can display chapter outlines or bulleted text side-by-side or in an interleaved layout. For example, the software can generate titles, summaries, or bullets for paragraphs or text elements and place these titles, summaries, or bullets above, below, or beside the paragraphs or text elements. Outline navigation control
[0169] This software provides user interface navigation controls that allow users to jump between outlines or key points. These controls may include buttons or gestures for moving to the next / previous key point or jumping to a specific location within the outline. The software may also offer a search function to help users quickly locate specific words or phrases within the outline. The software may also feature a layered expansion function, allowing users to expand or collapse outline sections to view more or fewer details. This function can be controlled via buttons, gestures, or other interactive elements (such as symbols like "+", "-", etc., indicating collapse / expand).
[0170] The software allows users to switch between outline / bulk format mode and other modes (such as single-sentence mode or continuous playback mode) by providing one or more buttons, gestures or other user interaction system elements. hotkeys
[0171] The software may offer features that allow users to invoke any software function via keystrokes or specific key combinations. Hotkeys can be customized according to user preferences and usage habits. The software supports users assigning hotkeys to functions. For example, users who frequently use the text zoom function can bind it to a specific hotkey for quick access. Similarly, users who frequently switch between different text versions can set a hotkey for version switching. The software typically supports saving hotkey settings as user preference configurations. Spaced repetition and review
[0172] This software can filter content that needs to be presented to users multiple times, such as to promote learning effectiveness and memory consolidation. It enables spaced repetition of the same content and uses algorithms to determine the optimal repetition interval based on the user's personalized learning pattern to improve memory efficiency. The software can dynamically adjust the spaced repetition plan by analyzing the user's performance in relevant comprehension tests. This feature may include an interactive system module that allows users to customize the frequency and timing of content repetition (such as repetition rate, time, or calendar). The software can provide reminder services, including SMS, chat messages, and push notifications. The software may include a review function, reminding users to review previously presented content at specific intervals. This may involve showing users content summaries, conducting content quizzes, or directly re-presenting parts of the original content. The software may support spaced repetition in different formats. For example, the software may allow users to read the content first and then read a revised version at a later time. The software may support users to listen to an audio version of the content first and then watch a video version. This multimodal spaced repetition method enhances learning effectiveness and memory by activating multiple sensory pathways. The software can provide a flashcard function. The software can automatically generate content-based flashcards, such as using artificial intelligence to select words or phrases for quizzes. This software can implement spaced repetition in conjunction with other learning strategies, such as active recall or alternating practice. For example, before, after, and after content presentation, the system can prompt users to ask for or recall relevant information to check their learning progress. The software can implement a hybrid mode of content repetition with alternating presentation of new or different content. The software can also implement spaced repetition of content in social or collaborative scenarios. For example, users can share content with others and engage in discussions or collaborative learning activities around the content. This may involve integrating the software with social media platforms or other communication tools. Social media posting and sharing
[0173] The software provides functionality that allows users to publish content, text elements, scores, user metrics, continuous records, or other software-provided or user-created content to other users via messaging apps, text messages, chat, or social media. Text generation and rewriting
[0174] This software can automatically expand or rewrite text, for example, using algorithms based on artificial intelligence or language models. For instance, the software can input the prompt "Compress the following text to approximately 50% of its original length: <Input Text>" into an AI language model such as DaVinci Resolve or GPT to generate concise text. The AI model can rewrite the text to reduce its length while preserving the core ideas and information.
[0175] The rewriting process can be performed sequentially or in parallel on different text elements. It can be completed (and the results stored) before the user starts reading, or it can be performed almost in real time while the user is reading.
[0176] Text rewriting process: The software can condense, expand, summarize, or style-transform text, and can also rewrite in multiple languages. Rewriting functions include mimicking the style of specified authors, sources, or sample texts. For example, the prompt "Rewrite the following text in the style of Malcolm Gladwell: <Input Text>" can be used. The prompt "Rewrite the following text in a style suitable for a 10-year-old: <Input Text>" can be used by the software or the user. The prompt "Rewrite the following text in a style similar to <Style Input Document>: <Input Text>" can be used by the software or the user. Text rewriting can exclude unwanted content, such as duplicate content, content that the user has already read or received, or content irrelevant to a specified question / keyword. The software or the user can use the prompt: "Rewrite the following text, excluding content similar to content in the document library: <Input Text>". The prompt "Rewrite the following text, focusing on material related to the following keywords <Keyword List>: <Input Text>" can be used by the software or the user. The prompt "Rewrite the following text, focusing on material that is similar to or related to the following <User Selected Input>: <Input Text>" may be used by the software or the user.
[0177] Domain-Specific Text Rewriting: The text rewriting process can be customized for a specific context or domain. For example, text can be rewritten to suit the style of scientific papers, news reports, magazine articles, blog posts, social media posts, advertisements, political statements, legal documents, technical manuals, novels, poems, or screenplays. Text rewriting can be achieved using machine learning models trained on domain-specific corpora. Text rewriting can be used to generate text material for artificial intelligence or language learning models, such as as training text.
[0178] Create User Replicas: This software offers the ability to create user replicas, such as generating chatbots that closely resemble the user's expected responses. The software can utilize user-consumed content, writing samples, curated content, annotated comments, and other user-generated materials, or build replicas based on user behavior and metrics. The software allows users to use these replicas to replace some personal tasks, such as acting as personalized AI assistants. Users can also consume content through these replicas, such as processing text and generating corresponding highlighting, comments, responses, summaries, or written materials.
[0179] Interactive Automated Text Rewriting: The text rewriting process can be made interactive, allowing users to guide the automated rewriting workflow. For example, users can specify the expected length, style, or complexity of the rewritten text, and the software inputs these parameters into the AI model. Users can accept or reject the automatically generated text modification schemes. The software supports user feedback on the rewritten text, which is fed back to the AI model to iteratively optimize the rewriting process. Users can repeatedly rewrite the text through the iterative feedback mechanism.
[0180] Dynamic text rewriting: This software enables dynamic text rewriting, meaning it updates or modifies text in near real-time based on the user's current interaction with the text. For example, the software can rewrite text that the user has not yet read based on text elements such as user selections, tags, ratings, keywords, or current reading progress.
[0181] Collaborative Text Rewriting: This software enables multi-user collaborative text rewriting workflows. For example, different users can jointly participate in rewriting the same text, or collaboratively rewrite different parts of a text. The collaborative editing platform supports simultaneous text editing by users and provides version control functionality. The version control functionality provided by the software can be similar to a Git system, or similar to the revision annotation functionality of word processors such as MS Word and Google Docs. In any aspect described in this document, the software can provide functions suitable for text reading, writing, or editing, such as automatic correction, grammar checking, rewriting suggestions, dictionary lookup, and thesaurus lookup.
[0182] Automatic text summarization: The system can generate text summaries by extracting key points using a summarization algorithm. For example, a prompt such as "Summarize the following text: <Input text>" can be used. The summary can be presented alongside the original text for a quick overview of the content; it can also be interspersed within the rewritten text, for example, the summary points can be presented immediately before or after the summarized content.
[0183] Automatic Text Illustration and Visual Assistance: The software can automatically generate visual aids such as images, videos, charts, diagrams, frames, and illustrations. These visual aids are automatically generated based on the text content and are updated or modified synchronously as the text is rewritten. For example, the software or the user can use the prompt "Use Dalle to generate an image to illustrate the following text: <Enter text>".
[0184] Corresponding points for rewritten content: The software may provide sliders or UIS elements that allow users to select the text scaling level (e.g., 100% or 200%). Text can be rewritten paragraph by paragraph or chapter by chapter. The software may maintain pointers or links between corresponding elements of text in different rewritten versions.
[0185] Creating text that matches a target length or duration: The software can create or filter content to roughly match the user-specified target length or duration. For example, if a user indicates they wish to read a document within one hour, the software can generate a version of the document or filter version text from it, with a total duration of approximately one hour. Similarly, if a user wishes to read a document that is 50% the length of the original, the software can generate a version of the document or select version text from the document, making the total length approximately 50% of the original. If a user wishes to read a document of 10,000 words, the software may generate a version of the document and / or select version text from the document, with a total length of approximately 10,000 words. If a user indicates they wish to read a document of 50,000 words, the software can generate a version of the document or select version text from the document, with a total length of approximately 50,000 words. The software can generate content of the target length by: selecting text that has been rewritten to a similar length; rewriting text to a similar length in real time upon request; or filtering based on sentence priority to achieve a similar length. Priority can be determined based on text element importance scores, relevance to user keyword / phrase selections, or question relevance. The User Interface System (UIS) can present elements indicating the duration of text display, in units of word count, character count, presentation time, or remaining presentation time. The UIS can also present elements indicating the duration of target text display, in the same units. The software can provide a text version close to the user-specified length. The software can rewrite text, and this can be achieved by rewriting individual text elements separately. The User Interface System provides users with a means to switch between different text versions. The software ensures that the relevance of corresponding positions in different versions of text is maintained when the user selects different versions. The software allows users to switch between different text versions while maintaining their current position within the text. The software can display multiple different versions. For example, it can present the corresponding text positions of two versions simultaneously, side-by-side or stacked vertically. For text elements that do not have matching text elements in other versions, the software can use an algorithm to determine the closest matching text element in other versions, such as the next paragraph after the previous paragraph in other versions. The software can achieve this function by rewriting the content element by element, while maintaining the text element number or related position information. If processed paragraph by paragraph, the rewritten version may have a different number of sentences than the original. The software can maintain pointers or numbers between corresponding sentences in two or more different text versions. Alternatively, the software can rewrite the text first and then use an algorithm (e.g., based on similarity) to determine the correspondence between different text elements. For example, if the original document contains 100 paragraphs and the rewritten version contains only 50, the software can use an algorithm to determine the mapping between the rewritten paragraphs and the original paragraphs. Subsequently, the software can maintain pointers or numbers for the corresponding text elements determined by the algorithm in two or more text versions. Personalized text generation
[0186] This software can generate or customize content for users based on their profiles, preferences, interests, query history, previously read text, created text, reading level, or other user-related information. The personalized content generation process may involve using user data (such as reading history, search queries, language, demographic information, or tagged text) to customize text, audio, video, VR, AR, chat, AI assistants, games, or other content. For example, the prompt "Rewrite the following text to match the user's reading level: Reading Level: <Reading Level>". Input Text: <Input Text>. Another example is the prompt "Create a story based on user profile: <User Profile>". Yet another prompt is "Modify and personalize the following story based on user name, contacts, and preferences, changing character names and content themes. Original Story: <Original Story>". User Profile: "<User Profile>" is available. Prompt: "Write a successful negotiation story with the user as the protagonist, using the following detailed guidance: <User-related input text, such as name, preferences or interests, current challenges>" is available. Personalized text can be generated using artificial intelligence or a language model trained on a corpus of text matching user preferences, reading level, or interests, or on content previously read, selected, or created by the user. Personalized text can be presented alongside the original text, or it can replace or generate the original text, or it can become the source of the original text. Users can switch between the original text and the personalized version in a specific way.
[0187] The software's personalization process may provide users with a customized reading experience or exclusive content. This is achieved by the software using user data to customize text content, which may include, but is not limited to, the following elements: user name, contact name, reading history, search queries, language preferences, demographic information, or tagged text.
[0188] Software may utilize user profile data (including reading history) to understand their reading habits, preferences for specific genres or topics, and reading level. This information can be used to customize content to match the user's interests, knowledge level, or reading ability. A user's search queries can reveal their current focus or topics they wish to understand in depth. The software may use this information to customize text content and filter information relevant to the query. A user's language preferences and demographic information can also be used to personalize text content. For example, the software can adjust the language, tone, and cultural references of the text to match the user's reading level, background, and language ability. Text paragraphs selected or marked by the user can reflect their interests or areas of focus. The software will then reinforce or generate similar content in subsequent texts, or provide supplementary explanations and summaries for complex content. Artificial intelligence can be trained on a text corpus that matches the user's past reading habits, writing style, preferences, or reading level. For example, if a user prefers science fiction and has a high reading level, the language model can be trained on a high-level science fiction text corpus. This AI can be used to generate supplementary or related content for display, or to answer user queries. Personalized text generation user interaction system components
[0189] This software integrates User Interaction System (UIS) components, allowing users to specify their content creation preferences or requirements. These components include, but are not limited to, text input boxes, drop-down menus, checkboxes, radio buttons, sliders, and buttons. Text input boxes allow users to enter text snippets to be rewritten or directly provide prompts / instructions to the AI. A "Submit" button can be placed next to the input box, initiating the text generation process when clicked by the user. The software provides selection mechanisms such as drop-down menus and checkboxes, allowing users to filter preferred content areas, styles, or text types (e.g., science fiction, romance, technology, academic, personal growth, business, etc.). The software provides UIS elements that allow users to describe themselves or their personal information, including but not limited to education level, industry, age, gender, job role, income level, and reading ability information such as beginner / advanced user. The software provides user interface elements for users to select different rewriting options, such as text summarization, language simplification, and multilingual conversion. The software provides user interface elements that allow users to adjust the length of the rewritten text. For example, users can request a longer or shorter version via a slider, and the system may display the target length value. The software can utilize artificial intelligence or other means to generate personalized content based on user input and selections. Personalized content can be presented alongside the original text for user comparison, or it can directly replace the original text. The software should support users switching between the original text and personalized content. Interactive content elements, children's content elements, or stories
[0190] In addition to the aforementioned personalization features, the software can integrate interactive elements, including designs geared towards young readers and their parents. For example, it can employ a "Choose Your Adventure" approach, allowing users to explore content or stories through multiple paths, the direction of which is determined by the user's choices. The software and content can also feature branching points, presenting different subsequent text or content based on user UI interactions or text responses. This interactive reading experience can be personalized based on user preferences and reading levels. The software can also support users customizing content for other users. For instance, it can provide user interface elements that allow parents, teachers, coaches, friends, or contacts to select content for other users or choose profile information to use for other users, thus personalizing or curating content based on input. Parents, teachers, friends, coaches, or others can use this feature to generate learning materials for others (including their children), such as customizing story paths based on a child's interests or educational goals. The software can include interactive features such as embedded text-based quizzes, puzzles, or games, providing additional learning and engagement opportunities. These interactive elements can be generated and personalized through artificial intelligence or large language models, operating similarly to the mechanism of personalized text generation. Personalized content involving social media
[0191] The software may also use data from users' social media information to create user profiles and / or personalize content. This social media information may include the user's name, the names of their social media contacts, the contacts' social media information, and the user's social media activities such as posting content, liking, sharing, and interacting, as well as the social media activities of their contacts.
[0192] For example, the software can incorporate a user's name or a friend's name into the generated text, making them the protagonist or character in the story. The software can analyze a user's social media posts to understand their interests, opinions, health status, mental state, and experiences. This information can be used to generate text content that is relevant and meaningful to the user. The software can generate personalized text through artificial intelligence; its training dataset may contain text matching user preferences, reading levels, or social media data, thereby generating content that matches the user's personal style and interests. For example, when a user frequently posts about environmental issues, the software can generate text that explores the topic in depth. The software can use AI commands such as: "Based on user social media data, combined with factors such as the user's current mood, interests, health status, consumption plans, geographical location, and social circle, generate a detailed profile. Based on this, select materials for the user from the following content library: Social Media Content: <Social Media Content>. Current User Profile: <User Profile>. Content Library: <Content Library>." The software can also use prompts such as "Rewrite the following text to include the user's name and the names of their friends: <Input Text>; User Profile: <User Profile>" or "Generate a story featuring the user and their friends" to generate personalized text. AI or language models can then rewrite the input text or generate new stories, incorporating the user's name and the names of their friends into the narrative. AI-assisted and collaborative text creation
[0193] The software offers AI-assisted and / or collaborative text / content creation capabilities. Content creation can leverage AI or language models to generate / modify text content, or provide modification suggestions and automatic corrections. The software supports creating outlines around specific topics (selectable from existing content sources) and converting these outlines into drafts, which can then be iteratively refined using AI. For example, the software can generate an outline using AI prompts like "Create an outline for the following topic: <Enter topic>"; generate a draft using "Convert the following outline into a draft: <Enter outline>"; and generate a subsequent version using "Improve the following draft: <Enter draft>". The AI-assisted text creation process is interactive, allowing users to guide the workflow. For example, the software can support user feedback on outlines, drafts, or subsequent drafts, which can be incorporated into subsequent AI prompts to optimize the creation process. The software allows users to select between different versions and can provide selection suggestions or automate the selection process. The software can request AI models to score or filter different content versions. Selected versions or high-scoring versions can be used for subsequent steps or iterative processes. The software offers multi-user collaboration features, such as collaborative editing. This software allows users to vote or comment on content. It offers version control features, including collaborative version control. The software supports AI-assisted or collaborative editing of various content types, including text, audio, video, AR, VR, games, and music. Iterative automated text generation
[0194] The software supports the creation of independent text elements. It can calculate and add parameters to these text elements. The software can manipulate, score, sort, and filter the generated text elements. This process can be used in scenarios such as creating outlines, supporting iterative execution and incorporating AI selection. For example, the prompt "Generate two descriptions for the following topic: <Input Topic>" generates two independent text elements, while the prompt "Choose the clearest version from the following sentences: <Input Sentence>" can be used for version filtering. The prompt "Rewrite the following text: <Selected Sentence>" can be used for continuous iterative modification of text elements. Human intervention in text creation
[0195] The software supports human and / or AI input during text creation or editing, and text creation or modification can be completed by a single editor or multiple collaborators. Editors or collaborators can provide input at various stages of the process, such as outline creation, draft generation, or iterative revision. Any content or output generated by AI or language learning models can be reviewed, edited, adopted, or screened by human editors or quality control specialists. Human editors / collaborators or AI / automation assistants can provide feedback, perform edits, or approve text. Editors or collaborators can work with AI or language models to guide the process and ensure text quality. The user interaction system provides version control functionality, allowing editors or collaborators to track text changes and revert to previous versions when necessary. The software may provide a chat interface for users to discuss content with AI models and receive AI-generated responses. Example devices, hardware, and software features Example hardware features
[0196] A device may be provided. A software method or process may be provided, which is intended to run on the device, whether or not the device is included. If a device is provided, the device may include any or more of the following elements. A combination of device and software method or process may be provided. Selective visual display: A high-resolution display capable of selectively presenting text, images, animations, videos, AR, VR, or other content. The display may employ technologies such as LCD, OLED, or electronic ink to provide customized visual output based on environmental conditions and user preferences. Memory / storage unit: Volatile or non-volatile storage components, such as dynamic random access memory (DRAM) and solid-state drive (SSD) storage, whose structure ensures the retention of machine-readable instructions and user data during and after device operation. Input / output interface: Various input / output interfaces, including touchscreens, keyboards, mice, microphones, speakers, headphones, wireless headphones, and wireless headphones with touch / gesture control. Wireless headphones with touch / gesture control can support users to control content playback via navigation (such as start / stop / pause / volume adjustment / skip / other functions), enabling multiple interaction modes. Noise Suppression: Enables background noise suppression or elimination via hardware or software, with an optional "Perception Mode" to detect ambient or human voices. Supports hearing aid hardware connectivity, including cochlear implants and other hearing aids. Multi-core Processing Unit: Features a multi-core processing unit with multi-threaded parallel processing capabilities, improving the efficiency and speed of content processing and presentation. Graphics Processing Unit (GPU): Designed specifically for rendering images, animations, and video content on optional visual display devices, supporting high-definition and 3D content formats. Standard Communication Protocols: Integrates support for standard communication protocols such as TCP / IP, Bluetooth, Wi-Fi, NFC, and LTE / 5G, ensuring comprehensive connectivity options. Offline Mode: The software allows downloading software and content to the device's storage, enabling use when the device is offline or not connected to other devices. Cross-Platform Support: The software supports cross-platform deployment, allowing users to access the software on mobile devices / operating systems (such as Android, iOS, etc.) and computers / operating systems (such as Windows, macOS, Linux, etc.). User settings or content can be synchronized or shared across multiple platforms. The software can be provided as applications, web applications, browser applications, browser plugins, VR or AR applications. Universal Serial Bus (USB) interface: Equipped with one or more USB ports for connecting peripheral devices and enabling data transfer between the device and external hardware. Random Access Memory (RAM): A high-speed random access memory module for fast access to data and instructions currently in use within the system. Operating system compatibility: Compatible with one or more standard operating systems, ensuring the device can run a wide range of applications and services, including but not limited to Android, iOS, Windows, macOS, and Linux.Standard Audio Interface: An audio interface (which may include a traditional audio jack or a modern digital audio interface, such as Bluetooth audio) for connecting audio output devices such as headphones or speakers. Touchscreen Interface: Employs capacitive or other touchscreen technologies for user interaction, supports multi-touch gestures, and serves as a display medium for visual content. Built-in Camera System: A built-in camera system with still image or video capture capabilities, suitable for content creation, facial recognition, eye tracking, gesture recognition, emotion recognition, or augmented reality applications. Onboard Sensors: Integrates an accelerometer, gyroscope, magnetometer, or ambient light sensor to adjust operating status based on device posture and environmental conditions. Data Encryption Module: A data encryption module using standard encryption protocols to protect user data, system logs, and other data stored on non-volatile storage media. Energy Storage Unit: Employs a rechargeable lithium-ion battery or similar energy storage unit to provide power for portable device operation. Display: Equipped with an LED, OLED, e-ink, Paperwhite-style, or similar display technology to present digital content and provide a superior visual experience. Basic Input / Output System (BIOS): The basic system used to manage the device's operation or startup process. Expansion Slots: One or more expansion slots for adding hardware functionality (such as additional memory, dedicated processing cards, or other peripherals). Gesture Recognition Interface: A gesture recognition interface coupled to the processor, used to detect and interpret user gestures as input commands to manipulate the content presentation sequence. Haptic Feedback System: An integrated haptic feedback system that provides tactile responses to user interactions. Ambient Light Adjustment Module: An ambient light adjustment module that communicates with the optional visual display, used to adjust the display's brightness and contrast. Eye Tracking Sensor: An eye tracking sensor used to detect the user's eye position, focus location, or eye movement. Biometric Security Function: Biometric security functions that verify user identity through fingerprint, facial recognition, iris scanning, etc., enabling personalized access control or security protection. Wireless Communication Interface: A wireless communication interface for exchanging data with external devices, supporting content sharing and synchronization across multiple devices or platforms. Adaptive Audio System: An adaptive audio system within the audio presentation module that adjusts audio output. Content Rendering Engine: Designed to dynamically adjust the presentation of digital content on the optional visual display, optimized according to user-defined criteria such as reading speed, content complexity, or visual preferences. Power Management Circuit: This circuit optimizes battery life during content presentation and dynamically adjusts power consumption based on system usage patterns. External Device Synchronization Protocol: This protocol enables the selective visual display system to expand its display capabilities or share processing tasks with external devices. Augmented Reality Projection System: An augmented reality projection system that overlays digital content onto the physical environment using selective visual display devices, providing an immersive interactive experience. Voice Command Processing Unit: This unit enhances the interactive experience through natural language processing technology, allowing users to control content presentation and audio functions with voice commands. Example Implementation
[0197] A selective visual display system includes: a. a processor configured to execute encoded instructions to retrieve, process, and present content to a user; b. an integrated circuit for processing electrical audio signals, the circuit being capable of converting digital audio data into human-perceptible sound output and further incorporating audio characteristics to utilize digital audio formats; c. a display screen configured to display digital content associated with the device, providing a medium for user interaction with the system-presented content; e. one or more computer storage devices for storing machine-readable instructions, content files, user data, or system operation logs; and f. an audio presentation module for presenting audio data to the user; wherein the device is configured to perform the following operations: displaying content elements on the display screen; presenting an audio segment corresponding to the content element; removing the content element from the display screen at the end of the audio segment; coordinating the presentation of content elements, wherein the audio content elements are derived from digital audio data and presented in a user-perceptible manner through an output mechanism; subsequently displaying the next content element and presenting the next audio segment, the system being equipped with content sorting logic to control the temporal progression of content elements and coordinate the order and timing of content accessibility. Example software functionality
[0198] Software may be provided. A software method or process may be provided, intended to run on a device, whether or not a device is included. The software may contain any or more of the following elements: Audio processing module: The software may provide a module for processing audio signals and outputting output corresponding to visual content. User interaction system: The software may provide hardware, software, or a combination of systems that enable users to interact with the software or content, including audio and / or visual content elements, AR / VR / XR / games, or other content elements. This system may employ screen-based interaction, speech recognition, gesture recognition, or other user interaction methods. Software distribution: The software may be distributed through app stores, websites, plugins, or other digital channels. The software may support the distribution of other software (including components) through app stores, websites, plugins, or other digital channels. Plugin architecture: The software may integrate plugins or extensions to enhance functionality. Cloud integration services: The software may provide cloud-based access to content and personal data, and achieve cross-device / platform synchronization of user settings or data through cloud integration. Automatic update function: The software may provide the function of automatically downloading and installing software updates. Text-to-speech function: The software may provide a built-in function to convert text content into speech. Voice Recognition Module: This software may provide modules supporting voice control and navigation. Data Analysis Tools: This software may provide tools to track usage patterns and analyze user interaction behavior. Content Sorting Logic: This software may provide logical mechanisms to control the order and timing of content presentation. Multilingual Support Module: This software may provide modules supporting multilingual user interaction systems and content. Security and Encryption Protocols: This software may provide protocols to ensure data privacy and integrity during operation. Customization Toolkit: This software may provide toolkits that allow users to personalize the interface and functions. Third-Party Integration API: The software may provide API interfaces to support integration with third-party service and content providers. License Management System: The software may provide a system to control and manage the distribution of software licenses. Virtual / Augmented Reality Compatibility: The software may provide compatibility support, allowing the use of VR / AR content within the software. Social Media Integration: The software may provide integration functionality, allowing users to share content or achievements on social networks. Offline Access Functionality: The software may allow users to access content without an internet connection, such as through PWAs or other software / content that can be downloaded and used from local device storage. Usage Reporting System: The software may provide a system for reporting software usage statistics and user engagement. Help and Tutorial System: The software may provide an integrated system to offer users help and tutorials on using the software. User Account Management: The software may provide management functions such as account creation, authentication, and personal profile settings. Accessibility Features: The software may include accessibility features for people with hearing impairments, visual impairments, repetitive strain injuries, reading difficulties, cognitive impairments, and language impairments. Remote Access Services: The software may provide remote access functionality.Digital Rights Management (DRM): This software may provide a system for protecting and managing permissions for digital content within the software, supporting the reading or input of DRM-protected content. Cryptocurrency Reward System: This software may integrate a reward mechanism where users can earn cryptocurrency by participating in software activities (such as completing tutorials, achieving milestones, or providing high-quality analytics data). Digital Currency Transaction Interface: This software may provide a digital currency transaction interface, such as facilitating the buying, selling, or trading of in-app points, rewards, content, or other value elements through secure blockchain transactions. Content Monetization Gateway: This software may enable content creators to receive payments, including fiat currency, in-app points / currency, or cryptocurrency payments, for example, through a payment gateway. Cross-Device Continuity: This software provides cross-device continuity capabilities, such as synchronizing user settings and progress across multiple devices. Dynamic Content Format Conversion: This software enables dynamic content format conversion, such as automatically adapting content to different file formats. Network Evolution Compatibility: This software ensures network evolution compatibility, such as supporting WiFi, LTE, 3G, 4G, 5G, 6G, 7G, 8G, and other future network technologies. Adaptive Learning Algorithms: The software may provide algorithms that adjust content based on the user's learning pace or style. Parental Controls: The software may offer parental controls, such as options for guardians to manage and restrict the types of content children can access. Do Not Disturb Mode: The software may offer a "Do Not Disturb" mode, such as suppressing notifications or overriding other applications to reduce distractions. Overlay Mode: The software may offer the ability to overridden other applications (including mobile apps or operating system elements) or control their operation. Driving Mode: The software may offer or integrate a driving mode that simplifies the user interaction system and works in conjunction with other applications to enhance driving safety and reduce distractions. For example, the software may offer audiobooks or text-to-speech audio content that can be used during commutes or while driving. The software may provide user interaction elements, including but not limited to: toggle buttons, checkboxes, sliders, drop-down menus, text input boxes, buttons, progress indicators, navigation bars, tabs, radio buttons, dialog boxes, icons, toolbars, list boxes, menus, scroll bars, hyperlinks, tooltips, collapsible panels, modal windows, breadcrumb navigation, search boxes, pagination controls, card layouts, and context menus. Example content features
[0199] Content may be provided. A content approach or process may be provided, designed for use on devices, whether or not a device is included. Content may contain any of the following elements or other forms: E-books: Digital versions of traditional books, including novels, non-fiction works, reference materials, and textbooks. Language learning materials: Resources designed specifically for language learning, including but not limited to target language text examples, mixed language text examples, grammar guides, vocabulary lists, and interactive language exercises. Scientific publications: Scientific or academic papers, journals, and articles. Travel guides: Digital travel books, articles, blog posts, interactive maps, or destination, landmark, and navigation information. Recipes: Digital recipes, nutrition information, or cooking guides. Journals and magazines: Regularly published materials such as newspapers, journals, and magazines. User logs / diaries: User-created logs or diary-like content. Visual content: Graphic novels, comics, or picture books. Videos and educational videos: Instructional, entertaining, or educational videos. Audio content: Audiobooks, musical tracks, and narrated content, including but not limited to stories, poems, plays, and teaching materials. Blogs and articles: Written content written by authors or bloggers. Podcasts: Narrated content and audio programs. Lectures and Speeches: Recorded lectures or speeches. Interactive Courses: Educational content presented in interactive course format, including progress tracking, scoring, or certification features. Fitness and Health Guides: Content related to health, fitness, or health management, including guided training courses or content. Children's Stories and Learning: Interactive educational content for early childhood education and teenagers. Career Development: Content aimed at improving professional skills, including continuing education, workshops, seminars, and training modules. Cultural and Artistic Exhibitions: Content related to museums, art galleries, and cultural exhibitions. Games and Interactive Entertainment: Content involving games and interactive entertainment. Puzzle and Strategy Games: Brain-teasing puzzles and strategy games that test cognitive abilities. Educational Games: Interactive educational games covering subjects such as mathematics, science, history, or language arts. Choice-Based Adventure Games: Story-based games where readers influence the plot and ending through their choices. Text-Based Role-Playing Games (RPGs): Interactive games where players influence the game's progress by reading stories and making decisions for characters. Trivia Games: Interactive quizzes and fun questions covering a wide range of topics, allowing users to test and expand their knowledge. Word games, spelling games, and competitions: Games focusing on language and vocabulary, such as spelling games, word searches, and crossword puzzles. Interactive novels and fan fiction: Users advance the story by choosing paths or solving puzzles, or participate by creating original content. Simulation and world-building games: Games that simulate real-world activities or allow users to create and manage virtual worlds / ecosystems. Board games and card games: Digital board games and card games supporting single-player / multiplayer modes. Memory training games: Games designed to improve memory or concentration. Casual games: Lightweight and easy-to-learn games suitable for short periods of play without long-term commitment. Advertising and promotion
[0200] The content may contain advertisements. This may include text ads, product placements, image or video ads, mobile or AR / VR ads, 3D rendered ads in virtual worlds, deep links from online ads, and tracking codes such as pixel or AdWords trackers. The software may automatically select relevant ads to show users based on their reading history, interests, or queries. The software may allow advertisers to submit ad content. The software can support advertisers in arranging ad payments, including participating in keyword auctions—by submitting bids for per-impression ad prices, per-click prices, etc. The software can support users subscribing to services or accessing content. The software can provide content creators with revenue streams, including pay-per-user content models, such as paying based on the number of times users download, consume, read, or click on content. Data analytics and user behavior insights: The software may use data analytics and user behavior insight technologies, such as determining which ads to target to which users. The software may provide advertisers or content creators with data analytics and user behavior insights, such as providing text element parameters, user ratings, or usage-derived / descriptive metrics. Ad Performance Optimization Tools: The software can optimize ad delivery and content presentation based on real-time performance metrics, including A / B testing capabilities, machine learning algorithms to optimize ad spend, and real-time bidding (RTB) strategies. Privacy-First Ad Solutions: The software offers privacy-first ad solutions, including consent management mechanisms, data anonymization, and compliance measures with privacy regulations such as GDPR and CCPA. Voice Activation and Conversational Ad Experiences: The software provides voice-activated ad functionality and conversational ad experiences, including ad formats that support voice command interaction and integrated virtual assistant services. Sponsorship and Affiliate Marketing Mechanisms: The software offers sponsorship agreements and affiliate marketing services, including tracking affiliate referrals, managing sponsored content, and seamlessly integrating sponsored content into the user experience. Creator and Advertiser Ecosystem: The software can build an ecosystem that supports advertisers in submitting and managing ads and provides content creators with tools to monetize their content through direct sponsorship, affiliate marketing, and native advertising opportunities. Detailed description An amazing breakthrough in reading efficiency
[0201] Our team spent years exploring methods to significantly improve reading performance. At the time, it was unclear: were such methods feasible? What features might be effective? How significant would their impact be? Countless attempts failed to yield better results. Some literature and reading experts dismissed the possibility of significantly improving reading speed or efficiency through text presentation. They argued that reading speed and efficiency are limited by higher cognitive processes, therefore the impact of content presentation is limited—at least in certain contexts, it cannot surpass baseline levels. Numerous articles have refuted the idea that software for presenting reading materials can improve reading efficiency.
[0202] Some reading methods present users with large blocks of text, such as entire paragraphs or pages. While this approach has been prevalent and potentially effective since the invention of writing, it can significantly reduce reading efficiency in certain situations—users may spend a considerable amount of time searching for consecutive text elements within large blocks of text. Some eye-tracking studies have shown that readers spend a significant amount of time simply moving their eyes to search for content within blocks of text; therefore, in certain contexts—especially for specific groups—tracking consecutive text elements within large blocks of text can reduce reading efficiency.
[0203] To address this limitation, some word presentation schemes use brief flashes of words or short phrases to keep the user's gaze largely still, eliminating the need to search through large blocks of text. However, the intermittent flashing of words can cause visual discomfort and feel unnatural to users unaccustomed to hundreds of screen flashes per minute, sometimes even triggering aversion. Furthermore, the flashing of words or phrases may not provide sufficient visual context to efficiently drive the neural mechanisms of reading, thus limiting comprehension and memorization in specific situations.
[0204] Surprisingly, there's a "golden range" in content presentation—in specific contexts, the amount of text displayed at one time needs to reach a critical value for optimizing reading efficiency. Word-by-word presentation can lead to a fragmented reading experience, interfering with the brain's inherent language processing rhythm and thus impairing comprehension and comfort in some cases. On the other hand, when software presents large blocks of text, it may exceed the processing capacity of the reader's visual search neural mechanisms—mechanisms that predate written language, when each page contained only a few characters. This may be related to the natural information block size of language comprehension neural mechanisms, whose units are likely based on semantic units. The optimal balance may lie between the aversion to fragmented flashes of words or small phrases and the slowing of reading caused by searching large blocks of text. We optimized this method and found that it can create a surprisingly ideal and efficient reading experience in specific contexts and with specific reading materials—especially for some readers with reading disabilities. This software allows you to enable or disable this function based on different contexts and target needs.
[0205] Software that can present information in individual chunks or single sentences offers users easily digestible information fragments, providing both a pleasant experience and enabling deep cognitive absorption of concepts, narratives, and context. This approach aligns with neurophysiological cognition—sentences often represent complete, independent units of thought. This type of presentation guides readers to engage with the text at a pace conducive to learning and memory, avoiding cognitive fatigue.
[0206] This software can present independent sentences in a multimodal format, achieving an ideal balance between cognitive load and information throughput. It combines single text elements / single information blocks / sentences with multimodal presentation—simultaneously integrating auditory and visual stimuli. Such software can enhance and guide reading pace, thereby improving efficiency, reading comprehension, and multisensory engagement, while activating diverse learning modes, making the reading experience accessible to a wider range of people, including individuals with learning disabilities. Pre-reading processing
[0207] This software can load, modify, translate, or generate content before or almost in real-time. The steps a reader may take before reading / consuming content are as follows: Load content from memory
[0208] The software can load content from device storage unit 650, other storage media, cloud storage, peer-to-peer networks, quantum storage / qubit storage, or other storage methods (including wireless transmission). Content can be stored on any suitable information storage medium, including local storage, cloud storage, databases, quantum storage, encrypted storage, blockchain / encrypted storage, distributed storage, crowdsourced storage, peer-to-peer storage, artificial neural network storage, and biological neural network / brain-based storage, and can be subsequently modified or accessed on such media. Content preprocessing
[0209] The software can specify that content must be preprocessed before being presented to the user. An example of preprocessing is as follows: Text content rewriting
[0210] Software, methods, and / or devices can rewrite text or content for display to a user or for the user to read and consume (660). The software can automate the rewriting process, including through software, artificial intelligence (AI), or language learning models. For example, the software can use OpenAI's text generation models (such as text-davinci-003 or chatGPT) for text rewriting. The software can provide prompts to the model, such as: "Rewrite the following text, retaining the same information while making the text clearer and approximately 50% of its current length: <input text>". In this prompt, the text within the <> brackets is the text that the AI will process and rewrite.
[0211] Text rewriting software has a variety of uses. Artificial intelligence generative models can receive prompts for different design purposes, and software prompts can guide the model to generate rewritten text that meets the expected goals. For example, prompts can instruct the AI model to simplify language, shorten text, rewrite to enhance clarity, or even translate text into other languages. Software rewriting may also involve expanding on the original content, adding details or explanations, or reconstructing content for different audiences or purposes. This flexibility and adaptability of the rewriting process makes it a powerful tool for improving communication and readability.
[0212] Software can rewrite or create content by providing prompts to AI or generative models. Example prompts that software might use in AI generative models include: translate.
[0213] Translate to other languages 665. Examples: "Translate the following text into modern English: <input text>", "Translate the following text into French: <input text>" Adjustment of writing style or length
[0214] Rewrite in different styles 670. Examples: "Rewrite the following text in Malcolm Gladwell's writing style: <Input Text>", "Translate the following text into simplified English using only 5000 of the most common words, making the text suitable for a ninth-grade reading level: <Input Text>". Rewrite by different lengths 665. Examples: "Translate the following text to approximately 1000 words: <Input Text>", "Translate the following text to approximately 50% of its original length: <Input Text>". generate
[0215] Content generation example 675: "Write a 1000-word chapter on genetics." Step 1: "Create an outline for a genetics book." Optional: "Reference sources include source1, source2, author1, and author2." Steps 2-N: "Write a 5000-word chapter based on the second element of the outline." The generated content may be based on user input. Content generation can be based on text chat between AI and the user, or on voice chat via text-to-speech. Users can also express their needs through dialogue with the robot, which can include voice, text, or chat content. For example, the system might ask the user: "What do you want to learn about today?" or "Which direction in the field of genetics attracts you the most?" or "Which scholar's ideas do you want to learn about?" Users can also specify their needs through free natural language queries. These inputs will serve as prompts to generate the content the user requires. Summary generation
[0216] Summary generation 680. Examples: "Summarize Adam Grant's book 'Rethinking' in 5000 words", "Rewrite Adam Grant's book 'Rethinking' into a more concise version at 1%, 5%, 10%, 20%, 25%, 33%, 50%, and 100% of the original length". Choice and Personalization
[0217] The software can provide users with personalized content services. It can guide users to make choices to generate customized text or customize preprocessing. For example, the system can ask users to select keywords, then prioritize presenting sentences or text fragments related to those keywords, while reducing the presentation probability of other text paragraphs or omitting them. The software can support users discussing their needs through chatbots, with dialogue formats including voice, text, or chat content. For example, the software can ask users: "Would you like more or less story content in this book?", "Which parts of this content are you interested in?", "What do you plan to use this content for?" Users may be asked: "Why do you want to consume this content?" Based on user responses, the software can incorporate user feedback into prompts to achieve customized matching of content or text preprocessing, generation, or summarization. The software can provide personalized recommendations based on users' past content ratings, such as filtering or generating materials similar to content highly rated by users. Personalized recommendations can also be based on users' historical communication records, including chat logs, email correspondence, social media interactions, and voice conversations. The software can automatically scan and analyze users' communication records to infer their preferences, interests, or areas of knowledge. This information can be used to generate personalized content through prompts. For example, the software could provide a prompt such as: "Analyze the following user-generated communication text to determine topics the user may be interested in." Personalized content can then be generated around that topic. Personalization can also be based on reading history, thus preventing users from repeatedly accessing previously read content. An example prompt would be: "Create content around <topic> while avoiding repeating information from <previously read content>." Content format and style
[0218] Content Formatting and Styling 690. The software can format or style content based on attributes such as importance, keyword matching priority, and sentiment or emotional characteristics. It can assign importance scores to words using language model metrics (such as Lexrank, word length, and inverse word frequency in the corpus). If a word is identified as a keyword by the language model, it can also receive an importance score. For example, the software can use the AWS Comprehend model to identify keywords and key phrases in text. The software can also automatically determine the part of speech of words. For example, it can automatically assign part-of-speech weights to words using a language model: noun = 4, verb = 3, adverb = 2, etc. The software can aggregate phrases or sentences to enhance coherence, for example, by unifying the font, size, position grouping, outline, color, and highlighting effects of words within a specific phrase. Another example is that the software can uniformly format content related to a specific topic to enhance coherence; for example, in visual presentation, text related to specific keywords can be highlighted with a specific color, or the font style can be kept consistent through any style attribute (such as CSS font styles). Visual content preprocessing
[0219] Visual Content Preprocessing 695. During reading or content consumption, software can present preprocessed content with labeled features or scores. Example: Text paragraphs can be assigned priority scores (0-10) based on their importance. Scoring can be applied at the level of individual text elements, such as words, sentences, paragraphs, chapters, the entire book, or parts / wholes of content such as charts, tables, and notes. Content can then be presented to the user based on this priority. For example, by establishing a mapping relationship between priority (ag 0-10) and various presentation attributes, high-priority words (Figure 5580) can be differentiated from medium- and low-priority words (581). Examples of visual word content attribute formats that can be mapped to importance or other features include: font style (such as font size, font selection, boldness, italics, font weight, color, grayscale, background color, highlighting effect), presentation duration, etc. For example, a word with a high importance score (580) can be presented in a larger font size, a darker color (such as black), and bold; while a word with lower importance (581) can be presented in a smaller font size, a lighter color (such as gray or semi-transparent), a different font, or with a shorter display duration. See more examples. Figure 4 , Figure 5 Other font style parameters (including color or transparency levels) can also be used, but these effects cannot be achieved with black and white graphics. The software can automatically apply visual content preprocessing to words, phrases, keywords, key phrases, or other text elements. Audio content preprocessing
[0220] Audio content preprocessing, Figure 5Text content can be converted into audio content 500. The software can provide audio style processing or audio preprocessing functions to identify the existence of text element parameters or attributes, including feature values or score values. For example, written text can be processed using text-to-speech models such as AWS Polly, Google Speech, or Murf. Score feature values can be mapped to attributes of the generated audio text 500. For example, the higher the vocabulary importance score, the more prominent the corresponding pronunciation parameters (such as volume, duration, speech rate, words per minute, formant frequency, speaker, and emphasis) will be when presented to the user. Audio attributes are difficult to visualize visually through charts. Figure 5 Only the presentation time and duration of the words are indicated. Furthermore, other audio attributes of the words can also be adjusted. For example, after preprocessing and scoring text by importance, paragraphs, sentences, phrases, and words or phonemes with high importance scores can be presented in the following ways: - Increase volume or audio waveform amplitude by 560 - Decrease presentation rate or adjust rhythm (extend the duration from the beginning of the word to the end of 550) - Add speech emphasis - Increase the surrounding silent white space compared to words presented with other parameter values. Text rated as relevant to a specific topic or based on other criteria can be presented by a single speaker; different topics can be presented by different speakers. If a visual virtual avatar is used, the corresponding virtual avatar can be shown to the user to speak, following the above presentation attributes. The final presentation format can be pure audio, a multimodal format combining audio and video, or a 2D / 3D virtual reality format. During reading Loop, 700
[0221] The software can provide looping functionality, such as repeating the following steps in successive iterations. Calculate the target presentation rate (words per minute), 702
[0222] The software can display reading speed, such as reading speed in terms of words per minute, characters per minute, sentences per minute, tags per minute, or other units. Calculate the rendering time of the next content, 704
[0223] The software can display the estimated time for content to be presented, such as the remaining time for text elements (like chapters, books, or documents). Select content from data storage (e.g., files, device storage, cloud storage, web storage, peer-to-peer storage), 706
[0224] The software allows users to select content from storage sources (including but not limited to files, device storage, cloud storage, network storage, peer-to-peer data storage, blockchain-based storage, encrypted storage, and quantum storage). Generate renderable visual text content, 708
[0225] This software can generate visual content containing text elements and present it to users, with optional AI technology. See also the relevant definition. Format visual text content for presentation, 710
[0226] This software provides visual style design capabilities for visual content (including text) to be presented to users, and can be optionally equipped with AI technology. See also the definition description. Generate audio text content for presentation, 712
[0227] This software can generate audio text content to present to the user, 712. The software can convert text content into an audio format that can be presented to the user. The conversion process can be achieved using various methods, including but not limited to text-to-speech (TTS) software, speech synthesis technology, human voice-over, or other audio generation tools. Format the audio text content to present, 714
[0228] This software offers the ability to generate audio text content using artificial intelligence (AI). AI can be used to improve the quality of audio output, making it sound more natural and engaging. For example, the software provides the ability to alter the audio style through AI, such as adjusting pitch, tone, speech rate, and other audio features to match the text context. This helps users understand or quickly grasp the content.
[0229] This software can adjust audio output according to user preferences or needs. For example, it can generate audio content in different languages, accents, voice clones, or speech types based on user selection. This feature can be applied to language learning applications or other scenarios. Generate video content for display, 716
[0230] This software can generate video content to present to users, 716. It can convert text or other content into a video format that can be presented to users. The conversion process can be achieved using various methods, including but not limited to text-to-video (TTV) software, or artificial intelligence or automated video creation software. Format the video content to present, 718
[0231] This software can adjust video content output according to user preferences or needs. For example, it can generate video content in different languages, accents, voice clones, or speech types based on user selection, or use different characters, actors, visual elements, or content. This feature can be applied to language learning applications or other application scenarios. User engagement and comprehension were assessed by perceptually perturbing content. (720)
[0232] This software can perturb the content presented to the user, for example, to detect whether the user can perceive changes in the content. The system can prompt the user to identify content perturbations, including but not limited to: missing content, spelling errors, punctuation mistakes, changes in style or visual presentation, semantic changes, content additions, and incorrect content additions. Detecting user attention to the task / content through screen content or audio jitter, 722
[0233] This software can visually jitter content on the screen, such as moving content up, down, left, or right, changing color or transparency, or a combination of these and other methods. The software provides user interface elements for users to mark perceived jitter. The software can also perturb or modify presented content through sound, such as changing volume, pitch, or adding AM / FM / stereo positioning changes, or a combination of these methods. The software provides user interface elements for users to mark perceived perturbations. This method can be used to assess user engagement or attention. The pause time before the next content is presented is 724 seconds.
[0234] The software can set a pause before presenting the next text or content element. For example, the software can set an interval between phonemes, words, phrases, sentences, paragraphs, or longer units of content. The wait time can be silent or include other sounds, audio icons, or audio cues. The pause duration can be controlled by the software and / or selected by the user through user interface elements. Start audio content rendering, 726
[0235] The software can initiate the presentation of audio content to the user, 726. Activate visual text content rendering, 728
[0236] Before initiating visual content presentation, the software can remove previous visual content (such as clearing the previous text element to present the next element). The software can initiate visual content presentation to the user, 728. Visual content can also be initiated before audio content.
[0237] The software can present text to the user in a multimodal manner, such as Figure 5 As shown in Figure A. For example, when presenting a book in a multimodal manner, the software can follow this process: As a text element (such as a sentence) is presented to the user on the device screen, the corresponding audio content is also presented synchronously. For example, when a sentence is presented on the screen, the corresponding synthesized speech can be triggered to start playing. After the audio playback is complete (with an optional short delay), the previous text element is removed from the screen. In the next step, the software can process different text elements in a loop. The software can make the next text element (such as a sentence) appear on the device screen almost synchronously, while simultaneously presenting the corresponding audio to the user almost synchronously. An example of this process is shown below. Figure 5As shown, this software can load text from books or other content into a database or storage, while simultaneously storing association tags pointing to audio waveforms and corresponding text elements (such as paragraphs, sentences, words, phrases, or phonemes). Audio waveforms can be generated by inputting the corresponding text content into text-to-speech (TTS) software. This software can match or store text elements with corresponding audio start times, end times, audio filenames, and audio content segments. Start video content presentation, 730
[0238] The software can initiate the process of presenting video content to the user (730). Under the control of the software, the presentation order of visual text, audio, images, and video content can be arbitrarily adjusted. Startup background content presentation, 732
[0239] The software can initiate background content presentation, 732. This content can include ambient sound effects, background music, or ambient noise. The software can provide background content that automatically adapts to the text being read, such as playing appropriate natural sound effects when reading outdoor stories, or playing inspiring music to enhance engagement. Background content can be played via pre-recorded audio or generated by the software in near real-time. Startup instructions presented, 734
[0240] The software can initiate the presentation of tutoring content, 734. Launch rating / gamified content presentation, 736
[0241] The software may present ratings or game-related content (736), such as enhancing the reading experience through gamification. This may include ratings, metrics, challenges, quizzes, or progress tracking features that reward users when they reach milestones or levels of comprehension. Monitor user behavior, 738
[0242] The software can monitor user behavior, 738. This may include tracking reading time, reading content, reading metrics, reading frequency, or patterns that may reflect user preferences and content-related behaviors. 740 The user's movements are monitored using an accelerometer.
[0243] The software monitors user actions via an accelerometer (740). This function can be used to infer user engagement, such as inferring that the user may have stopped reading when the device remains stationary for an extended period (e.g., when it is placed down); or to trigger in-software actions when specific motion patterns are detected, such as continuing reading when the device is touched. Monitor user key presses, 1390
[0244] This software can monitor clicks on the device screen or virtual / physical buttons and other user interface elements on the device, 1390. The software can also utilize gesture recognition mechanisms such as touch, release, long press, button long press, and button release in all scenarios involving button clicks or user interface indications (e.g., all user interface elements shown in the illustration). For example, the software can be set to a continuous playback mode: as long as the user remains in contact with the UI element or presses the button, the content continues to be displayed; playback stops when the user releases the contact or stops pressing. The software allows users to control any function presented by the application by clicking, releasing, or using other gestures to manipulate UI elements. Monitor user eye position, 744
[0245] The software can integrate eye-tracking technology (744), for example, through an integrated camera or external eye-tracking device. The software can use this data to analyze reading patterns or control content flow based on the user's gaze position. See related extensions on eye tracking. Monitoring user's face, 746
[0246] The software may monitor the user’s face (746) using facial recognition technology, emotion tracking recognition or other technologies to detect the user’s identity or infer the user’s focus and engagement with the content, as well as other text element parameters. 748
[0247] The software may analyze the user’s facial expressions (748), which may be stored as text element parameters, for example, to automatically assess the user’s reaction to the content. Monitor user voice, 750
[0248] The software can monitor the user's voice (750), for example, by accepting instructions, answering questions, or facilitating an interactive reading experience through voice recognition. Monitor user clicks to highlight text and save selected text, 752
[0249] The software allows users to click on content or related UIS elements to highlight text or save selected text, 752. catch Collects user notes on the content and stores selected notes, 754
[0250] The software user interface can receive and store user notes on the content, such as allowing users to annotate text and view these notes later, 754. Allow audio content to play until the end, 756
[0251] The software allows audio content to play to the end (756), for example, before starting the next loop, and provides an optional pause function or a notification of playback completion via an optional sound / sound icon. Adjust the visual text content to display the audio progress, 758
[0252] The software can adjust the currently presented visual text content, such as to indicate the playback progress of audio content (758). Such adjustments may include: style changes of text elements before, during, and after audio playback, such as providing visual cues during reading by highlighting or fading text, thereby providing feedback to the user on the current playback position. The software can continuously monitor currently playing text elements (e.g., monitor the currently playing word). The software can calculate the relative temporal position of each text element within the audio segment using the start time of the audio segment, the duration of the audio segment at the playback rate, and text-related indices. Modify video content to indicate audio progress, 760
[0253] The software can modify video content to match audio progress (760), for example, by marking the user's current audio playback position in the video content. Modify VR / AR content to indicate audio content progress, 762
[0254] The software can adjust virtual reality (VR) or augmented reality (AR) content to reflect progress through audio content, providing a multi-sensory reading experience by coordinating audio cues with visual VR / AR cues. Triggered immediately during reading or after the user pauses / stops reading, 764
[0255] The software can activate features during reading, after reading, or when the user pauses or stops reading (764). Such features may include: feedback prompts, suggestions for further reading, user selection interfaces, data metric displays, gamification elements, or other interactive components to maintain user engagement. Presents comprehension / memory test questions and scores the accuracy of users' answers, 766
[0256] The software can selectively present comprehension or memory test questions and / or score the accuracy of the user's answers, 766. This can be done after a reading session or intermittently during reading, such as after presenting selected text elements. Based on test feedback, the user's perception / comprehension / memory levels were assessed, 768
[0257] The software can assess a user's perception, comprehension, or memory level based on their answers to test questions, 768. This can be performed after a reading session ends, or intermittently during the session, such as after the software displays selected text elements. Using eye-tracking technology to determine the user's gaze position, 770
[0258] This software supports eye-tracking technology applications, such as determining the user's eye position (770). This function can identify the user's gaze point on the screen in real time, thereby analyzing reading patterns, focus areas, and attention distribution. Eye-tracking data can be collected for real-time adjustments to content presentation () or subsequent analysis. Heatmaps can be calculated. More details on this are provided in other parts of this document. The reading comprehension or memory retention score is determined based on user responses (such as accuracy), 772
[0259] The software can assess a user's reading comprehension or knowledge retention score (772) based on their responses to content-related questions or prompts. This score can be presented as a percentage of accuracy or other scoring metrics. This assessment result can be used to adjust the difficulty and presentation of subsequent content to suit the user's individual learning pace and comprehension ability. See other sections of this document for detailed implementation information. Measuring user attention 774
[0260] The software can measure user attention using various methods. For example, it can measure: - the duration of gaze within / outside the target area - blink frequency - pupil diameter - neurophysiological indicators (optionally, EEG, EMG, event-related potentials triggered by audio / visual content, as well as skin conductance, heart rate, heart rate variability, cerebral blood flow in one or more target areas, etc.). These measurements can be used to infer the user's engagement, fatigue level, or cognitive load during content interaction. 776 Determines whether the user is ready to receive the next piece of content by observing their eye position.
[0261] This software can determine the user's eye position using eye-tracking technology (776). Based on this data, the software can implement a variety of additional functions described in other sections of this document, such as controlling reading navigation, assessing reading speed, or determining user engagement and attention levels. Reading speed measurement, 778
[0262] This software can automatically calculate the user's reading speed (778). For details on the method, please refer to other chapters of this document. Jump to "Loop" and continue, 780
[0263] The software may traverse the content elements sequentially, following the steps described in the "Looping" section and other sections of this document. After reading Present comprehension or memory test questions and score the accuracy of user responses, 800
[0264] This software can present related questions after reading to assess comprehension or memory function and score the accuracy of the answers. See other sections of this document for details. The user's perception / comprehension / memory levels are assessed based on their test responses, 805
[0265] This software offers options to rate a user’s perception, understanding, or memory based on their answers to the presented questions or tests, as detailed in other parts of this document. Using eye-tracking technology to determine the user's gaze position, 810
[0266] This software provides the function of using eye-tracking technology to determine the position of a user's eyes after they read content, as detailed in section 810 of this document. The reading comprehension or memory retention score is determined based on user feedback (such as accuracy rate), 815.
[0267] This software can provide the function of calculating reading comprehension or memory retention scores based on user response (such as accuracy percentage), as detailed in other parts of this document. Stores user annotations and notes, 820
[0268] This software can store user-made tags and notes on content for later retrieval or analysis; see other sections of this document for details. Processing multi-user tagged content and presenting it to other users, 825
[0269] This software offers the option to process multi-user tagged content and present aggregated data to other users, as detailed in other parts of this document. Allow users to rate the text, 830
[0270] This software provides user interface elements for users to rate the text or content they read, 830. Specific details will be described in other parts of this document. The software provides a user interface for collecting text input, such as via keyboard input, screen input, and text-to-speech. Voice input for audio, 835
[0271] This software offers options to collect user text input through various methods, including keyboard, screen input, or voice input converted from text to speech technology, 835. Store user input as notes, 840
[0272] The software offers the option to store the user's text input as content-related notes, 840. Storing user input as a reflection of what they learn or understand from the content, 845
[0273] The software offers the option to store user input as an indication of the user's level of learning or understanding of the content, 845. Pass It automatically compares user input with presented content to assess similarity and automatically scores the user's level of learning or understanding of the content. Note: 850
[0274] The software may offer a feature that automatically scores a user's feedback on their learning or comprehension by comparing user input with content to assess similarity, 850. Using artificial intelligence or language models to automatically score users' learning or understanding of content, through automatic comparison.User input and presented content are used to assess the user's understanding or retention of the content's meaning. 855
[0275] The software offers the option to automatically score the user's feedback on comprehension or memory using artificial intelligence or language models, such as by comparing the user's input with content or predefined answers to assess the level of understanding, 855.
[0276] The features listed in the detailed description section (including pre-reading, during-reading, and post-reading features) may be provided individually or in combination. No feature should be considered a necessary or absolute requirement for other features. Many features (whether explicitly stated or not) are described in more detail in other parts of this document and can be understood by referring to supplementary descriptions elsewhere in the document. Optional feature examples New features
[0277] This software can preprocess text using content filtering algorithms to identify and selectively exclude or minimize content that is highly similar to content previously interacted with by the user or explicitly marked as content to be excluded. The software can also use content filtering algorithms to preprocess text and filter content in areas of interest provided by the user (UIS). It may use content filtering algorithms to filter out content areas that the user explicitly indicates they wish to avoid through their provided UIS. This algorithm can access the user's personal reading content database to determine previously encountered content. The software can achieve this function through AI prompts, such as: "Exclude content similar to previous text from the input text. Input text: <Input text>. Previous text: <Previous text>". The software can compare content with content the user has previously read, listened to, or consumed. This comparison aims to limit the presentation of duplicate text—that is, content that is similar in meaning to or identical to content the user has previously read, or content that exists in the user's previously consumed content database. Automatic transcription or subtitle generation
[0278] This software offers automatic transcription or subtitling capabilities, such as generating automatic transcribed text for audio or video content. The software processes audio signals from video or audio content, converting speech into written text (with optional time stamping), thus generating transcribed text. The software can simultaneously display the transcribed text and time stamps on the video screen, or present them as subtitles alongside the audio content. This transcription and subtitling process can be achieved using speech-to-text software. The software supports editing the automatically generated transcribed text, such as correcting errors, and provides text formatting options (e.g., adjusting font size, color, and subtitle position) to improve readability and accessibility. Furthermore, the software supports transcription or subtitling in multiple languages and dialects, possessing the ability to automatically translate speech content into different written languages to generate transcribed text and subtitles. The generated text records or subtitles can be stored and indexed, facilitating the querying and retrieval of specific segments of audio and video content based on the speech text content. For example, by locating the subtitle position through text search, the corresponding time segment can be found in the audio and video text. In-text commenting function and interactive forum
[0279] This software offers embedded commenting tools, allowing users to add annotations, modifications, or comments to documents or other text. It enables commenting through an interactive forum where users can post, participate in discussions, like or dislike posts, ask questions, or provide clarification. The software provides the ability to search for related comments across different chapters or documents. It provides a channel for users to chat with document authors. It allows setting different reputation levels for different users in the interactive forum. It grants users with higher reputation levels priority in content display. It offers red-line annotation functionality. It provides revision tracking and accept / reject modification functions. It provides document comparison or merging functions. It provides document difference comparison functions. It provides document rollback functionality. It provides document version control functions. It provides forum management functions. Editor's suggestions and voting function
[0280] The software may include collaborative editing features. Users can use the software to suggest changes to the text. Other users can participate in a voting process to support or oppose these suggestions. The software may provide a suggestion prioritization algorithm based on users' editing history and reputation. High-scoring suggestions will be displayed first, for example, comments with high voting scores and voting weights linked to user reputation will be given priority. User feedback rating and reputation function
[0281] This software can assign dynamic ratings (such as reputation ratings) to users based on the frequency and quality of their interactions (e.g., comments, editorial suggestions, and participation in discussions) or their reputation on other platforms. The software may partially utilize data from other platforms (e.g., the number of followers, posts, or other engagement metrics on social media platforms) as a basis for user reputation ratings. The interface can prioritize displaying feedback from high-reputation users through visual identifiers or algorithms. The rating system can employ an adaptive model that dynamically evolves based on community engagement and content accuracy. The software can filter content based on user feedback and implement a weighted rating mechanism based on reputation. Content reading order and other display functions
[0282] This software can visually present text element parameters to users, such as the reading order of text elements, reading date / time or the time interval between the last reading, the degree of annotation of text elements, and the duration of user dwell time in different content paragraphs. The software provides tools that allow users to jump to recently read content based on this display, such as clicking on the location of recently read text elements in the display interface to continue reading, or quickly locating areas where the user has spent more or less time. The software can present the above information in tabular form, or through graphics or diagrams. Furthermore, the software can use timelines, map visualizations, or other forms of interfaces to intuitively present the user's reading trajectory. For example, the software can provide a line graph where each point corresponds to a specific text element, and the color of the line points corresponds to the parameter indicators of that text element, such as: the degree of annotation of the text element, number of readings, reading time, dwell time, pupil measurement data, attention data, eye movement trajectory, or fixation duration data, etc. This information can be based on current user behavior, or on the reading behavior of concurrent users and historical users.
[0283] Dark mode and style options software offers customizable display settings, including dark mode (light text on a dark background) and night mode (warm tones or color schemes suitable for low-light environments / bedtime reading). The software may include features to reduce eye strain, lower energy consumption, or promote sleep, such as filtering blue spectrum colors. The software may support user-defined themes, font styles, and layout configurations. The software can adaptively adjust based on ambient lighting conditions or user-defined schedules, such as automatically adjusting brightness according to ambient light intensity or the user's local time.
[0284] Content can be presented to users via projector. Content can also be presented to users via head-up display. Game and Multiplayer Mode Multiplayer mode
[0285] The software may offer a multi-user mode, allowing multiple users to interact with it simultaneously. This multi-user mode may allow multiple users to interact with the same content, including simultaneously or at different times. The software may support parallel or synchronous reading in a multi-user mode, meaning multiple users can participate in content interaction at the same time. The software can provide a shared reading experience, enabling users to browse content, discuss, debate, and exchange viewpoints in near real-time or asynchronous manner. For example, the software may offer competitive reading games, such as users racing to complete text reading and / or answer comprehension questions.
[0286] This software offers a multiplayer mode that supports asynchronous reading, allowing different users to interact with content at different times. Users can be scheduled to read or interact with content independently and asynchronously, and then their annotations, highlights, notes, and other derivative data can be shared with other users, thus enabling collaborative learning.
[0287] Whether in parallel or serial mode, the software offers features to enhance the multi-user experience and communication. For example, user chat, forums, communities, or comment functions provide a platform for discussion; voting or rating systems allow users to express agreement or disagreement with others' interpretations. The software can also provide personalized recommendations based on user interactions with text and other users. Multi-user, multi-version content citation
[0288] This software enables content referencing across different versions of content or text, between different users, and in synchronous or asynchronous environments. For example, when two users are reading different versions of the same book, the software can facilitate communication between them using content location descriptors corresponding to each version, allowing one user to understand the specific location in the book being referred to by the other. Figure 11 This demonstrates how a database structure maintains text correspondences and pointers across different versions. The software enables the following: when a user is reading version 1 (the first sentence of paragraph 1) in cell 1104 / 1140, a pointer to that content can be sent to a second user reading version 2 of the same text. The second user will then see the text displayed in cells 1118 / 1140—the text corresponding to that paragraph and sentence number, but belonging to the version the second user is reading (i.e., version 2, paragraph 1, sentence 1). This type of content referencing mechanism enables the transfer of corresponding content and locations across different dimensions such as version, editor, language, and revision. Text standardization
[0289] The software can standardize different versions of content or text to generate content identifiers (such as...). Figure 11(See 1132). The software may create multiple versions of content, where different versions of the same text element have corresponding content identifiers. The software can abstract content, converting specific citations such as page numbers, titles, and citations into a universal citation format, enabling the system to understand these citations across versions.
[0290] Content Identifiers: Text elements, chapters, paragraphs, sentences, time points, images, words, or other text / content fragments can all be assigned unique identifiers (CIDs). These identifiers allow users to skip page numbers or directly reference (which may vary depending on version / format / user preference) to locate specific parts of the text or content.
[0291] Communication Functions: This software allows users to communicate with second users about text elements or other content elements, enabling the software to display the corresponding content of that text element or content element in the selected version to the second user. Synchronization Functions: When a user shares, marks, or interacts with a part of the text / content, even if the second user is using a different version (e.g., different language versions, different pagination settings, or user preferences), the system can still present the relevant content from the corresponding version. Content Anchoring: The software can set anchor points in the text (e.g., chapter titles, subheadings, or specific keywords that remain unchanged across versions), which users can select as reference points for discussion. Cross-Version Indexing: The software can index multiple versions of text and create a cross-reference system. When a user marks a paragraph or adds notes, the system can map it to the corresponding paragraph in other versions of the text through an indexing mechanism (e.g., based on CID). Cross-Device and Format Synchronization: The software can synchronize user actions (e.g., annotations, notes, and bookmarks) across different devices and formats based on identifiers such as CID. Contextual Relationships: The software uses algorithms to parse the context of selected text elements, marked paragraphs, or comments. This association mechanism analyzes the surrounding content of selected text to identify identical or similar paragraphs of text elements across different versions. Navigation Interaction System: The software provides an interactive system that allows users to navigate through annotations, comments, and discussions associated with specific sections of text / content. This interface displays association mappings, enabling users to jump to corresponding paragraphs in their own version of the text / content—for example, when a user receives a link to a text element or video clip from another user (who may be using a different version of the content). Cloud Collaboration: The software enables real-time or asynchronous sharing of text elements (including cross-version corresponding elements), information, annotations, messages, and other content among users based on a cloud platform. Users can view other users' comments, questions, interactions, and annotations on text or content, regardless of the other user's version or reading time. Multilingual features and translation support
[0292] This software may offer multilingual and translation support, enabling users to participate in automatically translated content or discussions into their own language, or to communicate across languages. The software may provide translation services to global communities of users speaking different languages, promoting communication and understanding. The software may provide indicators to users, displaying the original version or the language in which content (such as text elements, comments, or posts) was created. The software may offer user interface features for users to control translation features, such as turning translation on / off or selecting the target language. User language preferences and other language translation features may be stored in the user profile. The software may provide translation functionality to ensure the correspondence of text elements between different versions or languages. This allows users to communicate about corresponding content elements, even if the actual content presented is based on their own language version or preference settings. Book clubs, reading groups, and study clubs
[0293] This software offers interactive features to support various content formats such as book clubs, reading groups, and study clubs. For example, it allows reading group members to read at their own pace and enables asynchronous interaction between members or between members and NPCs (non-player characters). Even if members read at different times or at different paces, the software still provides the social attributes of a book club. For instance, it can create a platform for members to share their insights and interpretations of the text, or initiate one-on-one, one-to-many, and group discussions about the content. Users can directly annotate and share specific text elements on the reading interface. The software allows users to easily reference specific text elements in discussions, enabling different users to present corresponding text content in their personal versions based on their choices, language, and preferences. The software also provides member voting or questionnaire functions, allowing book club members to jointly decide on future content or themes. User information sharing
[0294] This software can display various information about other users to the current user, including their personal profile data. This information may include other users' names, avatars, personal photos, reading preferences, book collections, and other personal details they choose to share. The software provides a security control mechanism, allowing users to independently set the scope of shared data and the recipients (specific users / user types / user groups). The software can also display other users' reading metrics, including: number of books read, total pages read, average reading speed, reading time, and other quantitative data on reading activities or content consumption.
[0295] The software may also display other users' current reading positions. This could refer to the specific chapter or page number of the book another user is reading, or it could be achieved through a mechanism that shares the corresponding position across versions. The software may offer features such as allowing the current user to choose to follow or compete with others by viewing their reading positions, thereby creating a shared experience, a sense of community, or a competitive atmosphere.
[0296] The software can display annotations from other users, including highlighted paragraphs, bookmarked pages, and notes or comments added by users or user groups to the text content.
[0297] The software supports user interaction, such as synchronous or asynchronous text / audio / video chat, sharing reading progress, comments, or annotations. Competition Function
[0298] The software may offer user-to-user competition features, such as reading speed contests—where users race to read a designated text quickly or read more content within a limited time. The software may provide cross-user reading metrics, such as average reading speed or reading volume over a fixed time period, to display a specific user's performance or rank users based on their performance in a competition. The software may offer comprehension efficiency contests, where users must complete text comprehension within a specified time, including answering related comprehension questions or summarizing the text. The software may provide cross-user reading metrics, such as reading efficiency (reading volume × reading comprehension test accuracy) or other metrics based on comprehension or memory, to display user rankings or sort users based on competition performance. The software can update participants' reading metric progress in real time during the competition and display a leaderboard showing participants' rankings. Competition scheduling and matchmaking
[0299] This software provides users with the ability to register for competitions. It offers competition scheduling capabilities, allowing for automatic scheduling of competitions by day, week, month, or other intervals. The software can automatically select competition content, such as for a reading speed competition. Users can also choose their own competition content, such as creating competitions and freely selecting content, participants, time, duration, objectives, and other competition parameters. The software provides user matching capabilities, such as matching users to relevant competitions based on their reading metrics and providing entry channels. Finally, the software offers competition matching based on user-specific characteristics, such as matching users from the same group, grade, class, age group, reading level, or with the same teacher / coach. Rating systems and leaderboards
[0300] This software offers a points-based reward system for users to complete tasks or reach milestones. These points can also serve as a measure of progress or achievement, such as completing text reading modules, consuming content, reading time, reading consistency, or maintaining a reading / content consumption record for multiple consecutive days. When users achieve specific goals or complete special challenges, the software can award badges, trophies, or other achievement badges.
[0301] The software may offer a competition scoring system. This system can evaluate users based on multiple reading metrics, including but not limited to reading speed, comprehension level, platform usage time, and the amount of content read or consumed. The software may provide an automatic user scoring mechanism, such as allowing user scores to be multiplied by a specific coefficient (e.g., grade level or reading level), or using a curve-based scoring system referencing the distribution of other selected users. The software may provide leaderboards based on user scores or reading metrics. The software may display the leaderboards on the user interface (UIS), visually presenting a user's performance compared to other users. The software can provide leaderboards with customizable filtering rules, allowing users to filter displayed content based on factors such as competitors, group affiliation, selected content / books, age group, reading level, or geographical location, thereby enabling comparison with relevant peer groups. The software can provide near real-time leaderboard updates. Additional features
[0302] Levels and Progression: The software allows users to unlock new content, challenges, or rewards through a tiered or stage-based progression system. Challenges and Tasks: The software offers specially designed challenges or tasks for users to complete, typically with a narrative or thematic background. Customizable Virtual Avatars: Users can create and customize virtual avatars representing themselves within the gamified environment, such as modifying their visual appearance within the software or enabling skills and saving them to their user profile. Rewards and Incentives: The software provides virtual or real-world rewards that users can earn by completing specific activities or reaching designated levels. Narrative Elements: The software incorporates storytelling mechanisms, allowing users to experience a dynamically evolving plot as they progress through tasks and challenges. Data Analysis and Reporting: The platform provides analytical tools and reporting functions to gain deep insights into user behavior patterns, engagement, and performance metrics. Customization and Brand Adaptation: The software supports customized interface visual styles to align with brand image or the preferences of specific user groups. Security and Content Moderation: The software is equipped with security mechanisms (such as controlling the visibility of information between users) and manual moderation tools (allowing moderators to flag, delete, or ban content / users). Skill Tree and Personalization
[0303] The software may offer a skill tree system, which users unlock progressively by completing reading tasks or educational challenges. This feature allows for personalized customization of learning paths / gamified paths, or dynamic adjustment of available content, tools, and functional modules based on the user's progress. Synchronous multiplayer experience simulation
[0304] This software can simulate synchronous or real-time multi-user experiences for users participating in serial multi-user sessions, which are conducted asynchronously by different users. The software can provide users with information from a second user or multiple other users. In simulations based on relative time, the software can provide simulated synchronization information—this information originates from data generated by a second user at a corresponding point in time. If the second user and the current user start a task simultaneously (such as synchronously starting to read text or consume content elements), then this information represents the data that the current user should have generated at the same point in time. In simulations based on relative position, the software can provide simulated synchronization information—that is, information obtained from the corresponding position of the second user. This information corresponds to the information that the current user should have received if they were at the same position in the document or content (such as the same period, a video time point, or a position in a virtual / game / real-world scene).
[0305] The second user information provided by the software may include data related to that user's corresponding time point in the simulated synchronous experience—a corresponding time point refers to the moment when both users start the same activity (such as reading text or text elements) at the same relative time. The simulated synchronization information provided by the software regarding the second user may also include data related to the user's position at a corresponding location point in the simulated synchronous experience. A corresponding location point refers to the same relative position in text, documents, or other content, such as a corresponding period in a book, a time point in audio or video content, or a specific location in the game / simulated world / real world based on the user's location information.
[0306] For example, if a second user starts reading a document or consuming content at the same time as the current user, the software can show the second user the amount of content they have read, or display other metrics for the second user. For instance, when a user has been reading text for ten minutes, the software can display derived metrics from another user's reading of the same text for ten minutes, including that user's text position, reading volume, reading speed, comprehension rate, or other rating metrics.
[0307] For example, when a second user has consumed the same amount of content since starting to read the document or consume the content, the software can show that user the specific amount of content they have read, or display other metrics for that user. For instance, when a user reads the 100th sentence of the text, the software can display that the second user is reading the same text (or a different version of the same text). 至 The metrics generated at the 100th sentence include the second user's reading time, reading speed, comprehension rate, or other rating indicators. The software can also provide comparative metrics, such as displaying the difference or ratio of any metric between the two users, for example, indicating that the second user is two sentences behind, has a 10% lower reading speed, or a 12% lower comprehension score.
[0308] The software can also provide non-player characters (NPCs) to simulate a synchronous multiplayer game experience. The software can generate simulated content that recreates the scenario a user would experience if they viewed the NPC as a real player with specific profile information. For example, the software can set up a reading competition where one or more opponents are NPCs. The software can present a display highly consistent with the real user interface—that is, the interface a user would receive if competing or reading with a real person (not an NPC) with that user profile. For example, the software can set up an NPC named "Robert Bobbins," with a specific avatar and a reading speed of 250 words per minute, who can "read synchronously" with the user. The software will display the NPC user's reading metrics and other information, such as the NPC user's progress of reading 250 words per minute, and display their corresponding position on the leaderboard based on their reading metrics.
[0309] This software can provide any of the functions described in this section, "Synchronous Multi-User Experience Simulation," in either a real or simulated synchronous multi-user mode. Similarly, other functions described in this article can also be implemented by simulating a synchronous multi-user mode.
[0310] The user interaction system offers various rating mechanisms417 to display user achievements or facilitate comparisons between users, including leaderboards, reward systems, audio / visual cues to praise success or provide feedback, level systems, prizes, and elements commonly found in games. The software can display comparative metrics to compare a user's current reading speed or progress with other reading methods (such as continuous reading), for example, showing the time saved by the user compared to other reading methods. Tests, comprehension and memory, quizzes
[0311] This software provides user testing, comprehension and memory tests, and quiz functions, including scoring, grading, and assessment of the user's understanding and retention of the content learned through the software. The testing methods provided by the software (including comprehension and memory tests) are not limited to those described in this section. Content disturbance detection
[0312] This software provides a mechanism for introducing perturbations into text or content and offers an interface to receive user input on these perturbations. The software can provide users with text or content containing either automatically generated or user-created perturbations. It can also provide user interface elements for users to respond to these perturbations. Furthermore, the software can instruct users to indicate whether they perceive these perturbations. In this way, the software enables a psychophysical testing paradigm for assessing whether a user is reading / consuming content or evaluating the user's level of engagement with the text or content.
[0313] The software can provide users with prompts or instructions to identify content perturbations. The software can introduce perturbations into text or content, including but not limited to: deleting parts of content, removing words, deleting phrases, rearranging word order within sentences, spelling errors, punctuation errors, changes to text or audio styles, visual targets (such as images), audio targets (such as sounds), removing text elements from the original text or version, text grammatical distortions, fabricated facts, false or inverted facts, phrases or character names, event sequence distortions, word substitutions, and non-words. This software approach can be used to assess user engagement with content, reading efficiency, language parsing or comprehension abilities, and attention to detail, without being limited by specific content. In addition to detecting word or visual targets, the software can also alter conceptual content, such as deliberately presenting fabricated facts, altering words, phrases, or character names, and distorting the order of events, to determine whether the user truly understands the meaning of the text. The software can generate perturbation targets through AI prompts. For example, use the following instructions: "Reverse the meaning of the following sentence: <enter sentence>", "Randomly delete a word from the following sentence: <enter sentence>", "Determine which sentence in the following text describes Lawrence as being in a state of grief: <enter text>", or "Determine which sentence in <enter text> presents a <conceptual answer>" (the conceptual answer might be 'Australia's first city to adopt commercial wind power'). The software may provide instructions that require the user to identify these perturbations or modifications.
[0314] The software provides users with instructions to flag specific targets (such as text elements, concepts, or other content elements) when detected. For example, the software can identify specific words, names, or phrases in text or content, or add detection targets to text / content, guiding users to immediately identify these targets while reading or browsing. For instance, the software might display instructions such as: "Detect when <word> is seen in the content," "Detect when <concept> is mentioned in the content," "Detect when there is an incorrect expression in the content," "Detect when Lawrence appears in the video," "Detect any grammatical errors," "Identify moments when Lawrence is emotionally distressed," "Detect any type of error in the content (such as missing words, spelling errors, or non-vocabulary errors)," and "Flag when you know the <conceptual answer>" (a conceptual answer might be "Australia's first city to adopt commercial wind power").
[0315] For example, the software can provide detection targets using a "Where's Waldo?" test, requiring users to identify the location of the word "Waldo" in text elements, documents, or books. The software can provide user interface elements for users to mark detected targets, such as when a user identifies the word "Waldo" in a text element they are reading. These user interface elements can be accessed at any time while reading or browsing content to mark detection targets. When a text element is presented, the software can use user interface elements to ask the user whether the text element contains the detection target, for example, prompting, "Did the paragraph you just read mention the character Waldo?" The software can provide prompts before text elements are displayed, guiding users to indicate whether they perceive the detection targets in the text or content.
[0316] This software can determine whether a user has correctly identified the target. It records the time when the user confirms the target identification and compares this time with the target's presentation time to calculate the user's reaction time. For example, the software can present the sentence "Then Waldo climbed the tree" on the screen one second after any starting time, simultaneously playing the text-to-speech audio of the sentence. If the user clicks the button 3.2 seconds after the same arbitrary starting time, this "detection time" indicates that the user has identified the target word "Waldo." At this point, the software can determine that the user has identified the target, and the detection time is 3.2 seconds. The software can use the detection time as a text element parameter. It can also use the detection time to calculate other text element parameters, such as the user's reaction time—the time difference between the target's presentation and the user's detection time.
[0317] "Target text rendering time" refers to the time it takes for the target text to be presented to the user in text form, such as the word "Waldo" appearing on the device screen. In this example, this time is counted as 1 second from any starting point. User reaction time can be calculated as the detection time minus the target text rendering time.
[0318] "Target audio presentation time" refers to the time it takes for the target text to be presented to the user in audio form, such as playing the audio of the word "Waldo" in the synthesized speech sentence "Then Waldo climbed the tree". In this example, this time is calculated as 1.7 seconds from the same arbitrary starting point. User reaction time can be calculated as the detection time minus the target audio presentation time.
[0319] "Expected target reading time" refers to the time a user might need to read the target text. The software uses algorithms to estimate the reasonable reading time for the target. For example, when the target text is the third word in a sentence, the software might calculate the expected target reading time as: the target text presentation time plus the number of words (3 in this example) divided by the reading rate. Using an example (4 words per second): 1 second + (3 words / 4 words / second) = 1.75 seconds. User reaction time can be calculated as the detection time minus the expected target reading time.
[0320] "Target fixation time" refers to the duration for which a user's eyes are fixed on the detected target, which can be determined using eye-tracking technology in the software. For example, a user might shift their gaze to the word "Waldo" 1.5 seconds after any initial start time, and the software can measure this point in time using eye tracking—for example, determining that the user's fixation point is within a defined radius of the visual location of the detected target on the device screen. The user's reaction time can be calculated as the detection time minus the target fixation time.
[0321] This software can identify potential user errors during the process, such as failing to identify presented targets ("missed detection") or incorrectly marking unpresented targets as identified ("false positive"). The software can calculate a detection score for the user using correct response information, reaction time calculated by any method, error logs, or other behavioral performance data. The software can display the detection score to the user or others and compare the score differences between different users. For example, the software can provide a user's percentage accuracy, which is the percentage of correctly detected targets out of the number of errors. The software can provide a user's percentile score by comparing the user's accuracy score with the distribution of accuracy scores from other users. The software can perform similar calculations using the user's reaction time score. The software can perform additional calculations, calculating statistics related to user behavior and performance, comparing them with other users or groups, and presenting the resulting data.
[0322] The example above demonstrates a specific target type for detection—the word "Waldo". The software can also detect other target types (including but not limited to: partial content deletion, word deletion, phrase deletion, word reordering within a sentence, spelling errors, punctuation errors, text or audio style changes, visual targets such as images, audio targets such as sounds, deletion of text elements from the original text or version, text grammatical distortion, fabricated facts, false or inverted facts, phrases or character names, event sequence distortion, word manipulation, and non-word detection).
[0323] The software provides content for users to read while searching for specific types of anomalies, such as spelling errors or missing words. This method enhances user engagement and tests their content comprehension. These challenges can be randomly distributed or arranged at fixed intervals to increase unpredictability and maintain user alertness.
[0324] The software may present the user with the perturbated text again to test whether the user has read it and has a certain level of comprehension. When the user notices the interference or perturbation in the text, the system will prompt them to respond (such as by clicking a button). Such perturbations may include: deletion of parts of sentences, spelling errors, irrelevant word substitutions, audio perturbations, or misalignment of audio or video content. AI-generated questions to measure comprehension and memory / recall abilities.
[0325] Text comprehension or memory questions can be generated automatically. Question generation can be achieved using AI technology, including the use of... The Transformer language model or other models can be used. For example, comprehension / memory questions can be generated using prompts such as: "Generate multiple-choice questions to assess reading comprehension of the following text and provide the correct answers: <text to be provided to the user and the paragraph to be asked>". Questions can be in the form of multiple-choice questions, true / false questions, or tests for the user's ability to identify present / missing elements in the text. Questions can require users to demonstrate skill mastery by completing tasks taught in the text, or they can require comparison of the user's answers with the similarity of answers from other user groups. The assessment of comprehension / memory level is conducted through multiple-choice questions.
[0326] This software offers multiple-choice questions to assess readers' comprehension levels. These questions aim to test readers' grasp of the text, focusing on the main idea, supporting details, inferences, and overall meaning. The system uses an algorithm to score the answers, providing real-time feedback to the user and allowing adjustments to the reading process if insufficient comprehension is identified. In-depth understanding essay test
[0327] The software also offers oral or written essay tests designed to delve deeper into readers' comprehension of texts, requiring them to articulate their viewpoints and interpretations in a more nuanced and detailed manner. Essays can be automatically scored using artificial intelligence, assessing the coherence, relevance, and depth of the user's respons...
Claims
1. A selective visual display system comprising: a. a processor configured to execute encoded instructions for retrieving, processing and presenting content to a user; b. an integrated circuit for processing electrical audio signals, the circuit capable of converting digital audio data into a human perceptible audio output and further comprising audio functionality utilizing a digital audio format; c. a display screen configured to display digital content associated with the device, providing a medium for user interaction with the content presented by the system; e. one or more computer storage devices for storing machine readable instructions, content files, user data or system operational logs; and f. an audio presentation module for presenting audio data to a user; wherein the device is configured to perform the following operations: displaying a content element on the display screen; presenting an audio segment corresponding to the content element; removing the content element from the display screen upon completion of the audio segment; coordinating the presentation of the content element, wherein the audio content element originates from digital audio data and is presented in a user perceptible manner through an output mechanism; and subsequently displaying a next content element and presenting a next audio segment, wherein the system is equipped with content sequencing logic that controls the temporal progression of content elements, coordinating the order and timing of content accessibility.
2. A computer implemented method for selectively presenting visual and audio content comprising: a. executing encoded instructions for retrieving, processing and presenting content to a user; b. processing electrical signals in a digital audio format, converting digital audio data into a human perceptible audio output; c. presenting digital content (including various content types), providing a medium for user interaction with the presented content; e. storing machine readable instructions, content files, user data or system operational logs in memory; and f. presenting audio data to a user, the method capable of outputting a variety of audio signals; wherein the method comprises: displaying a content element; presenting a sequenced content element (which can include a variety of different digital content elements); presenting an audio segment corresponding to the content element; stopping the display of the content element; coordinating the presentation of the content element, wherein the audio content element originates from digital audio data and is presented in a user perceptible manner through an output mechanism; and subsequently displaying a next content element and presenting a next audio segment, wherein the method includes sequencing logic for controlling the temporal progression of content elements, coordinating the order and timing of content accessibility.
3. A computer implemented method for selectively presenting visual and audio content comprising: a. executing encoded instructions for retrieving, processing and presenting content to a user; b. processing electrical audio signals in a digital audio format, converting digital audio data into a human perceptible audio output; c. presenting digital content (including various content types), providing a medium for user interaction with the presented content; e. storing machine readable instructions, content files, user data or system operational logs in memory; and f. presenting audio data to a user, the method capable of outputting a variety of audio signals; wherein the method comprises: rewriting textual content to create a new version of the textual content, displaying a content element; presenting a serialized content element (which can include a plurality of different digital content elements); coordinating the audio presentation of the content element, wherein the audio content element is derived from digital audio data and presented in a user-perceptible manner through an output mechanism; and The method provides a means for a user to switch between the presentation of the text content and the presentation of the new version of the text content while maintaining the corresponding position; The method includes serialization logic for controlling the temporal progression of the content element, coordinating the order and timing of content accessibility.
4. The method of claim 2, wherein the method performs operations in sequence, the operations comprising: displaying a content element; presenting an audio segment corresponding to the content element; stopping the display of the content element; subsequently displaying a next content element and presenting a next audio segment, 5. The method of claim 4, wherein the content element comprises a text element.
6. The method of claim 4, wherein the content element comprises a sentence of text.
7. The method of claim 4, wherein the content element comprises a phrase of text.
8. The method of claim 4, wherein the content element comprises a paragraph of text.
9. The method of claim 4, wherein the content element and the next content element each comprise a sentence of text.
10. The method of claim 4, wherein the content element comprises a text element selected from the group consisting of: a character including but not limited to a Roman alphabet, Cyrillic alphabet, Greek alphabet, Arabic alphabet, Hebrew alphabet, Chinese character, Japanese, Korean, Devanagari; a group of characters; a word; a phrase; a cluster of phrases; a sentence; an array of sentences; a paragraph; a collection of paragraphs; a section of a chapter; a chapter of text; a title of an image, table, or graph; an equation; a translation in a different language; a link to another text element, document, or web resource; an emoticon; a special character such as a mathematical or scientific notation; a footnote and endnote; a comment or remark; an excerpt of other text; a bulleted or numbered list; a reference to a paragraph; a snippet of programming language code; a bibliographic entry; a legal citation; and combinations thereof, wherein the text element is structured for presentation on a selected device selected from the group consisting of: a computer screen, a mobile device screen, an augmented reality or virtual reality device, and a brain-computer interface.
11. The method of claim 4, wherein the content element comprises a text element presented in a plurality of words, each word formatted with a different visual style attribute selected from the group consisting of font type, font size, font color, font background color, font effect (including bold, italic, underline, strikeout, shadow, outline, glow); text alignment including left, right, center, justified; spacing attributes including line spacing, word spacing, margin settings; hierarchical organization indicators such as headings, subheadings, bullets, numbers; interactive elements such as buttons, links, toggles; and combinations thereof, wherein the visual style attributes are configured for presentation on a selected device selected from the group consisting of computer screen, mobile device screen, augmented reality or virtual reality device, and brain-computer interface device.
12. The method of claim 4, wherein the audio segment comprises text-to-speech audio.
13. The method of claim 4, wherein the audio segment comprises a sentence of text-to-speech audio.
14. The method of claim 4, wherein the audio segment and the subsequent audio segment each comprise a sentence of text-to-speech audio.
15. The method of claim 4, wherein the audio segment comprises text-to-speech audio generated from a text element selected from the group consisting of, but not limited to, Roman alphabet, Cyrillic alphabet, Greek alphabet, Arabic alphabet, Hebrew alphabet, Chinese characters, Japanese, Korean, Devanagari; character sets; words; phrases; clusters of phrases; sentences; arrays of sentences; paragraphs; collections of paragraphs; chapters of sections; dedicated text sections; captions of images, tables, or graphics; equations; translations in different languages; detailed definitions; hyperlinks to other text elements, documents, or web resources; emoticons; symbols or special characters (such as mathematical symbols or scientific notations); footnotes and endnotes; annotations or remarks; other text excerpts; bulleted or numbered lists; paragraph references; code snippets in multiple programming languages; bibliographic entries; legal citations; and combinations thereof, wherein the text-to-speech audio is presented in a style selected from the group consisting of different voice types, accents, dialects, languages, tones, pitches, speeds, volumes, and emotional tones, designed to mimic human speech and adapt to various communication scenarios.
16. The method of claim 4, wherein the method applies audio style processing to the text-to-speech audio, including presenting different instances of the same word at different volumes when the word appears in different sentences.
17. The method of claim 4, wherein the method applies audio style processing to the text-to-speech audio, including presenting different instances of a word at different speeds when the word appears in different sentences.
18. The method of claim 4, wherein the method applies audio style processing to the text-to-speech audio, including presenting different instances of the same word at different stereo positions.
19. The method of claim 4, wherein the method is configured to adjust the content presentation rate through user interaction with system elements or algorithmically determined settings.
20. The method of claim 4, wherein the method dynamically selects content from multiple versions of content sentences.
21. The method of claim 26, wherein the content dynamically selected by the method is based on user selection using interactive system elements such as selectors or sliders.
22. The method of claim 4, wherein the method automatically adjusts the volume of words or sentences in content to reflect their importance.
23. The method of claim 4, wherein the method automatically breaks sentences into phrases and presents the phrases with larger inter-character spacing between phrases than within phrases to aid reading.
24. The method of claim 4, wherein the method automatically breaks sentences into phrases and presents the phrases in an up-and-down arrangement to aid reading.
25. The method of claim 4, wherein the method automatically rewrites text content to create a new version of the text content.
26. The method of claim 4, wherein the method automatically rewrites text content to create a short version of the text content.
27. The method of claim 4, wherein the method automatically rewrites text content to create a different language version of the text content.
28. The method of claim 4, wherein the method automatically rewrites text content to create a new version of the text content, the method providing a means for a user to switch between presentation of the text content and presentation of the new version of the text content while maintaining a corresponding position.
29. The method of claim 4, wherein the method isolates and displays text content sentence by sentence to enable focused reading.
30. The method of claim 4, wherein the method automatically selects text elements based on text element parameters and presents the text elements according to the selection.
31. The method of claim 4, wherein the method automatically selects text elements based on information selected from the group consisting of: keyword inclusion, key phrase inclusion, semantic relevance, user-specified criteria, user-specified query, tags, previous presentation, linguistic analysis, sentiment analysis, contextual relevance, historical interaction data, metadata characteristics, authorship, source credibility, temporal factors, document structure, reader preferences, accessibility requirements, and combinations thereof, and presents the selected text elements by means including but not limited to visual display, audio output, user interface interactive elements, or combinations thereof.
32. The method of claim 4, wherein the method maintains a corresponding position of a user in content when the user selects a different version of the content.
33. The method of claim 4, wherein the method automatically selects or highlights sentences containing user-defined keywords or key phrases.
34. The method of claim 4, wherein the method allows a user to highlight or select a sentence with a single click.
35. The method of claim 4, wherein the method allows a user to highlight or select a sentence with a swipe operation.
36. The method of claim 4, wherein the method allows a user to change the highlighting level of a sentence with a single gesture, which can be a touch, click, tap, key press, swipe, touch-and-hold, long press, long press-and-hold, or other discrete touch interaction that does not require multiple independent touches or a sequence of different gestures.
37. The method of claim 4, which provides a review mode that allows a user to navigate forward or backward in the text, skipping over unselected sentences and presenting the next selected sentence.
38. The method of claim 4, wherein the method provides a review mode that allows forward and backward navigation in the text, skipping over unselected sentences and presenting the next selected sentence to the user.
39. The method of claim 4, wherein the method provides a review mode that allows navigation in the text by one of the following: forward navigation skipping over unselected sentences to present the next selected sentence; backward navigation skipping over unselected sentences to present the previous selected sentence; forward or backward navigation to present the next or previous sentence selected by other users; and any combination of the above; said navigation being achieved through user interaction selected from the group consisting of: swipe gestures, keyboard shortcuts, voice commands, mouse clicks, touch screen clicks, and programmable hardware buttons.
40. The method of claim 4, wherein the method provides a review mode that allows navigation in the text based on information selected from the group consisting of: keyword inclusion, semantic relevance, user-specified query, importance, user selection, user marking, other user selection, other user or multiple user marking, multiple user selection, user annotation; wherein navigation allows forward skipping over unselected sentences to present the next selected sentence, or backward skipping over unselected sentences to present the previous selected sentence; navigation involves automatic control or user interaction.
41. The method of claim 4, wherein the method supports annotating text at multiple annotation levels or categories.
42. The method of claim 4, wherein the method automatically adjusts the presentation rate of a sentence or paragraph based on an automatic assessment of its importance.
43. The method of claim 4, wherein the method automatically adjusts the presentation rate of a sentence or paragraph based on an automatic estimate of its complexity.
44. The method of claim 4, wherein the method automatically determines content similar to previously presented to the user.
45. The method of claim 4, wherein the method automatically determines content similar to previously presented to the user and refrains from presenting that content.
46. The method of claim 4, wherein the method automatically determines content selected based on a user query and presents that content.
47. The method of claim 4, wherein the method calculates and displays the estimated remaining time to present a rewritten version of content based on the remaining length of the rewritten version content.
48. The method of claim 4, which supports a multi-person mode that allows a user to interact with content while another user is interacting with the content and makes the user visible to the other user as an indicator of the user's position in the content.
49. The method of claim 4, wherein the method supports a multi-user mode that allows a user to interact with another user's content as it is being interacted with, and enables the user to see the other user's content presentation progress (e.g., reading speed or amount of content presented).
50. The method of claim 4, wherein the method supports a multi-user mode that allows a user to interact with another user's content as it is being interacted with, and enables the user to see notes or indications of selected content made by the other user.
51. The method of claim 4, wherein the content elements include mixed language text elements.
52. The method of claim 4, wherein the content elements include synthetic mixed language text elements generated by software.