Page content annotation method and device
By displaying annotation layers on the page and utilizing position mapping to receive user input, the problem of poor universality of annotation tools for different file formats is solved, enabling flexible annotation of page content.
Patent Information
- Application Number
- CN202610235518.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-02-27
- Publication Date
- 2026-05-19
AI Technical Summary
In existing technologies, different file formats require specialized annotation tools, resulting in poor annotation versatility and an inability to be flexibly applied to various page contents.
By displaying an annotation layer on the page and utilizing the positional mapping relationship of the annotation layer to receive user input, the annotation is decoupled from the page content, and multiple formats of page content annotations are supported.
It improves the flexibility and versatility of annotations, enabling annotations to be made on page content regardless of page format, thus enhancing the flexibility and consistency of annotations.
Smart Images

Figure CN122065783A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of electronic equipment technology, specifically relating to a method and apparatus for annotating page content. Background Technology
[0002] With the development of terminal technology, electronic devices are becoming increasingly feature-rich. For example, electronic devices can annotate the content of documents, images, and Portable Document Format (PDF) files.
[0003] Specifically, electronic devices can annotate Word documents using document applications such as Office or WPS; or they can annotate PDF files using PDF editors. However, because different file formats require specialized annotation tools, the universality of document annotation is limited. Summary of the Invention
[0004] The purpose of this application is to provide a method and apparatus for annotating page content, which can improve the flexibility and versatility of annotating page content.
[0005] In a first aspect, embodiments of this application provide a method for annotating page content. The method includes: receiving a first input to a first page; in response to the first input, displaying an annotation layer on the first page, wherein each position of the annotation layer has a mapping relationship with a position on the first page; receiving a second input to a first region in the annotation layer; and in response to the second input, displaying a first batch of annotations in the annotation layer based on the input information of the second input, wherein the first batch of annotations are annotations on the page content corresponding to the first region on the first page.
[0006] Secondly, embodiments of this application provide a page content annotation device, the device comprising: a receiving module and a display module; the receiving module is configured to receive a first input to a first page; the display module is configured to display an annotation layer on the first page in response to the first input received by the receiving module, wherein each position of the annotation layer has a mapping relationship with a position of the first page; the receiving module is further configured to receive a second input to a first area in the annotation layer; the display module is further configured to display a first batch of annotations in the annotation layer based on the input information of the second input received by the receiving module, wherein the first batch of annotations are annotations on the page content corresponding to the first area in the first page.
[0007] Thirdly, embodiments of this application provide an electronic device including a processor and a memory, wherein the memory stores programs or instructions executable on the processor, and the programs or instructions, when executed by the processor, implement the steps of the method described in the first aspect.
[0008] Fourthly, embodiments of this application provide a readable storage medium on which a program or instructions are stored, which, when executed by a processor, implement the steps of the method described in the first aspect.
[0009] Fifthly, embodiments of this application provide a chip, the chip including a processor and a communication interface, the communication interface being coupled to the processor, the processor being used to run programs or instructions to implement the method as described in the first aspect.
[0010] In a sixth aspect, embodiments of this application provide a computer program product stored in a storage medium, which is executed by at least one processor to implement the method described in the first aspect.
[0011] In this embodiment, a first input to a first page can be received; in response to the first input, an annotation layer is displayed on the first page, where each position of the annotation layer is mapped to a position on the first page; a second input to a first area in the annotation layer is received; in response to the second input, based on the input information of the second input, a first batch of annotations is displayed in the annotation layer, where the first batch of annotations are annotations on the page content corresponding to the first area on the first page. In this solution, when a user wants to annotate the content on a page (such as the first page), since the user can trigger the display of the annotation layer on the first page with a mapping relationship to a position on the first page through the first input to the first page, and can indirectly select the page content on the first page through the second input in the annotation layer and display the annotation corresponding to the page content in the annotation layer; therefore, the annotation and the page content can be decoupled, so that no matter what format the first page is, the page content can be annotated through the annotation layer, thereby improving the flexibility and versatility of annotation. Attached Figure Description
[0012] Figure 1 This is a flowchart illustrating the page content annotation method provided in the embodiments of this application;
[0013] Figure 2 This is a schematic diagram of an interface for a page content annotation method provided in an embodiment of this application;
[0014] Figure 3A This is a schematic diagram of an interface for a page content annotation method provided in an embodiment of this application;
[0015] Figure 3B This is a schematic diagram of an interface for a page content annotation method provided in an embodiment of this application;
[0016] Figure 3C This is a schematic diagram of an interface for a page content annotation method provided in an embodiment of this application;
[0017] Figure 4 This is a schematic diagram of an interface for a page content annotation method provided in an embodiment of this application;
[0018] Figure 5 This is a schematic diagram of an interface for a page content annotation method provided in an embodiment of this application;
[0019] Figure 6 This is a schematic diagram of an interface for a page content annotation method provided in an embodiment of this application;
[0020] Figure 7 This is a schematic diagram of an interface for a page content annotation method provided in an embodiment of this application;
[0021] Figure 8 This is a schematic diagram of an interface for a page content annotation method provided in an embodiment of this application;
[0022] Figure 9 This is a schematic diagram of the structure of the page content annotation device provided in the embodiments of this application;
[0023] Figure 10 This is one of the structural schematic diagrams of the electronic device provided in the embodiments of this application;
[0024] Figure 11 This is the second schematic diagram of the structure of the electronic device provided in the embodiments of this application. Detailed Implementation
[0025] The technical solutions of the embodiments of this application will be clearly described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application are within the scope of protection of this application.
[0026] The terms "first," "second," etc., used in the specification and claims of this application are used to distinguish similar objects and not to describe a specific order or sequence. It should be understood that such use of data can be interchanged where appropriate so that embodiments of this application can be implemented in orders other than those illustrated or described herein, and the objects distinguished by "first," "second," etc., are generally of the same class and the number of objects is not limited; for example, a first object can be one or more. Furthermore, in the specification and claims, "and / or" indicates at least one of the connected objects, and the character " / " generally indicates that the preceding and following objects are in an "or" relationship.
[0027] The terms "at least one," "at least one of," etc., used in the specification and claims of this application refer to any one, any two, or a combination of two or more of the included items. For example, at least one of a, b, and c can mean: "a," "b," "c," "a and b," "a and c," "b and c," and "a, b, and c," where a, b, and c can be single or multiple. Similarly, "at least two" refers to two or more items, and its meaning is similar to that of "at least one."
[0028] The following is an explanation of the nouns or terms used in this application.
[0029] 1. Multi-task annotation: This typically refers to a workflow in collaborative documents or project management tools where annotation functionality is used to create, assign, and track multiple independent tasks. Multi-task annotation task-based and process-orientedly transforms annotation functionality, making it an efficient tool for managing multiple to-do items in team collaboration. Specifically, multi-task annotation can achieve the following:
[0030] (1) Task assignment: In tools that support new-style annotations, such as Word, users can @ a colleague in the annotation and check the "Assign to" option to formally convert the annotation into a task assigned to a specific person.
[0031] (2) Independent task tracking: Each annotation corresponds to an independent discussion line for the task to be done. Relevant personnel can reply and update the status. All communication records are attached to the annotation to avoid information confusion.
[0032] Understandably, multi-task annotation can currently be applied to various scenarios such as document review, project management, and data review. For example, an editor's multiple revisions to a manuscript can be assigned to different personnel, such as the author, designer, and legal counsel, for processing.
[0033] The page content annotation method and apparatus provided in this application will be described in detail below with reference to the accompanying drawings, through specific embodiments and application scenarios.
[0034] The page content annotation method provided in this application can be applied to scenarios where page content needs to be modified. For example, it can be applied to scenarios where long pages or long images need to be annotated.
[0035] The page content annotation method provided in this application is executed by a page content annotation device, which can be an electronic device, or a functional module or entity within an electronic device. This application does not limit the specific implementation of this device. The following will use a page content annotation device as an example to illustrate the page content annotation method provided in this application.
[0036] This application provides a method for annotating page content, such as... Figure 1 As shown, the page content annotation method provided in this application embodiment may include the following steps 101 to 104:
[0037] Step 101: The page content annotation device receives the user's first input on the first page.
[0038] Step 102: The page content annotation device responds to the first input and displays the annotation layer on the first page.
[0039] Each position in the aforementioned annotation layer has a mapping relationship with a position on the first page.
[0040] In some embodiments of this application, the annotation layer may include a content-mapped area and a non-mapped area, wherein the size of the content-mapped area is the same as the size of the content display area of the first page, and the content-mapped area completely overlaps with the content display area of the first page. Specifically, "each position of the annotation layer has a mapping relationship with a position on the first page" can mean that each position of the content-mapped area has a mapping relationship with a position in the content display area of the first page.
[0041] The content mapping area can be used for at least one of the following:
[0042] Trigger selection of page content;
[0043] The identifier for rendering the page content selected by the user, such as... Figure 2 Identifier 22 in the middle;
[0044] Render annotations, such as underlines and highlighted symbols;
[0045] The non-mapped area may include the global comment menu, comment bar, etc.
[0046] In some embodiments of this application, the first page can be any possible page such as the display page of the first document, a webpage, the interface of an application, or an image display page.
[0047] In some embodiments of this application, the first document can be any possible document such as a Word document, an Excel document (also known as a spreadsheet), a PowerPoint document (also known as a slideshow), or a PDF document. The specific document can be determined according to actual usage requirements, and this application does not limit the specific document.
[0048] In some embodiments of this application, the above-mentioned application may include, but is not limited to, any of the following: shopping applications, video applications, map applications, chat applications, novel applications, and any application installed on an electronic device.
[0049] It should be noted that "application" and "application application" have the same meaning and can be used interchangeably. For example, "video application" and "video application" mean the same thing, both referring to applications used to play videos.
[0050] In some embodiments of this application, after displaying the annotation layer, the page content annotation device can establish a positional mapping relationship between the first page and the annotation layer based on the page content of the first page.
[0051] For example, the page content annotation device can obtain the global coordinates of the first page and establish a positional mapping relationship between these global coordinates and the annotation layer. Thus, when a user inputs into a certain area of the annotation layer, the page content annotation device can determine, based on this positional mapping relationship, what the user wants to input on the page content corresponding to that area on the first page, such as selecting the page content and adding annotations to it.
[0052] As can be understood, the annotation layer is similar to a transparent or semi-transparent vector mask overlaid on the first page.
[0053] In some embodiments of this application, the annotation layer can also be called the annotation panel layer. It is used to annotate the page content in the first page by means of vector overlay, thereby decoupling the page content and the annotation content. In this way, it is possible to annotate the page content of any page.
[0054] It should be noted that, in this embodiment of the application, the aforementioned annotation layer can be a global annotation layer. In other words, this embodiment of the application provides a global annotation function, so that when any page is displayed, the annotation layer can be invoked by input, thereby enabling annotation of any page through the annotation layer.
[0055] In some embodiments of this application, the page content annotation method provided in this application can be used for annotation of document content, images, videos, web pages, application interfaces, etc.
[0056] For example, an Application Programming Interface (API) with global annotation capabilities can be made available for third-party applications to call, thereby enabling annotations not only on documents but also on videos, and on shopping applications such as annotating product images.
[0057] In some embodiments of this application, the first page can be a content display page for a long file or a long image. It should be noted that long files and long images are defined as files or images that require batches to display their entire content at the user's visible display resolution.
[0058] For example, an e-novel is called a long file.
[0059] For example, a large-sized architectural design CAD file is called a long file.
[0060] For example, a design draft with a height of 3000px is called a long image.
[0061] For example, TV series and movies can also be referred to as long files.
[0062] In some embodiments of this application, when the first page is a content display page for a long file or a long image, the long image / file to be annotated can be divided into blocks according to a preset height ratio or semantic boundaries, and a block index can be set for each block. Furthermore, a mapping relationship can be established between the block index and the screen coordinates of the electronic device, so that the content displayed on the first page is updated sequentially according to the block index, such as displaying one block at a time.
[0063] For example, the following two scenarios illustrate the block-based approach.
[0064] Scenario 1: Dividing a long image into blocks. Consider a design draft with a height of 3000 pixels (px). The long image can be divided into 4 blocks:
[0065] Block 1: 0-800px, referred to as the top area of the design draft;
[0066] Block 2: 800-1600px, referred to as the central area of the design draft;
[0067] Block 3: 1600-2400px, referred to as the lower middle area of the design draft;
[0068] Block 4: 2400-3000px, is called the bottom area of the design draft.
[0069] Scenario 2: Dividing a long document into blocks, such as annotating a 50-page PDF report. If the display window for the PDF report has a height of 1080px, divide it into 25 blocks of 1080px each, as follows:
[0070] Block 1: Pages 1-2;
[0071] Block 2: Pages 3-4;
[0072] Block 3: Pages 5-6;
[0073] ...
[0074] Block n: Page (2n-1)-2n;
[0075] ...
[0076] Block 25: Pages 49-50.
[0077] It's important to note that the purpose of chunking long files or images is to manage large files (such as long documents or images), for example, by dividing long documents into logical blocks based on a fixed height (such as screen height or display window height) or semantic boundaries. Each block has a unique block ID and records the block's position range in the original text (e.g., Y-coordinate range). It's crucial to emphasize that chunking does not disrupt the continuity of the document or image; it's merely a logical division for efficient rendering and indexing.
[0078] In some embodiments of this application, the aforementioned first input includes, but is not limited to: touch input of the user onto the first page using a touch device such as a finger or stylus, or voice commands input by the user, or specific gestures input by the user, or other feasible inputs. The specific input can be determined according to actual usage needs, and this application does not limit it. Specifically, the specific gestures in this application embodiment can be any one of a single-click gesture, a swipe gesture, a drag gesture, a pressure-recognition gesture, a long-press gesture, an area-change gesture, a double-press gesture, or a double-tap gesture; the click input in this application embodiment can be a single-click input, a double-tap input, or any number of clicks, and can also be a long-press input or a short-press input.
[0079] For example, users can long-press on the first page.
[0080] For example, users can use voice input to say "Open annotation function", "Start annotation function", or "I want to add annotations".
[0081] Step 103: The page content annotation device receives the user's second input on the first area of the annotation layer.
[0082] Step 104: The page content annotation device responds to the second input and displays the first batch of annotations in the annotation layer based on the input information of the second input.
[0083] The first batch of annotations refers to the annotations on the page content corresponding to the first area on the first page.
[0084] In some embodiments of this application, the first batch of annotations can be format markup annotations or content annotation annotations.
[0085] Formatting markup comments may include, but are not limited to, at least one of the following:
[0086] Underline annotation: Adds a straight line below the text;
[0087] Wavy line annotation: Add a wavy line below the text;
[0088] Highlight / highlighter annotation: Use a semi-transparent color to cover the text (such as yellow highlight);
[0089] Strikethrough annotation: Adds a horizontal line in the middle of the text to indicate deletion;
[0090] Insert line / caret annotation: Insert a mark into the text to indicate that content needs to be added;
[0091] Smudge / Cover Comments: Cover text with a solid color to hide sensitive information.
[0092] Content annotations may include, but are not limited to, at least one of the following:
[0093] Text annotations;
[0094] Voice annotation;
[0095] Image annotation;
[0096] Video annotation;
[0097] Link annotation: This refers to annotating a link.
[0098] In some embodiments of this application, the first batch of annotations may be handwritten annotations, such as hand-drawn lines, patterns, graphics, or handwritten words by the user, etc., and this application is not limited to these.
[0099] In some embodiments of this application, the input information of the first input may include at least one of the following: input area, input trajectory, input position, input duration, input direction, etc. The input position may include at least one of the input start position and the input end position.
[0100] In some embodiments of this application, when the first annotation is a content annotation, the first input may include input for selecting page content and input for entering annotation content.
[0101] In some embodiments of this application, since each position in the annotation layer is mapped to a position on the first page, the user's second input to the first area can be passed through to the first page, which is equivalent to the user's input on the first page.
[0102] In some embodiments of this application, when the first annotation is a content annotation, the second input may include input of selected page content and input of annotation content.
[0103] In some embodiments of this application, the annotation layer can be used to render (or display) annotations added by the user to the page content on the first page. This decouples the page content from the corresponding annotations.
[0104] Specifically, annotations added to page content are not directly stored on each page of the original text (such as the first page), but rather in an annotation layer independent of the first page. This annotation layer is a global, vectorized layer that overlays the entire first page. The annotations in the annotation layer and the page content on the first page can be linked one-to-one through a positional mapping relationship between the annotation layer and the first page, allowing for easy reference and backtracking. For example, the positional mapping relationship reveals which page content within the first page each annotation in the annotation layer refers to.
[0105] More importantly, because there is a positional mapping relationship between the annotation layer and the first page, for each annotation in the annotation layer, the page content annotation device can know the position information of the page content (or quoted text) corresponding to each annotation in the first page according to this positional mapping relationship. This ensures that the citation relationship between the annotation and the quoted text is not lost after exporting the annotations corresponding to the first page. Specifically, in this application, when exporting the annotations corresponding to the first page, the annotations in the annotation layer corresponding to the first page are exported in vector form. For example, not only is the annotation information of the annotations exported (such as the annotation content of text annotations, the line format of line annotations, etc.), but also the index relationship between each annotation and the page content in the first page is exported. Therefore, based on the index relationship between the annotation and the page content, it can be known that a certain annotation is an annotation of the content of page a, paragraph b in the first page.
[0106] In some embodiments of this application, the first batch of annotations can be stored and displayed as vector graphics. These vector graphics may include, but are not limited to, at least one of the following: handwriting, shape, text content, and annotation position.
[0107] In some embodiments of this application, the first batch of annotations is independent of the content layer, such as the first page, and supports cross-block or page-connected annotations. Specifically, since the annotations are rendered and displayed in the annotation layer, they are not limited by the layout of the page content in the first page, such as by the pagination of the PDF document. For example, content in two adjacent pages of a PDF can be selected at once, and a text annotation can be added to that content.
[0108] The following is an exemplary description of the implementation process of cross-block (or cross-page) continuous annotation.
[0109] For example, cross-block (or cross-page) comments can be implemented through the following steps:
[0110] Step 1, Input Capture: When the user selects page content (such as drawing an underline), the page content annotation device can capture the coordinates of the handwriting in real time according to the first mapping relationship. It can be understood that these coordinates are based on the absolute coordinates of the entire file, rather than relative to the current screen or the current block.
[0111] Step 2, Annotation Storage: All coordinate points selected and entered by the user are saved as an annotation object (a vector object, such as a vector polyline or vector annotation box). This annotation object has a unique annotation identifier and records the global coordinates corresponding to the annotation object in the document, serving as the coordinate range of the annotation object. In essence, this coordinate range directly indicates the page content referenced by this annotation.
[0112] Chunk Indexing: The system calculates which blocks or pages an annotation object spans based on its coordinate range and establishes a relationship between the annotation object and these blocks or pages. For example, there might be handwritten notes in blocks 2 and 3. The system also saves the correspondence between block indices and annotation indices. Thus, when a block needs to be rendered later, in addition to rendering the original text content corresponding to the block, the system will also query the annotation layer (or the annotation file exported from the annotation layer) for annotation objects related to that block and draw the corresponding portions.
[0113] Rendering: During rendering, for each block, the system draws the corresponding original text content and the comments belonging to that block from the comment file. Because comment objects are continuous, even if they span multiple blocks, only the portion of the comment object within that block is drawn. As the user scrolls, the blocks are rendered sequentially, thus visually creating a continuous comment, such as a continuous underline extending from page 3 to page 4.
[0114] This application achieves continuous handwriting by making the annotation layer independent of the page and allowing annotation objects to span multiple blocks (which may belong to the same page or different pages). Meanwhile, block management is used to accommodate smooth rendering of large documents (only visible blocks are rendered), but the annotation objects are globally continuous.
[0115] For example, suppose a PDF document has a page height of 1000 units, and we divide it into blocks of 500 units each (two blocks per page). The user draws an underline starting at the bottom of page 1 (coordinate Y=900) and ending at the top of page 2 (coordinate Y=100). Traditionally, the underline on page 1 (Y from 900 to 1000) would be a comment, and the underline on page 2 (Y from 0 to 100) would be another underline comment. In this application, the entire underline drawn by the user is stored as a comment object, with its coordinate sequence covering the range from 900 to 1100 (because 100 on page 2 corresponds to the global coordinate 1100). This comment object is associated with block 2 (the bottom half of page 1) and block 3 (the top half of page 2). When rendering block 2, the portion of the line from 900 to 1000 is drawn; when rendering block 3, the portion from 1000 to 1100 is drawn. Because the two blocks are displayed continuously as they scroll, what the user sees is a continuous underline.
[0116] Therefore, it can be seen that page segmentation in this application does not affect the continuity of annotations or page content, because annotation objects exist independently of blocks; blocks are only used for organizing rendering and indexing. In contrast, traditional PDFs are page-based, with annotations bound to pages; crossing pages results in two separate annotation objects, thus creating discontinuity.
[0117] In other words, this application decouples the annotation layer from the content layer and uses the global coordinates of the first page to store annotations, enabling annotations to span multiple blocks (pages) and thus achieving cross-block continuous writing.
[0118] For ease of description, the "page content corresponding to the first area in the first page" can be simply referred to as page content one; and the positional mapping relationship between the annotation layer and the first page can be simply referred to as the first positional mapping relationship.
[0119] In some embodiments of this application, after the page content annotation device displays the first batch of annotations in the annotation layer, it can obtain the position information of page content one in the first page, hereinafter referred to as the position information of page content one, according to the first position mapping relationship. In this way, the page content annotation device can establish the association between the first batch of annotations and the position information of page content one, and obtain the annotation index between the first batch of annotations and page content one.
[0120] In some embodiments of this application, the annotation layer 21 may include multiple annotation controls, each annotation control may correspond to an annotation format, and each annotation format may include any of the following: handwritten annotations, content annotations, formatting mark annotations, etc. For descriptions of handwritten annotations, content annotations, and formatting mark annotations, please refer to the relevant descriptions of handwritten annotations, content annotations, and formatting mark annotations in the above embodiments. To avoid repetition, they will not be repeated here.
[0121] For example, when a foldable electronic device displays the first page, the user can long-press on the first page to access other devices. Figure 2 As shown, the foldable electronic device can display an annotation layer 21 on the first page 20. The annotation layer 21 may include a text annotation control 24 and a handwritten annotation control 25. The text annotation control 24 is used to trigger the addition of content annotations, i.e., annotations with annotation boxes. The handwritten annotation control 25 is used to trigger handwritten annotations. Before performing the second input, the user can input on the text annotation control or the handwritten annotation control as needed to enter the text annotation mode or the handwritten annotation mode.
[0122] In some embodiments of this application, the page content annotation device can create a structured metadata anchor point for each annotation (including voice or handwriting), containing information such as page identifier, block ID (optional), precise coordinates (local and global), timestamp, and semantic summary. This forms the basis for bidirectional indexing between annotations and the original text. It is understood that the page identifier, block identifier, and precise coordinates are all used to define the page content corresponding to the annotation. That is, it records multiple levels of positioning information of the page content corresponding to the annotation, thereby enabling a reliable association between annotations and their corresponding page content, and preventing the loss of contextual association between annotations and the original text.
[0123] In some embodiments of this application, the aforementioned second input includes, but is not limited to: touch input by the user on the first area of the annotation layer using a touch device such as a finger or stylus, or voice commands input by the user, or specific gestures input by the user, or other feasible inputs. The specific input can be determined according to actual usage needs, and this application embodiment does not limit it. Specifically, the specific gestures in this application embodiment can be any one of a single-click gesture, a swipe gesture, a drag gesture, a pressure-recognition gesture, a long-press gesture, an area-change gesture, a double-press gesture, or a double-tap gesture; the click input in this application embodiment can be a single-click input, a double-tap input, or any number of clicks, and can also be a long-press input or a short-press input.
[0124] For example, a user can draw a circle on the first area in the annotation layer.
[0125] In some embodiments of this application, step 103 can be implemented by steps 103A to 103C, and step 104 can be implemented by step 104A.
[0126] Step 103A: The page content annotation device receives a screenshot input from the user for the first area in the annotation layer.
[0127] Step 103B: The page content annotation device responds to the screenshot input, takes a screenshot of the page content corresponding to the first area on the first page, and displays the screenshot image.
[0128] Step 103C: The page content annotation device receives the user's first selection input for the target image area in the screenshot image.
[0129] Step 104A: The page content annotation device responds to the first selected input and displays the first batch of annotations in the annotation layer based on the input information of the first selected input.
[0130] Among them, the first batch of annotations mentioned above are annotations on the page content corresponding to the target image area.
[0131] It is understandable that the page content annotation device can display the first batch of annotations on the screenshot image, that is, visually, the first batch of annotations is located above the screenshot image.
[0132] In some embodiments of this application, the screenshot image may be located below the annotation layer.
[0133] In some embodiments of this application, both the screenshot image and the first batch of annotations are displayed in the annotation layer, with the screenshot image located above the first batch of annotations. It can be understood that the annotation layer is a vector layer, so it can be considered that the annotation layer can have multiple layers, with one layer displaying the screenshot image and another layer displaying the annotations.
[0134] In some embodiments of this application, the page content annotation device can magnify the screenshot image. The magnification factor of the screenshot image is determined by user input, or it can be a default magnification factor.
[0135] In some embodiments of this application, such as Figure 2 As shown, the annotation layer may also include a screenshot annotation control 26. Before the user performs screenshot input on the first area, the user can input on the screenshot annotation control 26 to trigger the entry into the screenshot annotation mode. For example, a mask can be displayed. Then the user performs screenshot input on the first area to trigger the page content annotation device to take a screenshot of the page content corresponding to the first area on the first page and obtain a screenshot image.
[0136] In some embodiments of this application, the page content annotation device can use the screenshot image as a sub-canvas or sub-page to perform detailed annotations on the original text content corresponding to the screenshot image.
[0137] For example, such as Figure 3A As shown, the folding device displays an annotation layer 21 on the first page 20. The user draws a rectangle 41 on the first area of the annotation layer 21, which is a screenshot input. The page content annotation device can then capture a screenshot of the page content corresponding to the rectangle 41 on the first page 20, and as shown... Figure 3B As shown, the page content annotation device can magnify and display the screenshot image 42 on the first page 20. This allows the user to continue inputting annotations on the annotation layer, selecting details within the screenshot image 42, and providing more detailed annotations. It should be noted that after the user selects content in the screenshot image 42 and adds annotations, the page content annotation device can establish a relationship between the annotation, the screenshot image 42, and the corresponding original text content on the first page 20, based on the position information of the screenshot image 42 within the first page 20. Thus, both the annotation and the screenshot image can serve as anchor points for the original text content, such as anchoring to the original text content on the first page through the annotation or screenshot image.
[0138] In some embodiments of this application, after the user completes annotations on the screenshot image, such as Figure 3C As shown, the page content annotation device can cancel the display of the screenshot image and display a thumbnail 44 of the screenshot image in the annotation bar area 43 corresponding to the annotation layer 21, and display a guide mark 45 between the first area and the thumbnail 44. Optionally, the page content annotation device can cancel the display of the screenshot image after the user performs confirmation input.
[0139] In some embodiments of this application, for any annotations added by the user to a screenshot image, such as the first batch of annotations mentioned above, the page content annotation device can record a bidirectional index entry. Each bidirectional index entry may include: the association between the first batch of annotations and the screenshot image, and the association between the first batch of annotations and the location information of the page content corresponding to the first batch of annotations (such as the page content corresponding to the screenshot image in the first page). The location information of the page content corresponding to the first batch of annotations may include the following information:
[0140] The first batch of annotations corresponds to the page identifier, such as the identifier for the first page;
[0141] The block identifier of the page content corresponding to the first batch of annotations;
[0142] The first batch of annotations corresponds to the location information of the page content within its block (i.e., its local coordinates within the block).
[0143] The first batch of annotations corresponds to the position information (i.e., global coordinates) of the page content on the first page.
[0144] The scaling ratio of the page content corresponding to the first batch of annotations is represented by the scaling ratio of the screenshot image.
[0145] In this way, clicking the bidirectional index entry corresponding to the first batch of annotations in the final annotation directory corresponding to the first page or the exported annotation file corresponding to the first page will jump back to the corresponding position in the original file. For example, clicking on a screenshot image will jump back to the page content corresponding to the screenshot image in the first page; or, for example, when displaying annotations in the annotation file, clicking on the first batch of annotations in the annotation file will trigger the display of the page content corresponding to the first batch of annotations or the screenshot image in the first page.
[0146] Accordingly, after exporting the annotation file corresponding to the first page, when the first page is displayed again, the page content annotation device can synchronously render the annotations corresponding to the page content based on the annotation file during the process of updating the page content of the first page.
[0147] For example, in scenario 1 above, i.e., annotating long images, the location information of the page content corresponding to the screenshot image is shown in Table 1:
[0148] Table 1
[0149]
[0150] Referring to Table 1 above, after outputting the annotation index directory (or annotation file) corresponding to the long image, the user can trigger the page content annotation device by inputting the annotation entries corresponding to the first batch of annotations in the annotation index directory. Based on the position information shown in Table 1, the long image is scrolled to Y=1100px, i.e., block 2 is displayed. Based on the local coordinates (150, 300) of the page content corresponding to the first batch of annotations, the image area in block 2 starting from point (150, 300) is magnified by 2 times and highlighted, i.e., jumping back to the original text through the bidirectional index entries.
[0151] For example, in scenario 2 above, i.e., long annotated documents, such as PDF documents, the location information of the page content corresponding to the screenshot image is shown in Table 2:
[0152] Table 2
[0153]
[0154] Using the location information shown in Table 2, after outputting the annotation index (or annotation file) corresponding to the PDF document, the user can trigger the page content annotation device by inputting the annotation entry corresponding to the first annotation in the annotation index. Based on the location information shown in Table 2, the PDF document is updated to jump to page 23, and paragraph 187 is located, scaled by 1.25 times, and highlighted. This allows for jumping back to the original text via bidirectional index entries.
[0155] The annotation method provided in this application embodiment can also link and integrate scattered annotations corresponding to the first page into the annotation file corresponding to the first page.
[0156] For example, an employee sends a PDF document to their supervisor. The supervisor accesses the annotation layer on their computer, uses it to extract a portion of the PDF document, and adds annotations to the screenshot. The supervisor can then use the pinning function of the annotation layer to send the screenshot, its annotations, and its bidirectional index back to the employee. The employee, using their device (device 0), can then add the screenshot, its annotations, and the bidirectional index to the corresponding annotation file in the PDF document. Furthermore, if the annotation file for the PDF doesn't already exist on device 0, device 0 can generate it using the annotation layer.
[0157] In some embodiments of this application, after entering the screenshot annotation mode, it is possible to support image capture on the first page using a rectangle or lasso, or to capture an image by drawing a circle with the user's finger on the first page.
[0158] In some embodiments of this application, the screenshot input includes, but is not limited to: touch input of the user on the first page using a touch device such as a finger or stylus, or voice commands input by the user, or specific gestures input by the user, or other feasible inputs. The specific input can be determined according to actual usage needs, and this application does not limit it. Specifically, the specific gestures in this application embodiment can be any one of a single-click gesture, a swipe gesture, a drag gesture, a pressure-recognition gesture, a long-press gesture, an area-change gesture, a double-press gesture, or a double-tap gesture; the click input in this application embodiment can be a single-click input, a double-tap input, or any number of clicks, and can also be a long-press input or a short-press input.
[0159] In some embodiments of this application, the aforementioned first selected input includes, but is not limited to: touch input by the user on the target screenshot area in the screenshot image using a touch device such as a finger or stylus, or a voice command input by the user, or a specific gesture input by the user, or other feasible inputs. The specific input can be determined according to actual usage needs, and this application embodiment does not limit it. Specifically, the specific gesture in this application embodiment can be any one of a single-click gesture, a swipe gesture, a drag gesture, a pressure-recognition gesture, a long-press gesture, an area-change gesture, a double-press gesture, or a double-tap gesture; the click input in this application embodiment can be a single-click input, a double-tap input, or any number of clicks, and can also be a long-press input or a short-press input.
[0160] For example, a user can draw a circle on a target image area.
[0161] Thus, since a screenshot input in the first area of the annotation layer can trigger a screenshot of the page content corresponding to the first area on the first page and display the screenshot image, users can use the screenshot image to make more detailed annotations on parts of the content on the first page, thereby further improving the flexibility and accuracy of annotations.
[0162] In some embodiments of this application, when the first batch of annotations includes handwritten or voice annotations, the position information of the first batch of annotations and the page content corresponding to the first batch of annotations, such as the start position information, end position information, or reference position information of the page content, can be associated. This enables backtracking and positioning between handwritten or voice annotations and the page content in the first page, thereby avoiding the loss of contextual association between the annotations and the original text in the page.
[0163] In some embodiments of this application, step 103 may include steps 103D to 103E.
[0164] Step 103D: The page content annotation device receives the user's second selection input for the first area in the annotation layer.
[0165] Step 103D: The page content annotation device responds to the second selected input and displays the annotation object corresponding to the first area in the annotation layer. The annotation object may include a voice control.
[0166] Step 103E: The page content annotation device receives voice input from the user to the voice control.
[0167] Step 104B: The page content annotation device responds to the voice input and displays the text information corresponding to the voice input information in the annotation object based on the voice input information.
[0168] In some embodiments of the present application, voice input is the input for voice annotations. For example, the voice content of the voice annotation input by the user can be: "The technical principle needs to be supplemented."
[0169] In some embodiments of the present application, the annotation object may further include a voice playback identifier, which is used to trigger the playback of the voice annotation input by the user.
[0170] In some embodiments of the present application, the above-mentioned annotation object is used to annotate the page content corresponding to the first area on the first page. Of course, the annotation object can also indicate that the page content corresponding to the first area on the first page is selected.
[0171] In some embodiments of the present application, the above-mentioned annotation object includes an annotation box and an annotation guiding identifier, which is used to identify the corresponding relationship between the annotation box and the page content corresponding to the first area.
[0172] For example, as Figure 2 shown, the folding device displays the first page 20, and a marking panel layer 21 is displayed on the first page 20. The annotation layer 21 includes 3 annotation objects, and each annotation object includes an annotation guiding identifier 22 and an annotation box 23. It can be seen that the annotation guiding identifier 22 can identify the corresponding relationship between an annotation box and the page content selected by the user, such as "all alone, with only one's own shadow for company", and the text corresponding to the voice annotation input by the user can be included in each annotation box 23.
[0173] In some embodiments of the present application, the annotation guiding identifier can be a guiding line or a guiding arrow pointing from the first area to the annotation box.
[0174] In some embodiments of the present application, during the process of inputting a voice annotation, the page content annotation device can transcribe the voice annotation in real time and display the text content or literal content corresponding to the voice annotation in the annotation box.
[0175] For example, as Figure 4 shown, the annotation box 46 includes a voice control 47, and the user can input a voice annotation through the voice control. After the user inputs a voice annotation, the page content annotation device can display the text content corresponding to the voice annotation in the annotation box 46.
[0176] In some embodiments of the present application, the page content annotation device can default to display a voice control in each annotation box, or the user can trigger the display of a voice control in a specific annotation box through input; or, a voice identifier can also be provided in the annotation menu of the annotation layer, and the user can trigger the display of a voice control in each of the already added annotation boxes through the input of the voice identifier.
[0177] It is understandable that if the page content annotation device can display a voice control by default in each annotation box, users can input voice annotations through the voice control; or they can bring up the text input method and directly input text content in the annotation box.
[0178] In some embodiments of this application, the page content annotation device can bind a location anchor point to the voice annotation.
[0179] Specifically, the page content annotation device can bind the position information of the page content corresponding to the first area on the first page (such as the starting position indicated by the guide line of the annotation object) with the identifier of the voice annotation. In this way, when the user displays the page content later, the voice playback identifier of the voice annotation can be displayed synchronously; or, by inputting the voice playback identifier of the voice annotation in the annotation index directory corresponding to the first page in the final exported output, the page content corresponding to the voice annotation on the first page can be displayed.
[0180] For example, the page content annotation device can bind the start and / or end coordinates of the page content corresponding to the first area to the annotation object.
[0181] In some embodiments of this application, the page content annotation device can bind the location information of the page content indicated by the annotation identifier to the voice annotation. For example, by establishing an association between the voice playback identifier and the location information of the page content corresponding to the first area in the first page, the context binding between the voice annotation and the quoted original text can be realized.
[0182] In some embodiments of this application, the page content annotation device can generate timestamps, summary titles and keywords for voice annotations, which are stored in the annotation index as semantic anchors. Clicking the anchor can play back the audio and highlight the corresponding area.
[0183] In some embodiments of this application, the aforementioned second selected input includes, but is not limited to: touch input by the user on the first area using a touch device such as a finger or stylus, or a voice command input by the user, or a specific gesture input by the user, or other feasible inputs. The specific input can be determined according to actual usage needs, and this application embodiment does not limit it. Specifically, the specific gesture in this application embodiment can be any one of a single-click gesture, a swipe gesture, a drag gesture, a pressure-recognition gesture, a long-press gesture, an area-change gesture, a double-press gesture, or a double-tap gesture; the click input in this application embodiment can be a single-click input, a double-tap input, or any number of clicks, and can also be a long-press input or a short-press input.
[0184] For example, a user can triple-click on the first area.
[0185] Thus, since users can trigger the display of annotation identifiers corresponding to the first area in the annotation layer by selecting the second area in the annotation layer, and these annotation identifiers include voice controls, it can be ensured that the voice annotations input by the user through the voice controls are bound to the page content indicated by the annotation identifiers. This allows for backtracking and locating of voice annotations on the first page through the annotation identifiers, thereby improving the flexibility and accuracy of annotations on page content.
[0186] In some embodiments of this application, such as Figure 2 As shown, the annotation layer 21 may include a global annotation menu, which may include at least one of the following: text annotation control 24, handwritten annotation control 25, screenshot annotation control 26, share control 27, save control 28, "pin" control 29, and close control 30.
[0187] Among them, the text annotation control 24 is used to trigger annotations of input content.
[0188] The handwritten annotation control 25 is used to trigger the input of handwritten annotations.
[0189] The screenshot annotation control 26 is used to trigger screenshot annotation, that is, to first take a screenshot of part of the page content in the first page, and then to annotate the obtained screenshot image.
[0190] The sharing control 27 is used to trigger the sharing of at least a portion of the annotations corresponding to the first page with a contact. Specifically, after the user inputs information into the sharing control 27, the page content annotation device can export the annotations in the annotation layer, generate an annotation file corresponding to the first page, and share the annotation file with the contact. It should be noted that when the first page is a webpage or an interface in an application, the annotation file carries the page link of the first page, the annotations in the annotation layer, and the index relationship between the annotations and the page content of the first page. This way, after receiving the annotation file, the contact can display the first page based on the page link in the annotation file and render the annotations according to the index relationship.
[0191] Save control 28 is used to trigger the export of the comments in the comment layer corresponding to the first page, so as to obtain the comment file corresponding to the first page.
[0192] The "pin" control 29 is used to trigger the saving of the first batch of session state information corresponding to the first page.
[0193] The close control 30 is used to trigger the closing of the annotation layer, such as canceling the display of the annotation layer on the first page.
[0194] In the page content annotation method provided in this application embodiment, when a user wants to annotate the content of a certain page (such as the first page), the user can trigger the display of an annotation layer on the first page that has a mapping relationship with the position on the first page through a first input on the first page, and can indirectly select the page content on the first page through a second input in the annotation layer and display the annotation corresponding to the page content in the annotation layer; therefore, the annotation and the page content can be decoupled, so that no matter what format the first page is, the page content can be annotated through the annotation layer, thereby improving the flexibility and versatility of annotation.
[0195] In some embodiments of this application, the annotation layer may include at least one annotation session identifier. After step 104, the page content annotation method provided in this application embodiment may further include steps 105 to 107.
[0196] Step 105: The page content annotation device receives the user's third input for the first annotation session identifier among the above at least one annotation session identifier.
[0197] Step 106: The page content annotation device responds to the third input and saves the first batch of annotation session state information corresponding to the first page.
[0198] The aforementioned first batch of annotation session state information is used to encapsulate the context state information of the annotation session corresponding to the first page.
[0199] Step 107: The page content annotation device updates the annotation layer and switches the first page to the page indicated by the first annotation session identifier (hereinafter referred to as the third page).
[0200] In some embodiments of this application, each annotation session identifier in the annotation layer can be used to indicate an annotation session corresponding to a page, and the annotation session corresponding to the page is used by the user to annotate the page in the page.
[0201] It is understandable that the purpose of saving the first batch of annotation session state information is to be able to reproduce the state of the annotation session corresponding to the first page based on the first batch of annotation session state information when the user re-annotates the page content of the first page.
[0202] Specifically, when the user switches back to the display window of the first page (e.g., by inputting the page identifier of the first page), the display progress of the first page and the annotation state of the annotation layer can be restored based on the first batch of annotation session state information. This allows for continued annotation on the first page while maintaining a consistent context between the annotations and the page content. In other words, by saving the first batch of annotation session state information, the context of the annotation session corresponding to the first page (such as scroll position, already annotated annotations, and the progress of selected but incomplete annotations) is not lost, ensuring seamless annotation continuation.
[0203] The "pin" feature allows users to switch between annotation sessions on different pages. Furthermore, when multiple annotation sessions are executed concurrently, each session can be "paused" and "resumed" seamlessly.
[0204] For example, a user is currently annotating content 3 on page 10 of a PDF document, but their supervisor sends a webpage link that needs review. The user can then pin the annotation session corresponding to the PDF document, open the webpage, and annotate the content on the webpage through the updated annotation layer. After completing their annotations on the webpage, the user can input the annotation session identifier corresponding to the PDF document displayed in the annotation layer to trigger the restoration of page 10 of the PDF document. The annotation layer will then render the already annotated content on page 10 and display the annotation object corresponding to content 3, which will be selected. The user can then continue to input annotations into the annotation object corresponding to content 3. This enables seamless and continuous annotation across annotation sessions.
[0205] In some embodiments of this application, updating the annotation layer may include canceling the display of annotations corresponding to the first page in the annotation layer and establishing a positional mapping relationship between the annotation layer and the third page.
[0206] In some embodiments of this application, the first batch of session status information may include the following:
[0207] Source file identifier, such as the page identifier of the first page;
[0208] The current view state information of the first page, such as the current scroll position (x, y) of the first page;
[0209] The current snapshot of the annotation layer;
[0210] The current selection status information indicates the annotation progress of the page content most recently selected by the user through the annotation layer. It includes data on ongoing but incomplete annotations associated with the currently selected page content. For example, this data could be unconfirmed text entered by the user in the annotation box. In other words, the current selection status information includes at least the currently selected page content, its position within the first page, and the operation data of the corresponding annotation object. It can be understood that the current selection status information for the annotation layer can be used to reactivate the annotation pair corresponding to the page content when the annotation session for the first page is resumed, allowing the user to continue annotating.
[0211] In some embodiments of this application, if the first page is divided into multiple blocks, the first batch of annotation session state information may further include: an active block identifier set. The active block identifier set includes identifiers of at least one block, which is the block currently being annotated. It is understood that there may be multiple blocks currently being annotated, as an annotation may span multiple blocks.
[0212] In some embodiments of this application, the aforementioned view state information includes at least information for determining the currently visible content area in the first page. For example, vertical and horizontal scroll offsets in long documents or images, zoom levels, and identifiers of currently active sections (optional).
[0213] Among them, the currently active block, or active block, refers to the block that is currently being annotated, or the block to which the currently displayed page content belongs.
[0214] In some embodiments of this application, the current snapshot of the above-mentioned annotation layer may include the following information:
[0215] The first page identifier, such as a document ID or the page's source application, is used to ensure that the source file or source image can be found.
[0216] The coordinates of the currently displayed content on the first page, such as the scroll position (x, y) and zoom level, can be accurate to the pixel. This coordinate information is key to restoring the annotation session state.
[0217] Annotation interaction information may include at least one of the following:
[0218] The selected area indicates which text (start and end character indices) or area (rectangle coordinates) the user has selected; incomplete operations, such as the coordinates of the last point of an arrow that is half-drawn; text entered in the text input interface but not yet typed into the corresponding comment box; or the position of the comment box where text is being entered in the comment bar, as well as the position of the page content corresponding to that comment box, etc.
[0219] The status of the annotation tool, the status of the currently used annotation tool, such as the user currently using the red pen to add handwritten annotations, or the user using the yellow highlight tool to make annotations.
[0220] It can be understood that the current snapshot of the annotation layer freezes the dynamic, active, and volatile "moment" on the screen into a static, storable, and structured data packet. At the moment (or before) when the user switches to an annotation session corresponding to a different page, the system automatically captures and temporarily stores this structured snapshot. When the user switches back, the system prioritizes reading the snapshot and uses the data in the snapshot to accurately reconstruct the previous annotation session state, such as pinpointing where an unfinished arrow should continue drawing. In this way, the user perceives that the annotation session corresponding to the first page has never been interrupted.
[0221] In some embodiments of this application, before switching from an annotation session corresponding to one page to an annotation session corresponding to another page, the page content annotation device can automatically save the annotation session status information of the previous annotation session, such as the first annotation session status information mentioned above. Alternatively, the page content annotation device can output a prompt message to indicate to the user whether it is necessary to save the information of the previous annotation session. Or, as... Figure 2 As shown, the annotation layer 21 includes a "pin" control 29, which can be used to pin the annotation session corresponding to the current page. Thus, if a user wants to pin the annotation session corresponding to the first page, they can first input into the pin control to trigger the saving of the first batch of annotation session state information, and then execute a third input to update the annotation layer and switch the first page to the page indicated by the first batch of annotation session identifiers, so that the user can annotate the page indicated by the first batch of annotation session identifiers through the annotation layer.
[0222] In some embodiments of this application, after saving the first batch of annotation session state information corresponding to the first page, the page content annotation device can display the annotation session identifier corresponding to the first page in the annotation layer, so that the user can trigger the page content annotation device to restore the session state of the annotation session corresponding to the first page by inputting the annotation session identifier.
[0223] For example, such as Figure 5 As shown, after the user clicks the "Pin" control 51 in the annotation menu, the pinned annotation sessions can be aggregated in the upper right corner of the screen by application, namely "Annotate for Application A" and "Annotate for Application C". At this time, the user can switch to the interface of another application to make annotations, and it is ensured that the session state of the annotation session corresponding to the page in Application A or Application C can be restored at any time. It can be understood that the first page mentioned above can be a page in Application A or Application C.
[0224] It's understandable that by providing a "pin" function to the annotation layer, it's possible to freely switch between annotation sessions corresponding to multiple pages while ensuring continuous annotation across all pages—meaning that after switching back, annotation can resume from the most recent annotation position. In other words, by "pinning" the annotation session, continuous annotation across pages can be achieved. If each page's annotation session is considered a single annotation task, then the "pin" function enables continuous and seamless switching between different annotation tasks during the processing of multiple annotation tasks.
[0225] For example, a "pin" control is provided in the annotation layer. By pinning the "pin" control, the following information can be recorded as a lightweight session: the source document ID, the current scroll position (x, y), the current active block set, the current annotation layer snapshot, and the current selection state information. This way, after annotating a page in another application using the annotation layer, the floating annotation layer can be quickly invoked again through the same lightweight session to continue continuous annotation of the page corresponding to that lightweight session, maintaining an unbroken annotation context.
[0226] For example, when annotating the content of a WPS document, you can pin the annotation session status information of the WPS document and then switch to annotating the pictures or web pages in the album to ensure that the annotation session corresponding to the WPS document can be resumed at any time.
[0227] In some embodiments of this application, the first page and the third page may be pages in the same application or pages in different applications.
[0228] For example, if the first page and the second page are pages in the same application, the first page is the content display page of PDF1, and the third page is the content display page of PDF2.
[0229] For example, taking the first page and the second page as pages in different applications, the first page is the content display page of PDF1, and the third page is a webpage.
[0230] It is understood that the above embodiment is illustrated by taking the third page having saved annotation session state information as an example. The above "update the annotation layer and switch the first page to the page indicated by the first annotation session identifier" can be: based on the annotation session state information corresponding to the third page, update the annotation layer and display the page content in the third page, that is, restore the most recent session state of the annotation session corresponding to the third page.
[0231] In practice, if a user wants to interrupt the annotation of the first page and annotate an unannotated page (such as page two), the user can first trigger the saving of the annotation session state information corresponding to the first page by inputting the "pin" control, and then open page two and call up the annotation layer to annotate page two through the annotation layer.
[0232] In some embodiments of this application, the aforementioned third input includes, but is not limited to: touch input by the user via a finger or stylus to the first batch of session identifiers, or voice commands input by the user, or specific gestures input by the user, or other feasible inputs. The specific input can be determined according to actual usage needs, and this application does not limit it. Specifically, the specific gestures in this application embodiment can be any one of a single-click gesture, a swipe gesture, a drag gesture, a pressure-recognition gesture, a long-press gesture, an area-change gesture, a double-press gesture, or a double-tap gesture; the click input in this application embodiment can be a single-click input, a double-tap input, or any number of clicks, and can also be a long-press input or a short-press input.
[0233] For example, users can click on the first batch of registered session identifiers.
[0234] Thus, during the annotation process on the first page, when the user inputs the first batch of annotation session identifiers in the annotation layer, the state information of the first batch of annotation sessions corresponding to the first page can be saved first, then the annotation layer can be updated, and the first page can be switched to the page indicated by the first batch of annotation session identifiers, that is, the annotation session corresponding to the first batch of annotation session identifiers can be displayed. This allows the user to continue to annotate the page indicated by the first batch of annotation session identifiers by inputting the annotation layer. On the other hand, since the state information of the first batch of annotation sessions on the first page is saved in advance, when the user switches back to the first page (e.g., by inputting the page identifier of the first page), the annotation state of the corresponding annotation session on the first page before the switch can be restored based on the state information of the first batch of annotation session identifiers. In this way, continuous annotation on the first page can be continued, and the context between the annotations on the first page and the page content corresponding to the annotations can be kept unbroken.
[0235] In some embodiments of this application, the annotation layer includes at least one annotation session identifier. After step 104, the page content annotation method provided in this application embodiment may further include steps 108 to 111.
[0236] Step 108: The page content annotation device receives a fourth input from the user for at least one second annotation session identifier among at least one annotation session identifier.
[0237] Step 109: In response to the fourth input, the page content annotation device displays annotations in the annotation layer that are indicated by at least one second annotation session identifier, based on at least one saved second annotation session state information.
[0238] Wherein, the above-mentioned at least one second annotation session status information is the annotation session status information of the annotation session indicated by at least one second annotation session identifier.
[0239] In some embodiments of this application, the session state of the annotation session indicated by at least one second annotation session identifier can be restored and displayed in the annotation layer based on at least one saved second annotation session state information, so as to display a portion of the annotations in the annotation session indicated by the at least one second annotation session identifier. It can be understood that the portion of the annotations can be the annotations displayed in the annotation layer when the annotation session state information is saved.
[0240] In some embodiments of this application, after the annotations in the annotation session indicated by at least one second annotation session identifier are displayed in the annotation layer, the user can trigger an update to display the annotations in the annotation session indicated by the at least one annotation session by inputting information.
[0241] For example, when at least one of the aforementioned second annotation identifiers indicates annotation session 1 corresponding to page 1 and annotation session 2 corresponding to page 2, and annotation session 1 is pinned while page 10 of page 1 is being annotated; and annotation session 2 is pinned while page 5 of page 1 is being annotated, then: after the user inputs at least one of the aforementioned second annotation identifiers, the annotations in annotation session 1 corresponding to page 10 of page 1 and the annotations in annotation session 2 corresponding to page 10 of page 2 can be displayed in the annotation layer. Furthermore, the user can trigger the display of annotations in annotation session 1 corresponding to page 9 of page 1 and annotation session 2 corresponding to page 4 of page 2 by swiping up in the annotation layer; that is, updating and displaying the annotations in the annotation sessions indicated by at least one second annotation identifier.
[0242] In some embodiments of this application, during the process of displaying annotations in at least one annotation session indicated by a second annotation session identifier in the annotation layer based on at least one saved second annotation session state information, the page corresponding to one of the annotation sessions can be displayed synchronously.
[0243] For example, the page corresponding to the last selected identifier among the at least one second annotation session identifier can be displayed, or the page corresponding to the first selected identifier among the at least one second annotation session identifier can be displayed.
[0244] In some embodiments of this application, the aforementioned fourth input includes, but is not limited to: touch input by the user via a finger or stylus to at least one second annotation session identifier, or voice commands input by the user, or specific gestures input by the user, or other feasible inputs. The specific input can be determined according to actual usage needs, and this application does not limit it. Specifically, the specific gestures in this application embodiment can be any one of a single-click gesture, a swipe gesture, a drag gesture, a pressure-recognition gesture, a long-press gesture, an area-change gesture, a double-press gesture, or a double-tap gesture; the click input in this application embodiment can be a single-click input, a double-tap input, or any number of clicks, and can also be a long-press input or a short-press input.
[0245] For example, a user can click on at least one second annotation session identifier in sequence.
[0246] In some embodiments of this application, each annotation session identifier in the above annotation layer may correspond to an annotation session saved through a "pin" operation and be used to indicate the source page of the session.
[0247] Specifically, the page content annotation device retrieves the associated "lightweight session" data package, i.e., the aforementioned annotation session state information, based on the selected annotation session identifier. This data package was saved when the user previously triggered "pinning." Then, from the "annotation layer snapshot" or "active annotation ID list" contained in this data package, all annotations for the corresponding page are reconstructed and displayed uniformly in the annotation layer in a list, thumbnail, or other structured format. For example, as... Figure 6 As shown, an annotation list can be displayed in the annotation bar area 70 of annotation layer 21. This annotation list includes three annotations from document annotations in application A (annotations 71, 72, and 73) and two annotations from images in application C (annotations 74 and 75). It can be seen that each annotation in the annotation list corresponds to a selection box 76, allowing the user to select the corresponding annotation by inputting into the selection box. Figure 6 It can be seen that the user selected annotation 71 and annotation 75.
[0248] Step 110: The page content annotation device receives the fifth input for N annotations in the annotation layer.
[0249] Where N can be an integer greater than 1.
[0250] Step 111: The page content annotation device responds to the fifth input by clustering and deduplicating the annotation information of the above N annotations to obtain a structured to-do list.
[0251] In some embodiments of this application, the to-do list includes at least one topic list item, and each topic list item corresponds to a clustered topic.
[0252] In some embodiments of this application, the subject list items include:
[0253] A unified title is used to summarize the theme corresponding to each item in the topic list;
[0254] Integrated description, used to combine the content of at least one annotation under the corresponding topic;
[0255] The original text anchor point set is used to record the position of the page content corresponding to each annotation under the corresponding topic in the original text;
[0256] Subject matter responsible person;
[0257] Topic priority.
[0258] For example, such as Figure 6 As shown, users can select some comments from the comment list displayed in the comment layer to generate a to-do list.
[0259] Simply put, annotations that correspond to similar or identical content across different topic list items are considered to be of the same type.
[0260] Understandably, users can view annotations from different pages through the annotation layer. The annotation session state information for these pages has been pre-saved through a "pinning" mechanism. Users can select multiple annotations across pages. The page content annotation device intelligently clusters and deduplicates the selected annotations based on content similarity, automatically generating a list of to-do tasks with clear themes.
[0261] In some embodiments of this application, after obtaining the structured list, the page content annotation device can automatically generate a corresponding subtask list in the calendar application according to each topic list item in the list. Each subtask is associated with an original annotation under the topic corresponding to that topic list item. This enables the automatic conversion from scattered annotations to executable tasks.
[0262] In this way, through the unified management and visualization of multiple saved annotation sessions in the annotation layer, users can flexibly access annotations from different pages, and through intelligent clustering and deduplication, fragmented annotation content is automatically integrated into a clear, traceable, and assignable structured to-do list, thereby significantly improving the efficiency of annotation processing across documents or applications and the convenience of collaborative work.
[0263] In some embodiments of this application, after step 104 above, the page content annotation method provided in the embodiments of this application may further include the following steps 112 and 113.
[0264] Step 112: The page content annotation device receives the user's sixth input for the first batch of annotations.
[0265] Step 113: The page content annotation device responds to the sixth input and performs the first operation.
[0266] The first operation includes either operation 1 or operation 2:
[0267] Operation 1: Based on the page content corresponding to the first area on the first page, generate and display the response suggestion information for the first batch of annotations; that is, based on the original text content annotated by the first batch of annotations on the first page, generate and display the response suggestion information for the first batch of annotations.
[0268] Operation 2: Based on the annotation information of the first batch of annotations, generate and display the content tags of the first batch of annotations.
[0269] Through steps 112 and 113 above, intelligent and in-depth processing of individual annotations can be achieved, thereby expanding the interactive dimensions and application value of annotations.
[0270] In some embodiments of this application, operation 1 described above is used.
[0271] Specifically, this action is triggered when a user needs to respond to a comment (such as a question or suggestion). The page content annotation device can perform the following steps:
[0272] 1. Contextualization: Based on the index information of the annotation, locate and retrieve the specific page content corresponding to it in the original text (i.e., "the page content corresponding to the first area").
[0273] 2. Intelligent Analysis and Generation: The system utilizes an artificial intelligence (AI) model, taking the semantic information of the selected annotation (such as text content or speech-to-text) and the corresponding original context as input. Based on its understanding of the annotation's imagery (questions, errors, and suggestions) and the semantics of the original text, the AI model automatically generates a targeted response, explanation, or revised draft. For example, for an annotation pointing out "inconsistencies in the data," the AI can analyze the corresponding paragraph on the first page and generate an explanation or a suggested revised data representation.
[0274] 3. Results Presentation and Interaction: The generated response suggestions can be displayed next to the annotations, such as... Figure 7 As shown. Furthermore, users can edit, adopt, or provide further instructions on the response suggestions. This process provides users with a fast and accurate interactive response capability, upgrading one-way annotation to two-way dialogue.
[0275] In some embodiments of this application, the page content annotation device can generate a "draft proposal - original text paragraph" comparison view, which the user can select and allow for adoption or rejection item by item. For example... Figure 7As shown, after the user selects a comment 81, the page content annotation device can generate and display the corresponding modification suggestion information 82 for the user to choose from.
[0276] Specifically, such as Figure 7 As shown, if the user clicks on suggestion information 82 or annotation 81, then as follows: Figure 8 As shown, the page content annotation device can display rejection and acceptance indicators on the modification suggestion information 82. If the user confirms the adoption of the suggestion, such as after entering the acceptance indicator, the page content annotation device can locate the original paragraph / region according to the index corresponding to the annotation and execute the feedback strategy: (1) replace the paragraph or insert modification points in the text document; or, (2) add annotation layers to the image content or replace the local annotation version; and, the feedback result and the person in charge can be recorded to form a traceable change log.
[0277] For example, such as Figure 8 As shown, after a user selects the "accept" flag in the modification suggestion information corresponding to the comment, the modification content is replaced or inserted into the original text corresponding to the comment based on the index relationship; clicking the "reject" button discards the modification suggestion.
[0278] In some embodiments of this application, for operation 2 above, generating and displaying content tags for the first batch of annotations based on the annotation information of the first batch of annotations may include: calling an AI model or a Natural Language Processing (NLP) algorithm to analyze the semantic information of the annotation information of the first batch of annotations, and identifying the core theme, sentiment (such as questioning or affirmation), and the entity or action intent involved in the annotation information. Then, based on the analysis results, one or more content tags are automatically generated. These tags may include at least one of the following:
[0279] Annotation types, such as problem / suggestion / to-do / risk;
[0280] Comment priority, such as priority A, B, C;
[0281] Annotate the person responsible for the pending task and the due date;
[0282] A one-sentence summary and / or keywords corresponding to the voice annotation;
[0283] Metadata such as the annotator, annotation time, block ID of the page content to which the annotation belongs, and the area coordinates of the page content.
[0284] For example, a voice annotation suggesting "simplifying the user login process from three steps to two steps" might automatically generate tags such as "simplified process" and "high priority".
[0285] In some embodiments of this application, the content tags of the first batch of annotations are saved as part of the metadata of the first batch of annotations. That is, after exporting the annotation file corresponding to the first page, the annotation file carries the content tags of the first batch of annotations.
[0286] In some embodiments of this application, the content tags of annotations can be used for the filtering, sorting and visual grouping of annotations, which greatly improves the management and retrieval efficiency of massive annotations and provides richer and more accurate semantic feature basis for subsequent steps, such as intelligent clustering of annotations across tasks.
[0287] In some embodiments of this application, the page content annotation device can also generate modification suggestions for the annotation content of the first batch of annotations through an AI model, such as wording optimization, structural rearrangement, table structure templates, and standardized expressions. The modification suggestions can be displayed in the adjacent area of the first batch of annotations, and an arrow can be displayed between the two to indicate the connection.
[0288] This application provides a method for upgrading static annotations to a dynamic intelligent workflow. This method ensures the continuity of annotation tasks when switching between applications through a "pin" function; it connects annotations and the original text using bidirectional indexes; it supports merging multiple annotations, deduplicating them, and generating a structured to-do list; it further leverages intelligent assistance capabilities to automatically generate specific modification suggestions based on annotation content; and after user confirmation, the adopted suggestions are synchronously returned to the corresponding location in the original document, thus forming a complete closed loop of "identifying problems - summarizing to-do lists - generating response suggestions - synchronous modification." In other words, the "pin" function ensures annotation continuity across annotation sessions; the index between annotations and page content connects annotations and the original text; it can generate to-do lists based on annotation content within an annotation session; or it can generate executable suggestions with intelligent assistance; and after confirmation, the changes are synchronously returned to the original document, forming a closed loop of identifying problems, merging lists, generating suggestions, and returning modifications.
[0289] This application provides a cross-page contextual continuous annotation method. The method first logically divides the content of a long document or long image into blocks and establishes an annotation layer independent of the original text. Users can save the current annotation session (including scroll position, selection state, and annotation layer snapshot) as a lightweight context (i.e., annotation session state information) by pinning the annotation, thus ensuring that the flow of each annotation session is not interrupted when switching between different annotation tasks. For line annotations, a precise index association is established between the annotation and the original text block and coordinates. Finally, the modification suggestions corresponding to the annotation content can be automatically located and written back to the original text based on the index after the user adopts them, thereby significantly improving the efficiency of long content annotation and collaborative modification.
[0290] Thus, since the page content annotation device can generate corresponding response suggestions or generate annotation content tags, it transforms annotations from static "comments" into dynamic, interactive, and semantically rich intelligent nodes. This not only deepens the application value of single-point annotations but also injects stronger intelligent driving force into the entire automated collaborative workflow from annotation to task generation to modification and feedback.
[0291] In some embodiments of this application, after step 104 above, the page content annotation method provided in this application embodiment may further include the following steps 113 and 114:
[0292] Step 113: The page content annotation device receives the user's seventh input on the first page.
[0293] Step 114: The page content annotation device responds to the seventh input and outputs the annotation file corresponding to the first page.
[0294] The aforementioned annotation file may include at least one of the following:
[0295] The vector annotation collection includes annotation information (such as text content, speech-to-text, line color, etc.) and position vectors (such as global coordinates, block ID) of all annotations in the annotation layer that correspond to the first page; that is, the annotations are stored in the form of vector graphics to ensure clear display at any scaling ratio and maintain visual association with the original text.
[0296] The source text collection includes the content of each page annotated on the first page, along with the location information of that content; for example, the individual text snippets annotated on the first page (such as text paragraphs or image areas) and their precise location information (such as page numbers, paragraph indexes, and coordinate ranges). This collection ensures that the recipient can understand the context of the annotations without accessing the original document.
[0297] The annotation navigation directory includes annotation information for each annotation in the annotation layer corresponding to the first page, and the location information of the page content corresponding to each annotation within the first page; for example, it includes a structured index of all annotations corresponding to the first page. Each index entry in the directory can include a content tag for an annotation, summary information (such as type, priority, one-sentence summary), and the location information of the original text content anchored by that annotation within the first page (such as hyperlink anchors). It can be understood that recipients of the annotation navigation directory can quickly jump to the original text location corresponding to the annotation by clicking on the index entry in the directory, achieving efficient review.
[0298] The to-do task collection includes various to-do tasks generated based on annotation information from the annotation layer corresponding to the first page. Optionally, each to-do task integrates annotation information (such as text information) from at least one semantically similar annotation, including a unified title, integrated description, corresponding set of original text anchors, and management fields such as responsible person, priority, and due date. This collection can be directly imported into the task management system to drive subsequent execution.
[0299] It is understandable that the above structured annotation file can be a self-contained, interactive, and reverse-location-supported composite file.
[0300] In some embodiments of this application, the seventh input can be an "Export current page annotations" operation triggered by the user through long press, right-click menu or toolbar button, used to instruct the annotation content related to the current first page to be output as an independent annotation file.
[0301] It is understandable that the above-mentioned annotation file allows the recipient of the annotation file to avoid switching back and forth between the original page and multiple annotation records. All information is presented in one place and can be quickly located through the navigation directory, which greatly reduces the understanding and location time for annotators and modifiers.
[0302] Furthermore, it ensures the integrity and traceability of the annotation context. For example, by referencing the original text set and precise location information, it effectively prevents the loss of association between annotations and the original text after export, ensuring that any modification suggestions can be accurately traced back to the source. In addition, the to-do task set enables direct integration with workflow systems, reducing the costs of repetitive annotation and rework, and improving the efficiency of task distribution and execution.
[0303] In this way, since users can trigger the output of the first page's annotation file, which includes a set of vector annotations, a set of cited original texts, an annotation navigation directory, and a set of to-do tasks, the annotation content related to a single page and possibly scattered in multiple places can be integrated into a well-structured, complete, and highly correlated independent file, thereby improving the efficiency of annotation review and communication.
[0304] It is understood that the annotation method provided in this application can improve the efficiency of continuous annotation of long content, the integrated expression of voice and handwriting, the speed of annotation merging and retrieval, the efficiency of original text review and verification after export, and the speed of modification suggestions and modifications with AI assistance. Furthermore, it reduces the loss of context in annotation content caused by switching between applications, reduces the cost of repetitive annotation and communication rework, reduces the time for annotators and modifiers to understand and locate information, and improves modification efficiency.
[0305] It should be noted that the above-described method embodiments, or the various possible implementations of the method embodiments, can be executed individually, or, provided there are no contradictions, they can be combined with each other. The specific implementation can be determined according to actual usage requirements, and this application embodiment does not impose any restrictions on this.
[0306] The page content annotation method provided in this application can be executed by a page content annotation device. This application uses the execution of the page content annotation method by a page content annotation device as an example to illustrate the page content annotation device provided in this application.
[0307] This application provides a page content annotation device, such as... Figure 9 As shown, the page content annotation device 700 includes: a receiving module 701 and a display module 702;
[0308] The receiving module is used to receive the first input to the first page;
[0309] The display module is configured to display an annotation layer on the first page in response to the first input received by the receiving module, wherein each position of the annotation layer has a mapping relationship with a position on the first page;
[0310] The receiving module is further configured to receive a second input to the first region in the annotation layer;
[0311] The display module is further configured to respond to the second input received by the receiving module, and display the first batch of annotations in the annotation layer based on the input information of the second input, wherein the first batch of annotations are annotations on the page content corresponding to the first area in the first page.
[0312] In some embodiments of this application, the receiving module is specifically used for:
[0313] Receive a screenshot input of the first region in the annotation layer;
[0314] In response to the screenshot input, a screenshot is taken of the page content corresponding to the first area on the first page, and the screenshot image is obtained and displayed;
[0315] Receive a first selection input for the target image region in the screenshot image;
[0316] The first batch of annotations refers to annotations on the page content corresponding to the target image region.
[0317] In some embodiments of this application, the receiving module is specifically used for:
[0318] Receive a second selection input for the first region in the annotation layer;
[0319] In response to the second selected input, the annotation object corresponding to the first area is displayed in the annotation layer, and the annotation object includes a voice control;
[0320] Receive voice input to the voice control;
[0321] The response to the second input, based on the input information of the second input, to display the first batch of annotations in the annotation layer, includes:
[0322] The display module is specifically used to respond to the voice input and, based on the voice input information, display the text information corresponding to the voice input information in the annotation object.
[0323] In some embodiments of this application, the annotation layer includes at least one annotation session identifier; the above-mentioned page content annotation device also includes a processing module.
[0324] The receiving module is further configured to receive a third input for the first batch of annotation session identifiers in the at least one annotation session identifier after the display module displays the first batch of annotations in the annotation layer based on the input information of the second input;
[0325] The processing module is used to respond to the third input received by the receiving module and save the first batch of annotation session status information corresponding to the first page. The first batch of annotation session status information is used to encapsulate the context status information of the annotation session corresponding to the first page.
[0326] The display module is also used to update the annotation layer and switch the first page to the page indicated by the first annotation session identifier.
[0327] In some embodiments of this application, the annotation layer includes at least one annotation session identifier; the above-mentioned page content annotation device also includes a processing module.
[0328] The receiving module is further configured to receive a fourth input for at least one second annotation session identifier among the at least one annotation session identifier after the display module displays the first batch of annotations in the annotation layer based on the input information of the second input;
[0329] The display module is further configured to respond to the fourth input received by the receiving module, and display the annotations in each annotation session indicated by the at least one second annotation session identifier in the annotation layer based on the at least one saved second annotation session status information, wherein the at least one second annotation session status information is the annotation session status information of the annotation session indicated by the at least one second annotation session identifier.
[0330] The receiving module is further configured to receive a fifth input for N annotations in the annotation layer, where N is an integer greater than 1;
[0331] The processing module is used to cluster and deduplicate the annotation information of the N annotations in response to the fifth input received by the receiving module, so as to obtain a structured list of tasks to be done.
[0332] In some embodiments of this application, the receiving module is further configured to receive a sixth input to the first batch of annotations after the display module displays the first batch of annotations in the annotation layer based on the input information of the second input;
[0333] The aforementioned page content annotation device also includes a processing module;
[0334] The processing module is configured to perform a first operation in response to the sixth input received by the receiving module, the first operation including any one of the following:
[0335] Based on the page content corresponding to the first area in the first page, generate and display the response suggestion information of the first batch of annotations;
[0336] Based on the annotation information of the first batch of annotations, generate and display the content tags of the first batch of annotations.
[0337] In some embodiments of this application, the receiving module is further configured to receive a seventh input to the first page after the display module displays the first batch of annotations in the annotation layer based on the input information of the second input; the page content annotation device further includes a processing module.
[0338] The above processing module is used to respond to the seventh input received by the receiving module and output the annotation file corresponding to the first page;
[0339] The annotation file includes at least one of the following:
[0340] A vector annotation set, which includes annotation information and position vectors of the annotations in the annotation layer corresponding to the first page;
[0341] The original text collection includes the content of each page that is annotated on the first page and the location information of each page content;
[0342] Annotation navigation directory, which includes annotation information of each annotation in the annotation layer corresponding to the first page, and the position information of the page content corresponding to each annotation in the first page;
[0343] A set of tasks to be done, which includes tasks generated based on annotation information in the annotation layer corresponding to the first page.
[0344] In this way, since users can trigger the display of annotation layers on the first page through their first input on the first page, which are mapped to the positions on the first page, and indirectly select page content on the first page through their second input in the annotation layer, and display annotations corresponding to the page content in the annotation layer, the annotations and page content can be decoupled. Thus, regardless of the format of the first page, annotations on its page content can be implemented through the annotation layer, thereby improving the flexibility and versatility of annotations.
[0345] The page content annotation device in this application embodiment can be an electronic device or a component of an electronic device, such as an integrated circuit or a chip. The electronic device can be a terminal or other devices besides a terminal. For example, the electronic device can be a mobile phone, tablet computer, laptop computer, handheld computer, in-vehicle electronic device, mobile internet device (MID), augmented reality (AR) / virtual reality (VR) device, robot, wearable device, ultra-mobile personal computer (UMPC), netbook, or personal digital assistant (PDA), etc. It can also be a server, network attached storage (NAS), personal computer (PC), television (TV), ATM, or self-service machine, etc. This application embodiment does not specifically limit the device.
[0346] The page content annotation device in this application embodiment can be a device with an operating system. This operating system can be Android, iOS, or other possible operating systems; this application embodiment does not specifically limit it.
[0347] The page content annotation device provided in this application embodiment can achieve... Figures 1 to 9 The various processes implemented in the method implementation examples will not be described again here to avoid repetition.
[0348] Optionally, such as Figure 10As shown, this application embodiment also provides an electronic device 1100, including a processor 1101 and a memory 1102. The memory 1102 stores a program or instructions that can run on the processor 1101. When the program or instructions are executed by the processor 1101, they implement the various steps of the above-described page content annotation method embodiment and can achieve the same technical effect. To avoid repetition, they will not be described again here.
[0349] It should be noted that the electronic devices in the embodiments of this application include the mobile electronic devices and non-mobile electronic devices described above.
[0350] Figure 11 A schematic diagram of the hardware structure of an electronic device to implement an embodiment of this application.
[0351] The electronic device 1500 includes, but is not limited to, components such as: radio frequency unit 1501, network module 1502, audio output unit 1503, input unit 1504, sensor 1505, display unit 1506, user input unit 1507, interface unit 1508, memory 1509, and processor 1510.
[0352] Those skilled in the art will understand that the electronic device 1500 may also include a power supply (such as a battery) for supplying power to various components. The power supply may be logically connected to the processor 1510 through a power management system, thereby enabling functions such as managing charging, discharging, and power consumption through the power management system. Figure 11 The electronic device structure shown does not constitute a limitation on the electronic device. The electronic device may include more or fewer components than shown, or combine certain components, or have different component arrangements, which will not be elaborated here.
[0353] The user input unit 1507 is used to receive a first input to the first page;
[0354] The display unit 1506 is configured to display an annotation layer on the first page in response to the first input received by the user input unit 1507, wherein each position of the annotation layer has a mapping relationship with a position on the first page;
[0355] The user input unit 1507 is also used to receive a second input to the first region in the annotation layer;
[0356] The display unit 1506 is further configured to respond to the second input received by the user input unit 1507, and display the first batch of annotations in the annotation layer based on the input information of the second input, wherein the first batch of annotations are annotations on the page content corresponding to the first area in the first page.
[0357] In some embodiments of this application, the user input unit 1507 is specifically used for:
[0358] Receive a screenshot input of the first region in the annotation layer;
[0359] In response to the screenshot input, a screenshot is taken of the page content corresponding to the first area on the first page, and the screenshot image is obtained and displayed;
[0360] Receive a first selection input for the target image region in the screenshot image;
[0361] The first batch of annotations refers to annotations on the page content corresponding to the target image region.
[0362] In some embodiments of this application, the user input unit 1507 is specifically used for:
[0363] Receive a second selection input for the first region in the annotation layer;
[0364] In response to the second selected input, the annotation object corresponding to the first area is displayed in the annotation layer, and the annotation object includes a voice control;
[0365] Receive voice input to the voice control;
[0366] The response to the second input, based on the input information of the second input, to display the first batch of annotations in the annotation layer, includes:
[0367] The display unit 1506 is specifically used to respond to the voice input and, based on the voice input information, display the text information corresponding to the voice input information in the annotation object.
[0368] In some embodiments of this application, the annotation layer includes at least one annotation session identifier;
[0369] The user input unit 1507 is further configured to receive a third input for the first batch of annotation session identifiers in the at least one annotation session identifier after the display unit 1506 displays the first batch of annotations in the annotation layer based on the input information of the second input.
[0370] The processor 1510 is configured to, in response to the third input received by the user input unit 1507, save the first batch of annotation session state information corresponding to the first page, wherein the first batch of annotation session state information is used to encapsulate the context state information of the annotation session corresponding to the first page.
[0371] The display unit 1506 is also used to update the annotation layer and switch the first page to the page indicated by the first annotation session identifier.
[0372] In some embodiments of this application, the annotation layer includes at least one annotation session identifier;
[0373] The user input unit 1507 is further configured to receive a fourth input for at least one second annotation session identifier among the at least one annotation session identifier after the display unit 1506 displays the first annotation in the annotation layer based on the input information of the second input;
[0374] The display unit 1506 is further configured to respond to the fourth input received by the user input unit 1507, and display the annotations in each annotation session indicated by the at least one second annotation session identifier in the annotation layer based on the at least one saved second annotation session status information, wherein the at least one second annotation session status information is the annotation session status information of the annotation session indicated by the at least one second annotation session identifier.
[0375] The user input unit 1507 is also used to receive a fifth input for N annotations in the annotation layer, where N is an integer greater than 1;
[0376] The processor 1510 is configured to, in response to the fifth input received by the user input unit 1507, perform clustering and deduplication processing on the annotation information of the N annotations to obtain a structured list of to-do tasks.
[0377] In some embodiments of this application, the user input unit 1507 is further configured to receive a sixth input to the first batch of annotations after the display unit 1506 displays the first batch of annotations in the annotation layer based on the input information of the second input;
[0378] The processor 1510 is configured to perform a first operation in response to the sixth input received by the user input unit 1507, the first operation including any one of the following:
[0379] Based on the page content corresponding to the first area in the first page, generate and display the response suggestion information of the first batch of annotations;
[0380] Based on the annotation information of the first batch of annotations, generate and display the content tags of the first batch of annotations.
[0381] In some embodiments of this application, the user input unit 1507 is further configured to receive a seventh input to the first page after the display unit 1506 displays the first batch of annotations in the annotation layer based on the input information of the second input;
[0382] Processor 1510 is configured to output the annotation file corresponding to the first page in response to the seventh input received by user input unit 1507;
[0383] The annotation file includes at least one of the following:
[0384] A vector annotation set, which includes annotation information and position vectors of the annotations in the annotation layer corresponding to the first page;
[0385] The original text collection includes the content of each page that is annotated on the first page and the location information of each page content;
[0386] Annotation navigation directory, which includes annotation information of each annotation in the annotation layer corresponding to the first page, and the position information of the page content corresponding to each annotation in the first page;
[0387] A set of tasks to be done, which includes tasks generated based on annotation information in the annotation layer corresponding to the first page.
[0388] In this way, since users can trigger the display of annotation layers on the first page through their first input on the first page, which are mapped to the positions on the first page, and indirectly select page content on the first page through their second input in the annotation layer, and display annotations corresponding to the page content in the annotation layer, the annotations and page content can be decoupled. Thus, regardless of the format of the first page, annotations on its page content can be implemented through the annotation layer, thereby improving the flexibility and versatility of annotations.
[0389] It should be understood that, in this embodiment, the input unit 1504 may include a graphics processing unit (GPU) 15041 and a microphone 15042. The GPU 15041 processes image data of still images or videos obtained by an image capture device (such as a camera) in video capture mode or image capture mode. The display unit 1506 may include a display panel 15061, which may be configured in the form of a liquid crystal display, an organic light-emitting diode, or the like. The user input unit 1507 includes at least one of a touch panel 15071 and other input devices 15072. The touch panel 15071 is also called a touch screen. The touch panel 15071 may include a touch detection device and a touch controller. Other input devices 15072 may include, but are not limited to, physical keyboards, function keys (such as volume control buttons, power buttons, etc.), trackballs, mice, and joysticks, which will not be described in detail here.
[0390] The memory 1509 can be used to store software programs and various data. The memory 1509 may primarily include a first storage area for storing programs or instructions and a second storage area for storing data. The first storage area may store the operating system, application programs or instructions required for at least one function (such as sound playback, image playback, etc.). Furthermore, the memory 1509 may include volatile memory or non-volatile memory, or both. The non-volatile memory may be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory can be random access memory (RAM), static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct memory bus RAM (DRRAM). The memory 1509 in this embodiment includes, but is not limited to, these and any other suitable types of memory.
[0391] Processor 1510 may include one or more processing units; optionally, processor 1510 integrates an application processor and a modem processor, wherein the application processor mainly handles operations involving the operating system, user interface, and applications, and the modem processor mainly handles wireless communication signals, such as a baseband processor. It is understood that the aforementioned modem processor may also not be integrated into processor 1510.
[0392] This application also provides a readable storage medium storing a program or instructions. When the program or instructions are executed by a processor, they implement the various processes of the above-described page content annotation method embodiments and achieve the same technical effect. To avoid repetition, they will not be described again here.
[0393] The processor is the processor in the electronic device described in the above embodiments. The readable storage medium includes computer-readable storage media, such as computer read-only memory (ROM), random access memory (RAM), magnetic disk, or optical disk.
[0394] This application embodiment also provides a chip, which includes a processor and a communication interface. The communication interface is coupled to the processor. The processor is used to run programs or instructions to implement the various processes of the above-described page content annotation method embodiment and can achieve the same technical effect. To avoid repetition, it will not be described again here.
[0395] It should be understood that the chip mentioned in the embodiments of this application may also be referred to as a system-on-a-chip, system chip, chip system, or system-on-a-chip, etc.
[0396] This application provides a computer program product that is stored in a storage medium and executed by at least one processor to implement the various processes of the page content annotation method embodiment described above, and can achieve the same technical effect. To avoid repetition, it will not be described again here.
[0397] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element. Furthermore, it should be noted that the scope of the methods and apparatuses in the embodiments of this application is not limited to performing functions in the order shown or discussed, but may also include performing functions substantially simultaneously or in the reverse order, depending on the functions involved. For example, the described methods may be performed in a different order than described, and various steps may be added, omitted, or combined. Additionally, features described with reference to certain examples may be combined in other examples.
[0398] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a computer software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of this application.
[0399] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of this application without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of this application.
Claims
1. A method for annotating page content, characterized in that, The method includes: Receive the first input on the first page; In response to the first input, an annotation layer is displayed on the first page, wherein each position of the annotation layer is mapped to a position on the first page; Receive a second input for the first region in the annotation layer; In response to the second input, based on the input information of the second input, the first batch of annotations is displayed in the annotation layer, the first batch of annotations being annotations on the page content corresponding to the first area on the first page.
2. The method according to claim 1, characterized in that, The receiving of a second input to the first region in the annotation layer includes: Receive a screenshot input of the first region in the annotation layer; In response to the screenshot input, a screenshot is taken of the page content corresponding to the first area on the first page, and the screenshot image is displayed. Receive a first selection input for the target image region in the screenshot image; The first batch of annotations refers to annotations on the page content corresponding to the target image region.
3. The method according to claim 1, characterized in that, The receiving of a second input to the first region in the annotation layer includes: Receive a second selection input for the first region in the annotation layer; In response to the second selected input, the annotation object corresponding to the first area is displayed in the annotation layer, and the annotation object includes a voice control; Receive voice input to the voice control; The response to the second input, based on the input information of the second input, to display the first batch of annotations in the annotation layer, includes: In response to the voice input, based on the voice input information, the text information corresponding to the voice input information is displayed in the annotation object.
4. The method according to claim 1, characterized in that, The annotation layer includes at least one annotation session identifier; After displaying the first batch of annotations in the annotation layer based on the input information from the second input, the method further includes: Receive a third input for the first annotation session identifier in the at least one annotation session identifier; In response to the third input, the first batch of annotation session state information corresponding to the first page is saved. The first batch of annotation session state information is used to encapsulate the context state information of the annotation session corresponding to the first page. Switch the annotation session corresponding to the first page to the annotation session indicated by the first annotation session identifier.
5. The method according to claim 1, characterized in that, The annotation layer includes at least one annotation session identifier; After displaying the first batch of annotations in the annotation layer based on the input information from the second input, the method further includes: Receive a fourth input for at least one second annotation session identifier among the at least one annotation session identifier; In response to the fourth input, based on at least one saved second annotation session state information, the annotations in the annotation session indicated by the at least one second annotation session identifier are displayed in the annotation layer, wherein the at least one second annotation session state information is the annotation session state information of each annotation session indicated by the at least one second annotation session identifier. Receive a fifth input for N comments in the comment layer, where N is an integer greater than 1; In response to the fifth input, the annotation information of the N annotations is clustered and deduplicated to obtain a structured list of tasks to be done.
6. A page content annotation device, characterized in that, The device includes: a receiving module and a display module; The receiving module is used to receive the first input to the first page; The display module is configured to display an annotation layer on the first page in response to the first input received by the receiving module, wherein each position of the annotation layer has a mapping relationship with a position on the first page; The receiving module is further configured to receive a second input to the first region in the annotation layer; The display module is further configured to respond to the second input received by the receiving module, and display the first batch of annotations in the annotation layer based on the input information of the second input, wherein the first batch of annotations are annotations on the page content corresponding to the first area in the first page.
7. The apparatus according to claim 6, characterized in that, The receiving module is specifically used for: Receive a screenshot input of the first region in the annotation layer; In response to the screenshot input, a screenshot is taken of the page content corresponding to the first area on the first page, and the screenshot image is displayed. Receive a first selection input for the target image region in the screenshot image; The first batch of annotations refers to annotations on the page content corresponding to the target image region.
8. The apparatus according to claim 6, characterized in that, The receiving module is specifically used for: Receive a second selection input for the first region in the annotation layer; In response to the second selected input, the annotation object corresponding to the first area is displayed in the annotation layer, and the annotation object includes a voice control; Receive voice input to the voice control; The response to the second input, based on the input information of the second input, to display the first batch of annotations in the annotation layer, includes: The display module is specifically used to respond to the voice input and, based on the voice input information, display the text information corresponding to the voice input information in the annotation object.
9. The apparatus according to claim 6, characterized in that, The annotation layer includes at least one annotation session identifier; the device also includes a processing module. The receiving module is further configured to receive a third input for the first batch of annotation session identifiers in the at least one annotation session identifier after the display module displays the first batch of annotations in the annotation layer based on the input information of the second input; The processing module is used to respond to the third input received by the receiving module and save the first batch of annotation session status information corresponding to the first page. The first batch of annotation session status information is used to encapsulate the context status information of the annotation session corresponding to the first page. The display module is also used to update the annotation layer and switch the first page to the page indicated by the first annotation session identifier.
10. The apparatus according to claim 6, characterized in that, The annotation layer includes at least one annotation session identifier; the device also includes a processing module. The receiving module is further configured to receive a fourth input for at least one second annotation session identifier among the at least one annotation session identifier after the display module displays the first batch of annotations in the annotation layer based on the input information of the second input; The display module is further configured to respond to the fourth input received by the receiving module, and display the annotations in each annotation session indicated by the at least one second annotation session identifier in the annotation layer based on the at least one saved second annotation session status information, wherein the at least one second annotation session status information is the annotation session status information of the annotation session indicated by the at least one second annotation session identifier. The receiving module is further configured to receive a fifth input for N annotations in the annotation layer, where N is an integer greater than 1; The processing module is used to cluster and deduplicate the annotation information of the N annotations in response to the fifth input received by the receiving module, so as to obtain a structured list of tasks to be done.