US20040210833A1 - System and method for annotating web-based document - Google Patents
System and method for annotating web-based document Download PDFInfo
- Publication number
- US20040210833A1 US20040210833A1 US10/848,047 US84804704A US2004210833A1 US 20040210833 A1 US20040210833 A1 US 20040210833A1 US 84804704 A US84804704 A US 84804704A US 2004210833 A1 US2004210833 A1 US 2004210833A1
- Authority
- US
- United States
- Prior art keywords
- annotation
- user
- document
- annotated
- wbd
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/169—Annotation, e.g. comment data or footnotes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/171—Editing, e.g. inserting or deleting by use of digital ink
Definitions
- the present invention relates to a system and method of marking, organizing, and searching Web-based documents.
- Standard desktop word processing applications enable computer users to create and edit text-based documents.
- software utilities exist that integrate electronic sticky notes and users' on screen drawing directly into the document. This type of document annotation enables users to mark and view documents on screen as if the documents were in front of them on paper.
- the current annotation system requires users to annotate documents compatible with specific word processing applications that lack portability. For example, if a user wanted to send another person an annotated document, the user would have to e-mail the document as an attachment and hope the recipient has the same application software to view the document.
- the present invention relates to the integration of any annotation, including ink, highlighter, text-based notes and audio, directly into a Web-based document (WBD) displayed by a Web browser.
- WBD Web-based document
- This integration enables others to view the personalized annotated WBD, which retains its original active links and properties, over the Internet without the need for specialized software.
- Annotations are integrated into WBDs by freezing the WBD, overlaying an image file containing the annotations onto the WBD, and enabling browser events to pass through the image layer.
- Annotations may also be integrated into WBDs by using component object technology.
- the present invention collects and organizes annotated WBDs, and provides users with an intuitive Web-based interface for accessing, viewing and searching the annotated WBDs.
- the present invention provides users with many novel interface techniques, such as dog-ears and its associated navigation tools, splitting pages, turning pages, selecting and copying various portions of a WBD (including shaking out a copy), and marking menus suited for right-handed or cleft-handed users.
- FIG. 1 is a block diagram depicting the internal structure of a user's computer in accordance with an exemplary embodiment of the present invention.
- FIG. 2 is a block diagram depicting a network architecture that facilitates the storing, searching and transfer of annotated WBDs in accordance with an exemplary embodiment of the present invention.
- FIG. 3 depicts a data structure of a user record that is used to store information in a user information database in accordance with an exemplary embodiment of the present invention.
- FIG. 4 depicts a data structure of a folder record that is used to store information in a user folder database in accordance with an exemplary embodiment of the present invention.
- FIG. 5 depicts a data structure of an annotation record that is used to store information in an annotation database in accordance with an exemplary embodiment of the present invention.
- FIG. 6 depicts a data structure of a stroke record that is used to store information in a stroke database in accordance with an exemplary embodiment of the present invention.
- FIG. 7 depicts a data structure of a note record that is used to store information in a note database in accordance with an exemplary embodiment of the present invention.
- FIG. 8 depicts an annotated WBD in accordance with an exemplary embodiment of the present invention.
- FIG. 8A depicts a pop-up menu from an annotation toolbar in accordance with an exemplary embodiment of the present invention.
- FIG. 9 is a flowchart of steps for freezing WBD content in accordance with an exemplary embodiment of the present invention.
- FIG. 10 depicts the imposition of an image file onto a WBD in accordance with an exemplary embodiment of the present invention.
- FIG. 11 is a flowchart of steps for annotating into a Web browser in accordance with an exemplary embodiment of the present invention.
- FIG. 12 is a block diagram depicting the structure of WBD layers that enable Web browser events to pass through annotations in accordance with an exemplary embodiment of the present invention.
- FIG. 13 is a flowchart of steps for passing Web browser events through annotations in accordance with an exemplary embodiment of the present invention.
- FIG. 14 is a flowchart of steps for drawing into a Web browser via a control object in accordance with an exemplary embodiment of the present invention.
- FIG. 15 illustrates a thumbnail margin in accordance with an exemplary embodiment of the present invention.
- FIG. 15A illustrates an online notebook/scrapbook in accordance with an exemplary embodiment of the present invention.
- FIG. 16 illustrates a search interface in accordance with an exemplary embodiment of the present invention.
- FIG. 17 is a flowchart of steps for recognizing gestures in accordance with an exemplary embodiment of the present invention.
- FIG. 18 depicts a dog-eared WBD in accordance with an exemplary embodiment of the present invention.
- FIG. 19 depicts a navigation widget in accordance with an exemplary embodiment of the present invention.
- FIG. 20 is a flowchart of steps for creating, deleting, and navigating through dog-ears in accordance with an exemplary embodiment of the present invention.
- FIG. 21 depicts a flip to dog-ear gesture representation in accordance with an exemplary embodiment of the present invention.
- FIG. 22 depicts a page split gesture representation in accordance with an exemplary embodiment of the present invention.
- FIG. 23 depicts a page turn gesture representation in accordance with an exemplary embodiment of the present invention.
- FIG. 24 depicts a spiral page-turning gesture representation in accordance with an exemplary embodiment of the present invention.
- FIG. 25 is a flowchart of steps for turning multiple pages with a dynamic gesture in accordance with an exemplary embodiment of the present invention.
- FIG. 26 depicts three selection gesture representations in accordance with an exemplary embodiment of the present invention.
- FIG. 27 is a flowchart of steps for performing a shaking out a copy gesture in accordance with an exemplary embodiment of the present invention.
- FIG. 28 illustrates a tap and dwell menu in accordance with a pen-based embodiment of the present invention.
- the present invention fulfills this need in the art by allowing computer users to integrate any annotation, including ink, highlighter, text-based notes and audio, directly into a Web-based document (WBD) displayed by a Web browser. Users may create annotations on preexisting WBDs or new blank WBDs, and can collect and organize annotated WBDs through an intuitive Web-based interface using many novel interface techniques.
- WBD Web-based document
- FIG. 1 is a block diagram depicting the internal structure of a user's computer in accordance with an exemplary embodiment of the present invention.
- User computer 100 may be a personal computer, handheld personal digital assistant (“PDA”), or any other type of microprocessor-based device.
- User computer 100 may include a processor 110 , input device 120 , output device 130 , temporary storage device 140 , resident storage device 150 , and communication device 180 .
- Input device 120 may include a keyboard, mouse, pen-operated touch screen, voice-recognition device, and any other device that provides input from a user.
- Output device 130 may include a monitor, printer, disk drive, speakers, or any other device that provides tangible output to user.
- Temporary storage device 140 may include RAM, caches, and any other volatile storage medium that temporarily holds data while processing it.
- Resident storage device 150 may include a hard drive, CD-ROM drive, tape drive, removable storage disk, or any other nonvolatile data storage medium.
- Annotation software 170 and software for a Web browser 160 may reside in resident storage device 150 .
- Annotation software 170 may include, among others, a Web browser plug-in, independent software program or a feature of an operating system.
- Web browser 160 may include, among others, Microsoft's Internet Explorer or Netscape Navigator.
- Communication device 180 may include a modem, network interface card, or any other device able to transmit and receive signals over a network.
- the components of user computer 100 may also be connected wirelessly, possibly through an infrared connection.
- FIG. 2 is a block diagram depicting a network architecture that facilitates the storing, searching and transfer of annotated WBDs in accordance with an exemplary embodiment of the present invention.
- annotation software 170 transmits it to annotation repository 240 (i.e., server arrangement) via network link 210 a , Internet service provider 220 , network link 210 b , Internet 230 , and network link 210 c .
- Network link 210 may include telephone lines, DSL, cable networks, T1 lines, ATM/SONNET, wireless networks, or any other arrangement that allows for the transmission and reception of network signals.
- user computer 100 , Internet service provider 220 and Web server cluster 250 are also part of the Internet 230 because of their connectivity.
- annotation repository 240 is a Website that receives the annotated WBD through its Web server cluster 250 , which may comprise a collection of Web server computers working in tandem to distribute the load of network traffic. These Web servers include processors and memory for executing program instructions as well network interfaces.
- Annotation repository 240 also comprises, among other components, user information database 260 , user folder database 270 , annotation database 280 , stroke database 290 and note database 295 . Those skilled in the art realize that these single-record databases may be represented in many different ways, such as individual tables in one or more relational databases. Although all annotation-related information is sent to annotation repository 240 , this information may also be stored in temporary storage device 140 or resident storage device 150 for efficiency reasons.
- FIG. 3 depicts a data structure of a user record that is used to store information in user information database 260 in accordance with an exemplary embodiment of the present invention.
- Each user record represents a single unique user of annotation repository 240 , and a user record is created when a user 200 creates an account online.
- user record 300 includes a user ID 310 field, a user name 320 field, a user e-mail 330 field, a user password 340 field, and a list of folder IDs 350 field.
- User ID 310 contains an integer value that identifies each user record 300 in user information database 260 .
- User name 320 contains a unique ASCII string that represents each user 200 associated with annotation repository 240 .
- User e-mail 330 contains a unique ASCII string that represents the e-mail address of each user 200 associated with annotation repository 240 .
- User password 340 contains a unique ASCII string chosen for security purposes by each user 200 associated with annotation repository 240 .
- the password may be encrypted using any standard UNIX utility, such as salt or crypt.
- list of folder IDs 350 contains a linked list of references to records stored in user folder database 270 .
- FIG. 4 depicts a data structure of a folder record that is used to store information in user folder database 270 in accordance with an exemplary embodiment of the present invention.
- Each folder record contains a list of annotated WBDs that relate to a certain category for each user 200 .
- folder record 400 includes a folder ID 410 field, a category 320 field, and a list of annotation IDs 430 field.
- Folder ID 410 contains an integer value that identifies each folder record 400 in user folder database 270 .
- Category 420 contains an ASCII string that describes the category of associated annotated WBDs.
- list of annotation IDs 430 contains a linked list of references to records stored in annotation database 280 .
- FIG. 5 depicts a data structure of an annotation record that is used to store information in annotation database 280 in accordance with an exemplary embodiment of the present invention.
- Each annotation record contains all pertinent information relating to the appearance and make-up of a single annotated WBD associated with annotation repository 240 .
- annotation record 500 includes an annotation ID 510 field, an original WBD URL 515 field, a URL content hash 520 field, an annotation size 525 field, a time/data stamp 530 field, a dog-ear 535 field, a pointer to original WBD 540 field, a pointer to image file 545 field, a pointer to thumbnail file 548 , a list of stroke IDs 550 field, and a list of note IDs 555 field.
- Annotation ID 510 contains an integer value that identifies each annotation record 500 in annotation database 280 .
- Original WBD URL 515 contains an ASCII string representing the Internet address of the unannotated WBD.
- URL content hash 520 contains an integer value that results from the execution of a standard hash function on the contents of the WBD.
- Annotation repository 240 uses this value to generate an Internet address for the annotated WBD that can be mapped to the annotated WBD's location in annotation database 280 .
- Annotation size 525 contains an integer value representing the size in bytes of the annotated WBD.
- Time/date stamp 530 contains an ASCII string representing the time and date that user 200 generated the annotated WBD.
- Dog-ear 535 stores a boolean value representing whether annotated WBD is marked as a dog-ear (“true”) or not (“false”); the default value is “false.”
- Pointer to original WBD 540 stores the file location of the unannotated WBD
- pointer to image file 545 stores the file location of the image file containing the appearance of the annotations
- pointer to thumbnail file 548 stores the file location of the image file containing the miniaturized annotated WBD.
- List of stroke IDs 550 contains a linked list of references to records stored in stroke database 290
- list of note IDs 555 contains a linked list of references to records stored in note database 295 .
- annotation repository 240 in an exemplary embodiment can conserve disk space by storing “DIFF” files instead of the complete WBD multiple times in annotation database 280 .
- DIFF files are generated by the standard UNIX utility diff, and contain only the different content between similar files or WBDs.
- pointer to original WBD 540 could reference the original WBD once, and if subsequent users 200 annotate the same WBD, pointer to original WBD 540 would then reference a much smaller DIFF file that contains the information later used in reconstructing the original WBD.
- FIG. 6 depicts a data structure of a stroke record that is used to store information in stroke database 290 in accordance with an exemplary embodiment of the present invention.
- Each stroke record contains all pertinent information relating to a single brush stroke generated by a user 200 .
- stroke record 600 includes a stroke ID 610 field, a brush width 620 field, a brush height 630 field, a brush shape 640 field, a brush color 650 field, a brush opacity 660 field, and a list of points 670 field.
- Stroke ID 610 contains an integer value that identifies each stroke record 600 in stroke database 290 .
- Brush width 620 and brush height 630 contain integer values that represent the pixel size of the brush width and height, respectively.
- Brush shape 640 stores an integer enumeration indicating whether the brush is square, round, or otherwise.
- Brush color 650 stores an integer value representing the red, green and blue components of the brush's color.
- Brush opacity 660 stores an integer value representing how the brush blends with its background.
- list of points 670 contains a list of x and y coordinates of the locations where user 200 draws onto the WBD.
- FIG. 7 depicts a data structure of a note record that is used to store information in note database 295 in accordance with an exemplary embodiment of the present invention.
- Each note record contains all pertinent information relating to text-based note and audio annotations.
- note record 700 includes a note ID 710 field, a note type 720 field, a note text 730 field, and a pointer to audio file 740 field.
- Note ID 710 contains an integer value that identifies each note record 700 in note database 295 .
- Note type 720 contains a type enumeration that allows for standard yellow sticky notes, “thought” bubbles, rubber stamps, and other types of note appearances.
- Note text 730 contains an ASCII string that represents the text that user 200 types into the note, and pointer to audio file 740 stores the file location in note database 295 of an audio file associated with note record 700 .
- FIG. 8 depicts an annotated WBD in accordance with an exemplary embodiment of the present invention.
- Annotation software 170 enables user 200 to write and draw ink, highlighter and other marks with input device 120 , to incorporate text-based notes in small movable windows, and to add audio annotations directly into a WBD displayed by Web browser 160 .
- the result is an annotated WBD 800 that can be sent to other people for viewing over the Internet 230 , with or without annotation software 170 installed on the recipients' computers.
- annotation software 170 displays an annotation toolbar 805 along the bottom edge of Web browser 160 .
- Annotation toolbar 805 allows, for example, user 200 to select an annotation tool and send an annotation link bye-mail. Users 200 may also access their account with annotation repository 240 and change their user preferences via annotation toolbar 805 .
- a small pop-up menu appears, as shown in FIG. 8 A, listing pen choice 830 , highlighter choice 840 , eraser choice 850 , and pen options choice 860 .
- Selecting pen choice 830 can turn input device 120 into an inking device that allows user 200 to underline, bracket, and draw any other type of ink-mark 810 directly onto annotated WBD 800 .
- Selecting highlighter choice 840 can turn input device 120 into an inking device that allows user 200 to draw any type of highlight-mark 815 onto any part of annotated WBD 800 .
- selecting erase choice 850 can turn input device 120 into an erasing device that allows user 200 to remove any ink-mark 810 or highlight-mark 815 that exists on annotated WBD 800 .
- Pen options choice 860 allows user 200 to customize certain features of the inking device, such as color and shape.
- a small movable note window 820 appears on annotated WBD 800 into which user 200 may type text.
- the note window 820 also contains along its bottom border an audio annotation menu bar 825 , which allows user 200 to easily add an audio dictation to annotated WBD 800 .
- the record button the round button on audio annotation menu bar 825
- annotation software records sound until the stop button is pressed (the square button on audio annotation menu bar 825 ).
- the play button the triangle button on audio annotation menu bar 825 ).
- annotation software 170 first freezes the WBD, so that resizing Web browser 160 after annotating the WBD will not affect the positioning of the annotations with respect to the underlying WBD.
- Annotation software 170 then allows user 200 to annotate into Web browser 160 by inserting on top of the WBD a transparent image file that contains the annotations.
- annotation software 170 allows browser events to pass through the annotation image file so that user 200 has complete access to the underlying WBD.
- FIG. 9 is a flowchart of steps for freezing WBD content in accordance with an exemplary embodiment of the present invention.
- annotation software 170 To freeze a WBD in general, annotation software 170 first gains access to the content of the WBD (step 905 ). Since some WBDs are composed of different layers that may behave differently upon browser resizing, annotation software 170 wraps the existing WBD layers into one fix-sized layer (step 910 ). With all the layers wrapped, the next task is to examine the properties of the WBD elements (step 915 ). WBD elements, which encompass any content on the WBD (e.g., single word, paragraph, image, buttons implemented in JavaScript), may contain certain properties that cause the element to move during browser resizing.
- WBD elements which encompass any content on the WBD (e.g., single word, paragraph, image, buttons implemented in JavaScript)
- an element property may require the element to stay fixed to the size of the WBD no matter how the browser is sized. Therefore, if a WBD element contains properties that cause that element to become unfrozen (“yes” branch of step 920 ), then those properties are modified so that the element remains in a fixed position through browser resizing (step 925 ). Since WBD elements are organized in a tree-like fashion, with the root element at the top and all children below, the next inquiry is whether children elements exist (step 930 ). If children elements exist, their properties are similarly examined (step 935 ) and, if appropriate, modified (step 925 ), and the process repeats until all elements have been examined (“no” branch of step 930 ).
- One exemplary embodiment in accordance with the present invention uses the Internet Explorer (“IE”) implementation of the Document Object Model (“DOM”) in combination with Cascading Style Sheets (“CSS”) and Dynamic-HTML (“DHTML”) World Wide Web technology.
- the Document Object Model is a platform-neutral and language-neutral specification that allows programs and scripts to dynamically access and update the content, structure and style of WBDs.
- CSS is a standard approved by the World-Wide-Web Consortium that allows WBD authors greater flexibility in specifying how their WBDs should be formatted inside a browser.
- these style sheets make it possible to insert elements on a WBD that “snap” to the sides of a browser, akin to left or right justified text, so that they move with the browser window as it is resized.
- DHTML functionality allows WBD authors to create multiple overlaid layers of HTML inside a single WBD, and also enables WBDs to alter their content programmatically.
- annotation software 170 employs the DOM to access the contents of a WBD (step 905 ) by using the document.body.innerHTML property.
- Annotation software 170 wraps the existing DHTML layers to a fix-sized DHTML layer (step 910 ) by inserting a ⁇ DIV> (new DHTML layer) tag before the contents of the original WBD and setting its CSS STYLE properties with “position:absolute; width: ⁇ width_of_browser>”.
- a close ⁇ /DIV> tag is inserted at the end of the WBD's document.body element to keep the WBD valid. Inserting the DIV layer effectively tells IE to render (i.e., layout the contents of the WBD into the browser) all HTML inside the DIV layer within a particular width.
- Adding the DIV tag freezes a significant number of WBDs in their entirety, but WBDs that utilize CSS or DHTML may still contain unfrozen elements.
- annotation software 170 examines the properties of the document.body element (step 915 ), which is the root of the tree. It determines if this body element contains any properties that could cause the element to become unfrozen (step 920 ), such as “position:absolute” or “centered”. The “position: absolute” property could cause an element to become unfrozen because it would not be positioned relative to the newly inserted fixed-sized DIY layer.
- annotation software 170 proceeds to step 930 to examine any children elements. If these properties do exist (“yes” branch of step 920 ), they are modified to freeze the element (step 925 ) by using the “position:relative” or “normal” properties. If no children elements are found to exist (“no” branch of step 930 ), the method terminates (step 940 ). If any children elements do exist (“yes” branch of step 930 ), their properties are examined (step 935 ) and the same process (step 920 and step 925 ) is recursively repeated until all children elements in the tree have been examined and, if applicable, modified.
- FIG. 11 is a flowchart of steps for drawing into a Web browser 160 in accordance with an exemplary embodiment of the present invention.
- the method starts when user 200 views a new WBD 1010 that user 200 would like to annotate (step 1100 ).
- Annotation software 170 creates a new annotation record 500 to capture information about user 200 's annotations on WBD 1010 (step 1105 ).
- Annotation software 170 next overlays a blank image file 1000 on top of a WBD 1010 (step 1110 ), as shown in FIG. 10.
- annotation software 170 waits for user 200 to initiate an annotation event, which comprises drawing, adding a text note, or adding an audio note to WBD 1010 (step 1120 ).
- annotation software 170 accesses the display mechanism for the entire computer screen (step 1125 ). Since this would enable user 200 to place the annotation element anywhere on the entire computer screen, annotation software 170 restricts user 200 's annotation to the boundaries of Web browser 160 (step 1130 ).
- annotation image is appended to image file 1000 , so when annotation software 170 signals Web browser 160 to reload WBD 1010 (step 1140 ), the newly integrated annotated WBD 800 is displayed. This seamless process continues until user 200 leaves the annotated WBD 800 (“no” branch of step 1115 ), at which time the process ends (step 1145 ).
- One exemplary embodiment in accordance with the present invention uses the IE implementation of the DOM in combination with CSS and DHTML technology.
- the method starts when user 200 views a new WBD 1010 that user 200 would like to annotate (step 1100 ).
- annotation software 170 creates a new annotation record 500 in annotation database 280 to capture information about user 200 's annotations on WBD 1010 (step 1105 ).
- annotation software 170 sends all annotation-related information to annotation repository 240 , this information may also be stored in temporary storage device 140 or resident storage device 150 for efficiency reasons.
- annotation software 170 creates a unique identifier for WBD 1010 in the annotation ID 510 field of annotation record 500 .
- Annotation software 170 places the Internet address of unannotated WBD 1010 in the original WBD URL 515 field, places a time and date stamp into time/date stamp 530 field, and copies WBD 1010 into annotation database 280 , storing its location in the pointer to original WBD 540 field.
- Annotation software 170 also creates in annotation database 280 a default-sized image file, and stores its location in pointer to image file 545 .
- Annotation software 170 next overlays the standard-format (e.g., tiff, gif, or png) blank image file 1000 on top of WBD 1010 (step 1110 ), as shown in FIG. 10.
- This is accomplished by creating a new DHTML layer in WBD 1010 using the ⁇ DIV> HTML tag, and inserting a standard ⁇ IMG> HTML tag in the new DHTML layer to incorporate the blank image file 1000 .
- the image file 1000 is set to be transparent in locations where no annotation is positioned. Transparency is a standard provision of many file formats, including those enumerated above.
- annotation software 170 waits for user 200 to initiate an annotation event, which comprises drawing an ink-mark 810 , drawing a highlight-mark 815 , adding a text annotation or adding an audio dictation (step 1120 ).
- annotation software 170 acquires the global graphics context of the entire computer screen (step 1125 ). This global graphics context is accessible because it is maintained by the operating system, which may comprise, among others, Microsoft Windows or NT, MacOS, or some variation of UNIX. Since this access would enable user 200 to annotate anywhere on the screen through standard operating system calls, annotation software 170 clips user 200 's annotation element so that it remains within the boundaries of Web browser 160 (step 1130 ).
- annotation software 170 appends technical information about the annotation into annotation record 500 (step 1135 ).
- annotation image is appended to image file 1000 referenced by a pointer to image file 545 .
- Annotation software 170 positions the annotation element so that the location of the drawing marks in image file 1000 corresponds to the location of the drawing marks that user 200 made on the screen.
- Annotation software 170 creates a new stroke record 600 in stroke database 290 for every mark that user 200 draws into Web browser 160 .
- annotation software 170 For each stroke record 600 , annotation software 170 generates a unique ID number for stroke ID 610 , and adds that ID number to the list of stroke IDs 550 of the associated annotation record 500 .
- Annotation repository 240 stores the appropriate values for brush width 620 , brush height 630 , brush shape 640 , brush color 650 , and brush opacity 660 , and stores the data points or coordinates of the annotation stroke in the list of points 670 .
- annotation software 170 may store into stroke record 600 information extracted through the DOM like the current scroll position of WBD 1010 and the size of Web browser 200 's window, along with number of direction changes, length of stroke, horizontal and vertical dot products, and time elapsed from start to end of stroke.
- Annotation software 170 creates a new note record 700 in note database 295 for every text-based note or audio annotation that user 200 creates. For each note record 700 , annotation software 170 generates a unique ID number for note ID 710 , and adds that ID number to the list of note IDs 555 of the associated annotation record 500 .
- Annotation repository 240 stores the type of note in note type 720 , and the text of the note in note text 730 . If user 200 associates an audio annotation with the note, the audio annotation is stored in an audio file in streaming audio format (e.g., wav., .mp3, RealAudio) in note database 295 , and its location is stored in a pointer to audio file 740 .
- streaming audio format e.g., wav., .mp3, RealAudio
- image file 1000 which is overlaid on top of WBD 1010 , is updated with the new annotation image
- annotation software 170 signals Web browser 160 to reload WBD 1010 (step 1140 )
- the newly integrated annotated WBD 800 is displayed. This process continues until user 200 leaves the annotated WBD 800 (“no” branch of step 1115 ), at which time the process ends (step 1145 ).
- This entire process from on-screen ink to in-browser ink is seamless, and transparent to user 200 .
- standards-compliant Web browsers 160 are required to pass events (e.g., keyboard strokes, mouse clicks, etc.) from the lowest element in the WBD's element tree, up the tree, and eventually to the root element (i.e., document.body element). Since the image file 1000 created by annotation software 170 overlays the prior top-most WBD layer, it blocks input device 120 events (e.g., mouse clicks) from reaching the original unannotated WBD 1010 . Thus, the present invention “bums a hole” centered around user 200 's input device pointer (i.e., cursor) in the image file 1000 layer, so that input device 120 events can find their way to original. WBD 1010 below.
- events e.g., keyboard strokes, mouse clicks, etc.
- the present invention “bums a hole” centered around user 200 's input device pointer (i.e., cursor) in the image file 1000 layer, so that input device 120 events can find their way to original. WBD 1010 below
- FIG. 13 is a flowchart of steps for passing Web browser events through annotations in accordance with an exemplary embodiment of the present invention.
- This method commences when user 200 views a new WBD 1010 (step 1300 ).
- Annotation software 170 inserts multiple versions of the same image file 1000 on top of WBD 1010 (step 1305 ) and then starts to monitor input device 120 movements (step 1310 ).
- annotation software 170 dynamically clips the viewable rectangular portion of each image file 1000 in such a way that no part of any image file 1000 is visible at the point directly beneath input device 120 (step 1320 ).
- the clipping rectangle of image file 1000 determines which portion of image file 1000 is visible. This is illustrated in FIG.
- One exemplary mouse-driven embodiment in accordance with the present invention uses the IE implementation of the DOM in combination with CSS and DHTML technology.
- This method commences when user 200 views a new WBD 1010 (step 1300 ).
- annotation software 170 initially creates four identical DHTML layers containing the full image file 1000 , and inserts them into WBD 1010 (step 1305 ).
- the four layers are inserted by using the ⁇ DIV> tag, and, using CSS properties, they are positioned absolutely at the top-left corner of WBD 1010 so that they cannot be resized.
- Annotation software 170 then inserts a hook into WBD 1010 's onmousemove( ) handler (step 1310 ).
- Web browser 160 notifies annotation software 170 through this handler that the mouse has moved (step 1315 )
- annotation software 170 dynamically changes, through DHTML, the clip property of the four instantiations of image file 1000 so that no image is displayed directly underneath the mouse (step 1320 ). This method does not end, it just restarts when user 200 views a different WBD 1010 .
- the present invention still freezes the WBD as an initial step, but the WBD is annotated through the use of component object technology.
- Component objects, or control objects are part of a component framework that enables these objects to become embedded within documents (including WBDs) to communicate with one another and with the framework.
- Component object framework implementations vary widely.
- FIG. 14 is a flowchart of steps for drawing into a Web browser 160 via a control object in accordance with an exemplary embodiment of the present invention.
- the method starts when user 200 views a new WBD 1010 that user 200 would like to annotate (step 1400 ).
- Annotation software 170 creates a new annotation record 500 to capture information about user 200 's annotations on WBD 1010 (step 1405 ).
- Annotation software 170 next inserts a control object into Web browser 160 (step 1410 ).
- annotation software 170 waits for user 200 to initiate an annotation event, which comprises drawing, adding a text note, or adding an audio note to WBD 1010 (step 1420 ).
- annotation software 170 enables the control object to capture input device 120 's movements (step 1425 ), and places the annotation element on WBD 1010 in response to input device 120 's movements (step 1430 ).
- annotation software 170 disables the control object from capturing input device 120 's movements (step 1435 ), and appends technical annotation information (e.g., vector stroke information, data representing annotation attributes, etc.) to annotation record 500 (step 1440 ).
- technical annotation information e.g., vector stroke information, data representing annotation attributes, etc.
- annotation software 170 signals Web browser 160 to reload WBD 1010 (step 1445 )
- the newly annotated WBD 800 is displayed. This seamless process continues until user 200 leaves the annotated WBD 800 (“no” branch of step 1415 ), at which time the process ends (step 1450 ).
- One exemplary embodiment in accordance with the present invention makes use of ActiveX control technologies available for IE.
- ActiveX control technologies build on previous Microsoft Windows technologies, including COM (“Component Object Model”) and OLE (Object Linking and Embedding”), and allow programmers to create “Internet aware” controls.
- a control in the most basic sense is a GUI (“graphical user interface”) widget such as a button, scrollbar, or text entry area. Normally each control has a separate window, which is a rectangular portion of the computer screen in which drawing can be performed.
- GUI graphical user interface
- ActiveX controls can be “windowless,” which result in unusually shaped controls and transparency. This transparency allows browser events to pass directly through the control, without the “hole burning” techniques explained above.
- the method according to this embodiment starts when user 200 views a new WBD 1010 that user 200 would like to annotate (step 1400 ).
- annotation software 170 creates a new annotation record 500 in annotation database 280 to capture information about user 200 's annotations on WBD 1010 (step 1405 ).
- annotation software 170 sends all annotation-related information to annotation repository 240 , this information may also be stored in temporary storage device 140 or resident storage device 150 for efficiency reasons.
- annotation software 170 creates a unique identifier for WBD 1010 in the annotation ID 510 field of annotation record 500 .
- Annotation software 170 places the Internet address of unannotated WBD 1010 in the original WBD URL 515 field, places a time and date stamp into time/date stamp 530 field, and copies WBD 1010 into annotation database 280 , storing its location in the pointer to original WBD 540 field.
- Annotation software 170 next inserts a control object into Web browser 160 (step 1410 ). This is accomplished through COM interfaces supported by IE. Annotation software 170 initially sets the ActiveX control object to be completely transparent, and positions it at the top-left corner of Web browser 160 . The initial size of the control is arbitrarily small (e.g., 20 pixels square).
- annotation software 170 waits for user 200 to initiate an annotation event, which comprises drawing an ink-mark 810 , drawing a highlight-mark 815 , adding a text annotation or adding an audio dictation (step 1420 ).
- annotation software 170 enables the control object to capture input device 120 's movements through ActiveX control's EnableCapture method (step 1425 ).
- the ActiveX control inherently resizes itself as necessary to fit all of user 200 's strokes inside its boundaries.
- annotation software 170 places the annotation element onto the computer screen in response to input device 120 's movements (step 1430 ), and then disables the control object from capturing input device 120 movements (step 1435 ).
- annotation software 170 appends technical information about the annotation into annotation record 500 (step 1440 ).
- annotation software 170 does not need to store an annotation image file to be superimposed over the actual WBD. Instead, the ActiveX object uses the vector stroke data stored in stroke database 290 to re-form, on screen, the stroke image.
- annotation software 170 may still construct the appropriate image file for storage in annotation repository 240 , in order to allow any person on any machine access to the annotated WBD's 800 .
- annotation software 170 creates a new stroke record 600 in stroke database 290 for every mark that user 200 draws into Web browser 160 .
- annotation software 170 For each stroke record 600 , annotation software 170 generates a unique ID number for stroke ID 610 , and adds that ID number to the list of stroke IDs 550 of the associated annotation record 500 .
- Annotation repository 240 stores the appropriate values for brush width 620 , brush height 630 , brush shape 640 , brush color 650 , and brush opacity 660 , and stores the data points or coordinates of the annotation stroke in the list of points 670 .
- annotation software 170 may store into stroke record 600 information extracted through the DOM like the current scroll position of WBD 1010 and the size of Web browser 200 's window, along with number of direction changes, length of stroke, horizontal and vertical dot products, and time elapsed from start to end of stroke.
- Annotation software 170 creates a new note record 700 in note database 295 for every text-based note or audio annotation that user 200 creates. For each note record 700 , annotation software 170 generates a unique ID number for note ID 710 , and adds that ID number to the list of note IDs 555 of the associated annotation record 500 .
- Annotation repository 240 stores the type of note in note type 720 , and the text of the note in note text 730 . If user 200 associates an audio annotation with the note, the audio annotation is stored in an audio file in streaming audio format (e.g., .wav., .mp3, RealAudio) in note database 295 , and its location is stored in pointer to audio file 740 .
- streaming audio format e.g., .wav., .mp3, RealAudio
- annotation software 170 signals Web browser 160 to reload WBD 1010 , causing the ActiveX object to use the vector stroke data to display the newly annotated WBD 800 .
- This entire process continues until user 200 leaves the annotated WBD 800 (“no” branch of step 1415 ), at which time the process ends (step 1450 ).
- the process from on-screen ink to in-browser ink is seamless, and transparent to user 200 .
- the present invention acts as an online notebook/scrapbook in the way it collects and organizes WBDs.
- Standard browsers enable WBDs to be collected (e.g., via “favorites” or “bookmarks”), but annotation repository 240 allows users 200 to mark WBDs for collection simply by adding annotations. Any time user 200 marks a WBD, annotation software 170 sends the information from user computer 100 to annotation repository 240 in the background, so as not to disrupt user 200 from browsing the Internet 230 .
- Annotation software 170 provides user 200 with a margin inside Web browser 160 in which to group thumbnails (i.e., miniaturized images) of annotated WBDs 800 .
- FIG. 15 illustrates a thumbnail margin in accordance with an exemplary embodiment of the present invention.
- annotation software 170 automatically generates a thumbnail 1515 of the newly annotated WBD 800 and displays it in margin 1510 .
- User 200 may assign each thumbnail 1515 a user-defined category 1520 , which is listed along the left border of margin 1510 .
- annotation repository 240 generates each thumbnail using standard 2D image processing techniques, and stores each file containing the thumbnail image into annotation database 280 , along with the file location in pointer to thumbnail file 548 of the associated annotation record 500 .
- Annotation repository 240 stores the user-defined category in category 420 of the associated folder record 400 , making sure the associated annotation record 500 is linked to the list of annotation IDs 430 .
- the present invention also allows users 200 to annotate blank WBDs.
- Annotating blank WBDs is no different that annotating WBDs with preexisting content.
- FIG. 15A which is an exemplary embodiment of an online notebook/scrapbook
- users 200 have a limitless forum in which to collect, organize and store their notes.
- these notes may comprise colored marks, highlighting, text-based windows and audio annotations.
- the notes may be placed into any user-defined category, and may be viewed and searched as described below.
- the present invention provides user 200 with an intuitive Web-based interface for accessing, viewing and searching the WBDs that user 200 has annotated.
- This interface enables user 200 to search any annotated WBD 800 by its annotation attributes, which include, among others, time of annotation (e.g., last week, today, etc.), color of ink-mark 810 , shape of annotation (e.g., user-defined star or underline), category 1520 , author, and Website.
- An embodiment of the search interface 1600 in accordance with the present invention is illustrated in FIG. 16.
- annotation software 170 implements viewing and searching of annotated WBDs 800 by comparing user 200 's search parameters 1610 , which user 200 enters through search interface 1600 of Web browser 160 , with the associated fields of the relevant records in annotation repository 240 . For example, if user 200 wants to view all annotated WBDs 800 assigned a specific category 1520 , annotation software 170 searches the category 420 field of folder record 400 in user folder database 270 for matches. If category 420 matches the search criteria, annotation software 170 displays thumbnails 1515 of the matched annotated WBDs 800 by following the pointer to thumbnail files 548 of the annotation records 500 linked to the associated list of annotation IDs 430 .
- annotation software 170 receives the ink-mark 810 from user 200 through search interface 1600 , stores its graphical attributes in a temporary stroke record 6900 in temporary storage device 140 , and searches the stroke records 600 in stroke database 290 for matches. If stroke records 600 match the search criteria, annotation software 170 again displays thumbnails 1515 of the matched annotated WBDs 800 in Web browser 160 .
- a specific ink-mark 810 e.g., an asterisk or star
- the present invention also allows users 200 to send an annotated WBD 800 to someone else over the Internet 230 .
- user 200 can e-mail an annotated WBD 800 link to others so they can view annotated WBD 800 directly on their Web browser 160 , even if the others do not have annotation software 170 .
- annotation software 170 creates a unique Internet address for annotated WBD 800 and inserts it into a draft of an e-mail.
- Annotation software 170 generates this address by executing a standard hash function on the contents of the annotated WBD 800 and stores it in URL content hash 520 of the associated annotation record 500 .
- This address is mapped to the annotated WBD's 800 location in annotation database 280 .
- User 200 may then type a message in the e-mail, and send both the message and the link to someone else.
- annotation repository 240 receives the request and sends annotated WBD 800 to the recipient's Web browser 160 for viewing.
- Annotated WBD 800 still contains its original active links and properties, and recipient does not need annotation software 170 installed to view annotated WBD 800 .
- the present invention provides users with many novel interface techniques. These techniques include using dog-ears and its associated navigation tools, splitting pages, turning pages, selecting and copying various portions of a WBD, and marking menus suited for right-handed or left-handed users 200 .
- gestures are strokes made by input device 120 that issue commands to Web browser 160 .
- the present invention utilizes three types of gestures: single stroke gestures, multi-stroke gestures, and dynamic gestures.
- Dynamic gestures refer to strokes that issue commands during the drawing of the stroke.
- FIG. 17 is a flowchart of steps for recognizing gestures in accordance with an exemplary embodiment of the present invention.
- a multi-stroke gesture comprises two strokes.
- the process starts when user 200 begins drawing a stroke with input device 120 in Web browser 160 (step 1700 ).
- Annotation software 170 continuously monitors the stroke to determine when it has completed (step 1705 ).
- annotation software 170 determines whether a dynamic gesture is being employed through a process known eager recognition (step 1710 ). If a dynamic stroke is recognized (“yes” branch of step 1710 ), then annotation software 170 invokes the appropriate command to Web browser 160 (step 1715 ) before resuming stroke monitoring.
- annotation software 170 builds a vector data matrix of the stroke features (e.g., number of direction changes, length of stroke, horizontal and vertical dot products, x and y positioning, time elapsed from start to end of stroke, and beginning and end points) in temporary storage device 140 (step 1720 ).
- the stroke features e.g., number of direction changes, length of stroke, horizontal and vertical dot products, x and y positioning, time elapsed from start to end of stroke, and beginning and end points
- Annotation software 170 recognizes a gesture by comparing the vector data matrix with recognizer objects, which are stored matrices associated with each multi-stroke and single stroke gesture utilized by annotation software 170 .
- Annotation software first compares the vector data matrix with its recognizer objects for single stroke gestures (step 1725 ). If the stroke is recognized (“yes” branch of step 1725 ), annotation software 170 invokes the appropriate command to Web browser 160 (step 1730 ), and the process ends (step 1755 ). If the stroke is not recognized as a single stroke gesture (“no” branch of step 1725 ), annotation software 170 compares the vector data matrix with its recognizer objects for the initial stroke of multi-stroke gestures (step 1735 ).
- annotation software 170 waits for the next stroke (step 1740 ) and builds a corresponding vector data matrix of stroke features (step 1745 ). Since this embodiment comprises two-stroke multi-stroke gestures, the next stroke is the final stroke of the multi-stroke gesture. If the final stroke is recognized (“yes” branch of step 1750 ), then annotation software 170 invokes the appropriate command to Web browser 160 (step 1730 ), and the process ends (step 1755 ). If the initial stroke is not recognized as part of a multi-stroke gesture (“no” branch of step 1735 ), or the final stroke is not recognized as part of a multi-stroke gesture (“no” branch of step 1750 ), the process ends (step 1755 ).
- dog-ears provide a novel way to organize and index annotated WBDs 800 in a Web browser 160 .
- dog-ear 1800 marks annotated WBD 800 for later retrieval and resembles a folded corner of annotated WBD 800 .
- Users 200 may search through previously dog-eared annotated WBDs 800 by using the navigation widget 1900 , as shown in FIG. 19.
- Each rectangle in navigation widget 1900 represents an annotated WBD 800
- the annotated WBDs 800 with dog-ears 1800 have a small triangle to the right of their representative rectangle.
- annotation software 170 displays a thumbnail 1515 of the associated annotated WBD 800 to the left of navigation widget 1900 , and displays the associated category 1520 , if it exists, above the thumbnail 1515 .
- FIG. 20 is a flowchart of steps for creating, deleting, and navigating through dog-ears 1800 in accordance with an exemplary embodiment of the present invention.
- the method starts in step 2000 . If user 200 wishes to create a dog-ear 1800 (“yes” branch of step 2005 ), user 200 issues a diagonal stroke gesture with input device 120 in the upper left-hand corner of the desired annotated WBD 800 (step 2010 ). If user 200 chooses to navigate through existing dog-eared annotated WBDs 800 (“yes” branch of step 2015 ), user 200 may utilize either navigation widget 1900 or input device 120 gestures.
- step 2020 If user 200 chooses the navigation widget 1900 (“yes” branch of step 2020 ), then user 200 selects the desired annotated WBD 800 identified by the small triangle (step 2025 ), as shown in FIG. 19. If user 200 chooses to use input device 120 gestures, then user 200 issues simple vertical strokes to view adjacent dog-eared annotation WBDs 800 (step 2030 ), as shown in FIG. 21.
- the circular end of the flip to dog-ear gesture representation in FIG. 21 denotes where input device 120 activates the stroke.
- the left gesture representation in FIG. 21 comprising a downward stroke may issue the command to annotation software 170 to flip to the following dog-eared annotated WBD 800
- step 21 comprising an upward stroke may issue the command to annotation software 170 to flip to the previous dog-eared annotated WBD 800 .
- user 200 decides to delete a dog-ear 1800 (“yes” branch of step 2035 )
- user 200 repeats the diagonal stroke gesture of step 2010 (step 2040 ).
- the gesture in step 2040 could operate in the reverse direction (i.e., issue the diagonal stroke toward the upper left-hand corner of annotated WBD 800 ).
- One exemplary embodiment in accordance with the present invention uses the IE implementation of the DOM in combination with CSS and DHTML technology.
- annotation software 170 places a “true” value in the dog-ear 535 field of the associated annotation record 500 .
- annotation software places the small triangle denoting a dog-ear 1800 next to each rectangle associated with annotation records 500 with a “true” value in the dog-ear 535 field.
- flip to dog-ear gestures as shown in FIG.
- annotation software 170 searches forward or backward in annotation database 280 to select the annotation records 500 containing a “true” value in the dog-ear 535 field. And when user 200 deletes a dog-ear 1800 from annotated WBD 800 (step 2040 ), annotation software 170 places a “false” value in the dog-ear 535 field of the associated annotation record 500 .
- the present invention employs novel page split gestures, as shown in FIG. 22, that divide a WBD either horizontally or vertically.
- the left gesture representation in FIG. 22 comprising a jagged horizontal stroke may issue the command to annotation software 170 to split a WBD horizontally
- the right gesture representation in FIG. 22 comprising a jagged vertical stroke may issue the command to annotation software 170 to split a WBD vertically.
- Annotation software 170 may use the IE implementation of the DOM in combination with CSS and DHTML technology to split the WBD using standard browser frame technology.
- the present invention employs novel single stroke and dynamic page turning gestures, as shown in FIG. 23 and FIG. 24, that flip to the previously or subsequently viewed WBD.
- the top gesture representation in FIG. 23 comprising a single left horizontal stroke may issue the command to annotation software 170 to flip to a previously viewed WBD
- the bottom gesture representation in FIG. 23 comprising a single right horizontal stroke may issue the command to annotation software 170 to flip to a subsequently viewed WBD.
- Annotation software 170 may turn the pages by using standard browser calls.
- FIG. 25 is a flowchart of steps for turning multiple pages with a dynamic gesture in accordance with an exemplary embodiment of the present invention.
- the pages of the WBD turn faster or slower depending upon the speed of user 200 's circling input device 120 .
- a graphical representation of the dynamic gesture is illustrated in FIG. 24.
- the method for using the dynamic gesture starts in step 2500 .
- User 200 first activates input device 120 in step 2510 . If input device 120 is a mouse in one embodiment, user 200 satisfies this step by left-clicking the mouse. If input device 120 is a pen or stylus, user 200 satisfies this step by touching the pen or stylus to the touch screen.
- User 200 then moves input device 120 in a circular pattern to turn to consecutive pages (step 2520 ). Turning in a counter-clockwise direction may flip to previous pages, whereas turning in a clockwise direction may flip to subsequent pages. If user 200 wants to turn pages faster or slower (“yes” branch of step 2530 ), user 200 varies the speed of the circling motion accordingly (step 2540 ). In other words, if user 200 wants to flip through pages faster, user 200 would increase the rotational speed of input device 120 . Alternatively, if user 200 wants to flip through pages slower, user 200 would decrease the rotational speed of input device 120 . When user 200 reaches the desired page, user 200 deactivates input device 120 (step 2550 ). If input device 120 is a mouse, this is accomplished by user 200 releasing the click button. If input device 120 is a pen or stylus, this is accomplished by user 200 lifting the pen or stylus from the touch screen. This method ends in step 2560 .
- the present invention employs three novel selection gestures, as shown in FIG. 26.
- the left gesture representation in FIG. 26 comprising a closed loop stroke may issue the command to annotation software 170 to select the area inside the loop.
- the middle gesture representation in FIG. 26 comprising a bracket stroke may issue the command to annotation software 170 to select the area bound by the bracket's three sides with no boundary on the fourth side.
- the right gesture representation in FIG. 26 comprising two corner strokes issue the command to annotation software 170 to select the square area bound by the two edges.
- Annotation software 170 may use the IE implementation of the DOM in combination with CSS and DHTML technology to select these areas. Once the area is selected, user 200 may copy, move or paste the selection anywhere a typical graphical selection could be copied or pasted.
- FIG. 27 is a flowchart of steps for performing a shaking out a copy gesture in accordance with an exemplary embodiment of the present invention.
- the method starts in step 2700 .
- User 200 first uses input device 120 to select an object or area to be copied (step 2710 ). While retaining selection of the object, user 200 shakes the selection back and forth with input device 120 to create a copy of the selection (step 2720 ). Without deactivating input device 120 , which would deselect the object, user 200 drags the copy of the selection to the desired location (step 2730 ).
- Annotation software 170 may use the IE implementation of the DOM in combination with CSS and DHTML technology to shake out the copy.
- FIG. 28 illustrates a tap and dwell menu in accordance with a pen-based embodiment of the present invention.
- a standard marking menu 2810 can be summoned by any type of gesture, such as a double tap with the pen, a dwell with the pen (holding down the pen without lifting it) or a tap with the stylus button pressed.
- the regular marking menu 2810 then appears in the place the gesture was made, allowing user 200 to choose a menu item 2840 a - 2840 d without having to focus attention to another area of the screen as with traditional static menus.
- the menu items 2840 a - 2840 d are laid out radially rather than as a list, and allow imprecise picks. Once user 200 is familiar with the arrangement of the menu, it is easy to make a selection without even reading the menu, since user 200 only needs to know which direction to move the pen 2850 from the location of the gesture that summoned the menu.
- the marking menus of the present invention display menu items 2840 a - 2840 d in the area that is most visible to user 200 , taking into account the positioning of user 200 's hand. For instance, a right-handed user 200 would use the right handed marking menu 2820 , whereas a left-handed user 200 would use the left handed marking menu 2830 .
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Computer users may integrate any annotation, including ink, highlighter, text-based notes and audio, directly into a Web-based document (WBD) displayed by a Web browser. This integration enables others to view the personalized annotated WBD, which retains its original active links and properties, over the Internet without the need for specialized software. Annotations are integrated into WBDs by freezing the WBD, overlaying an image file containing the annotations onto the WBD, and enabling browser events to pass through the image layer. Annotations may also be integrated into WBDs by using component object technology. By collecting and organizing annotated WBDs, users can be provided with an intuitive Web-based interface for accessing, viewing and searching the annotated WBDs. Users may annotate blank WBDs, effectively converting their Web browsers into online notebooks/scrapbooks. Users may also be provided with many interface techniques, such as dog-ears and its associated navigation tools, splitting pages, turning pages, selecting and copying various portions of a WBD (including shaking out a copy), and marking menus suited for right-handed or left-handed users.
Description
- This application is a continuation of prior U.S. application Ser. No. 09/521,022, filed Mar. 7, 2000, the entire contents of which are incorporated herein by reference.
- The present invention relates to a system and method of marking, organizing, and searching Web-based documents.
- Standard desktop word processing applications enable computer users to create and edit text-based documents. To provide computer users with more flexibility in the editing and markup of these documents, software utilities exist that integrate electronic sticky notes and users' on screen drawing directly into the document. This type of document annotation enables users to mark and view documents on screen as if the documents were in front of them on paper.
- However, the current annotation system requires users to annotate documents compatible with specific word processing applications that lack portability. For example, if a user wanted to send another person an annotated document, the user would have to e-mail the document as an attachment and hope the recipient has the same application software to view the document.
- Accordingly, there is a need in the art for a simple method and system of annotating and collecting Web-based documents. There is a need for the integration of any type of annotation, including text, ink, highlighter and audio, directly into Web-based documents, such that any person with a Web browser may view the annotations, with or without the software used to create the annotations. There is also a need for a method and system of annotating and collecting blank Web-based documents, effectively converting a Web browser into an online notebook/scrapbook.
- The present invention relates to the integration of any annotation, including ink, highlighter, text-based notes and audio, directly into a Web-based document (WBD) displayed by a Web browser. This integration enables others to view the personalized annotated WBD, which retains its original active links and properties, over the Internet without the need for specialized software. Annotations are integrated into WBDs by freezing the WBD, overlaying an image file containing the annotations onto the WBD, and enabling browser events to pass through the image layer. Annotations may also be integrated into WBDs by using component object technology. The present invention collects and organizes annotated WBDs, and provides users with an intuitive Web-based interface for accessing, viewing and searching the annotated WBDs. Users may annotate blank WBDs, effectively converting their Web browsers into online notebooks/scrapbooks. The present invention also provides users with many novel interface techniques, such as dog-ears and its associated navigation tools, splitting pages, turning pages, selecting and copying various portions of a WBD (including shaking out a copy), and marking menus suited for right-handed or cleft-handed users.
- FIG. 1 is a block diagram depicting the internal structure of a user's computer in accordance with an exemplary embodiment of the present invention.
- FIG. 2 is a block diagram depicting a network architecture that facilitates the storing, searching and transfer of annotated WBDs in accordance with an exemplary embodiment of the present invention.
- FIG. 3 depicts a data structure of a user record that is used to store information in a user information database in accordance with an exemplary embodiment of the present invention.
- FIG. 4 depicts a data structure of a folder record that is used to store information in a user folder database in accordance with an exemplary embodiment of the present invention.
- FIG. 5 depicts a data structure of an annotation record that is used to store information in an annotation database in accordance with an exemplary embodiment of the present invention.
- FIG. 6 depicts a data structure of a stroke record that is used to store information in a stroke database in accordance with an exemplary embodiment of the present invention.
- FIG. 7 depicts a data structure of a note record that is used to store information in a note database in accordance with an exemplary embodiment of the present invention.
- FIG. 8 depicts an annotated WBD in accordance with an exemplary embodiment of the present invention.
- FIG. 8A depicts a pop-up menu from an annotation toolbar in accordance with an exemplary embodiment of the present invention.
- FIG. 9 is a flowchart of steps for freezing WBD content in accordance with an exemplary embodiment of the present invention.
- FIG. 10 depicts the imposition of an image file onto a WBD in accordance with an exemplary embodiment of the present invention.
- FIG. 11 is a flowchart of steps for annotating into a Web browser in accordance with an exemplary embodiment of the present invention.
- FIG. 12 is a block diagram depicting the structure of WBD layers that enable Web browser events to pass through annotations in accordance with an exemplary embodiment of the present invention.
- FIG. 13 is a flowchart of steps for passing Web browser events through annotations in accordance with an exemplary embodiment of the present invention.
- FIG. 14 is a flowchart of steps for drawing into a Web browser via a control object in accordance with an exemplary embodiment of the present invention.
- FIG. 15 illustrates a thumbnail margin in accordance with an exemplary embodiment of the present invention.
- FIG. 15A illustrates an online notebook/scrapbook in accordance with an exemplary embodiment of the present invention.
- FIG. 16 illustrates a search interface in accordance with an exemplary embodiment of the present invention.
- FIG. 17 is a flowchart of steps for recognizing gestures in accordance with an exemplary embodiment of the present invention.
- FIG. 18 depicts a dog-eared WBD in accordance with an exemplary embodiment of the present invention.
- FIG. 19 depicts a navigation widget in accordance with an exemplary embodiment of the present invention.
- FIG. 20 is a flowchart of steps for creating, deleting, and navigating through dog-ears in accordance with an exemplary embodiment of the present invention.
- FIG. 21 depicts a flip to dog-ear gesture representation in accordance with an exemplary embodiment of the present invention.
- FIG. 22 depicts a page split gesture representation in accordance with an exemplary embodiment of the present invention.
- FIG. 23 depicts a page turn gesture representation in accordance with an exemplary embodiment of the present invention.
- FIG. 24 depicts a spiral page-turning gesture representation in accordance with an exemplary embodiment of the present invention.
- FIG. 25 is a flowchart of steps for turning multiple pages with a dynamic gesture in accordance with an exemplary embodiment of the present invention.
- FIG. 26 depicts three selection gesture representations in accordance with an exemplary embodiment of the present invention.
- FIG. 27 is a flowchart of steps for performing a shaking out a copy gesture in accordance with an exemplary embodiment of the present invention.
- FIG. 28 illustrates a tap and dwell menu in accordance with a pen-based embodiment of the present invention.
- Introduction
- The present invention fulfills this need in the art by allowing computer users to integrate any annotation, including ink, highlighter, text-based notes and audio, directly into a Web-based document (WBD) displayed by a Web browser. Users may create annotations on preexisting WBDs or new blank WBDs, and can collect and organize annotated WBDs through an intuitive Web-based interface using many novel interface techniques.
- Infrastructure
- FIG. 1 is a block diagram depicting the internal structure of a user's computer in accordance with an exemplary embodiment of the present invention. User computer100 may be a personal computer, handheld personal digital assistant (“PDA”), or any other type of microprocessor-based device. User computer 100 may include a
processor 110,input device 120,output device 130,temporary storage device 140,resident storage device 150, andcommunication device 180.Input device 120 may include a keyboard, mouse, pen-operated touch screen, voice-recognition device, and any other device that provides input from a user.Output device 130 may include a monitor, printer, disk drive, speakers, or any other device that provides tangible output to user.Temporary storage device 140 may include RAM, caches, and any other volatile storage medium that temporarily holds data while processing it.Resident storage device 150 may include a hard drive, CD-ROM drive, tape drive, removable storage disk, or any other nonvolatile data storage medium.Annotation software 170 and software for aWeb browser 160 may reside inresident storage device 150.Annotation software 170 may include, among others, a Web browser plug-in, independent software program or a feature of an operating system.Web browser 160 may include, among others, Microsoft's Internet Explorer or Netscape Navigator.Communication device 180 may include a modem, network interface card, or any other device able to transmit and receive signals over a network. One skilled in the art would appreciate that the components of user computer 100 may also be connected wirelessly, possibly through an infrared connection. - FIG. 2 is a block diagram depicting a network architecture that facilitates the storing, searching and transfer of annotated WBDs in accordance with an exemplary embodiment of the present invention. According to one embodiment, after user200 annotates a WBD through
Web browser 160,annotation software 170 transmits it to annotation repository 240 (i.e., server arrangement) via network link 210 a,Internet service provider 220, network link 210 b,Internet 230, and network link 210 c. Network link 210 may include telephone lines, DSL, cable networks, T1 lines, ATM/SONNET, wireless networks, or any other arrangement that allows for the transmission and reception of network signals. It should be noted that, technically, user computer 100,Internet service provider 220 and Web server cluster 250 are also part of theInternet 230 because of their connectivity. - In an exemplary embodiment,
annotation repository 240 is a Website that receives the annotated WBD through its Web server cluster 250, which may comprise a collection of Web server computers working in tandem to distribute the load of network traffic. These Web servers include processors and memory for executing program instructions as well network interfaces.Annotation repository 240 also comprises, among other components,user information database 260,user folder database 270,annotation database 280,stroke database 290 andnote database 295. Those skilled in the art realize that these single-record databases may be represented in many different ways, such as individual tables in one or more relational databases. Although all annotation-related information is sent toannotation repository 240, this information may also be stored intemporary storage device 140 orresident storage device 150 for efficiency reasons. - FIG. 3 depicts a data structure of a user record that is used to store information in
user information database 260 in accordance with an exemplary embodiment of the present invention. Each user record represents a single unique user ofannotation repository 240, and a user record is created when a user 200 creates an account online. In particular, user record 300 includes a user ID 310 field, a user name 320 field, a user e-mail 330 field, a user password 340 field, and a list offolder IDs 350 field. User ID 310 contains an integer value that identifies each user record 300 inuser information database 260. User name 320 contains a unique ASCII string that represents each user 200 associated withannotation repository 240. User e-mail 330 contains a unique ASCII string that represents the e-mail address of each user 200 associated withannotation repository 240. User password 340 contains a unique ASCII string chosen for security purposes by each user 200 associated withannotation repository 240. The password may be encrypted using any standard UNIX utility, such as salt or crypt. And list offolder IDs 350 contains a linked list of references to records stored inuser folder database 270. - FIG. 4 depicts a data structure of a folder record that is used to store information in
user folder database 270 in accordance with an exemplary embodiment of the present invention. Each folder record contains a list of annotated WBDs that relate to a certain category for each user 200. In particular,folder record 400 includes afolder ID 410 field, a category 320 field, and a list ofannotation IDs 430 field.Folder ID 410 contains an integer value that identifies eachfolder record 400 inuser folder database 270. Category 420 contains an ASCII string that describes the category of associated annotated WBDs. And list ofannotation IDs 430 contains a linked list of references to records stored inannotation database 280. - FIG. 5 depicts a data structure of an annotation record that is used to store information in
annotation database 280 in accordance with an exemplary embodiment of the present invention. Each annotation record contains all pertinent information relating to the appearance and make-up of a single annotated WBD associated withannotation repository 240. In particular,annotation record 500 includes anannotation ID 510 field, anoriginal WBD URL 515 field, aURL content hash 520 field, anannotation size 525 field, a time/data stamp 530 field, a dog-ear 535 field, a pointer tooriginal WBD 540 field, a pointer to image file 545 field, a pointer tothumbnail file 548, a list ofstroke IDs 550 field, and a list ofnote IDs 555 field. -
Annotation ID 510 contains an integer value that identifies eachannotation record 500 inannotation database 280.Original WBD URL 515 contains an ASCII string representing the Internet address of the unannotated WBD.URL content hash 520 contains an integer value that results from the execution of a standard hash function on the contents of the WBD.Annotation repository 240 uses this value to generate an Internet address for the annotated WBD that can be mapped to the annotated WBD's location inannotation database 280.Annotation size 525 contains an integer value representing the size in bytes of the annotated WBD. Time/date stamp 530 contains an ASCII string representing the time and date that user 200 generated the annotated WBD. Dog-ear 535 stores a boolean value representing whether annotated WBD is marked as a dog-ear (“true”) or not (“false”); the default value is “false.” Pointer tooriginal WBD 540 stores the file location of the unannotated WBD, pointer to image file 545 stores the file location of the image file containing the appearance of the annotations, and pointer to thumbnail file 548 stores the file location of the image file containing the miniaturized annotated WBD. List ofstroke IDs 550 contains a linked list of references to records stored instroke database 290, while list ofnote IDs 555 contains a linked list of references to records stored innote database 295. - If a great number of users200 annotate the same WBD (or similar versions of the same WBD with different advertisements),
annotation repository 240 in an exemplary embodiment can conserve disk space by storing “DIFF” files instead of the complete WBD multiple times inannotation database 280. DIFF files are generated by the standard UNIX utility diff, and contain only the different content between similar files or WBDs. Thus, pointer tooriginal WBD 540 could reference the original WBD once, and if subsequent users 200 annotate the same WBD, pointer tooriginal WBD 540 would then reference a much smaller DIFF file that contains the information later used in reconstructing the original WBD. - FIG. 6 depicts a data structure of a stroke record that is used to store information in
stroke database 290 in accordance with an exemplary embodiment of the present invention. Each stroke record contains all pertinent information relating to a single brush stroke generated by a user 200. In particular,stroke record 600 includes astroke ID 610 field, a brush width 620 field, a brush height 630 field, a brush shape 640 field, a brush color 650 field, a brush opacity 660 field, and a list ofpoints 670 field.Stroke ID 610 contains an integer value that identifies eachstroke record 600 instroke database 290. Brush width 620 and brush height 630 contain integer values that represent the pixel size of the brush width and height, respectively. Brush shape 640 stores an integer enumeration indicating whether the brush is square, round, or otherwise. Brush color 650 stores an integer value representing the red, green and blue components of the brush's color. Brush opacity 660 stores an integer value representing how the brush blends with its background. And list ofpoints 670 contains a list of x and y coordinates of the locations where user 200 draws onto the WBD. - FIG. 7 depicts a data structure of a note record that is used to store information in
note database 295 in accordance with an exemplary embodiment of the present invention. Each note record contains all pertinent information relating to text-based note and audio annotations. In particular,note record 700 includes anote ID 710 field, anote type 720 field, anote text 730 field, and a pointer toaudio file 740 field. NoteID 710 contains an integer value that identifies eachnote record 700 innote database 295. Notetype 720 contains a type enumeration that allows for standard yellow sticky notes, “thought” bubbles, rubber stamps, and other types of note appearances. Notetext 730 contains an ASCII string that represents the text that user 200 types into the note, and pointer toaudio file 740 stores the file location innote database 295 of an audio file associated withnote record 700. - Annotation
- FIG. 8 depicts an annotated WBD in accordance with an exemplary embodiment of the present invention.
Annotation software 170 enables user 200 to write and draw ink, highlighter and other marks withinput device 120, to incorporate text-based notes in small movable windows, and to add audio annotations directly into a WBD displayed byWeb browser 160. The result is an annotatedWBD 800 that can be sent to other people for viewing over theInternet 230, with or withoutannotation software 170 installed on the recipients' computers. - According to one embodiment,
annotation software 170 displays anannotation toolbar 805 along the bottom edge ofWeb browser 160.Annotation toolbar 805 allows, for example, user 200 to select an annotation tool and send an annotation link bye-mail. Users 200 may also access their account withannotation repository 240 and change their user preferences viaannotation toolbar 805. By clicking on the small arrow next to the pen button onannotation toolbar 805, a small pop-up menu appears, as shown in FIG. 8A, listingpen choice 830,highlighter choice 840,eraser choice 850, andpen options choice 860. - Selecting
pen choice 830 can turninput device 120 into an inking device that allows user 200 to underline, bracket, and draw any other type of ink-mark 810 directly onto annotatedWBD 800. Selectinghighlighter choice 840 can turninput device 120 into an inking device that allows user 200 to draw any type of highlight-mark 815 onto any part of annotatedWBD 800. And selecting erasechoice 850 can turninput device 120 into an erasing device that allows user 200 to remove any ink-mark 810 or highlight-mark 815 that exists on annotatedWBD 800. Penoptions choice 860 allows user 200 to customize certain features of the inking device, such as color and shape. - By clicking on the note button on
annotation toolbar 805, a smallmovable note window 820 appears on annotatedWBD 800 into which user 200 may type text. Thenote window 820 also contains along its bottom border an audioannotation menu bar 825, which allows user 200 to easily add an audio dictation to annotatedWBD 800. For example, when user 200 clicks on the record button (the round button on audio annotation menu bar 825), annotation software records sound until the stop button is pressed (the square button on audio annotation menu bar 825). To play the recording back, user 200 selects the play button (the triangle button on audio annotation menu bar 825). - Inking Technology
- Multiple underlying technologies enable user200 to annotate a WBD. In one exemplary embodiment,
annotation software 170 first freezes the WBD, so that resizingWeb browser 160 after annotating the WBD will not affect the positioning of the annotations with respect to the underlying WBD.Annotation software 170 then allows user 200 to annotate intoWeb browser 160 by inserting on top of the WBD a transparent image file that contains the annotations. And finally,annotation software 170 allows browser events to pass through the annotation image file so that user 200 has complete access to the underlying WBD. These technologies are integrated into the physical WBD, so that annotatedWBD 800 may be viewed by anyone with aWeb browser 160, with or withoutannotation software 170. - Freezing WBDs
- Since annotations are overlaid on the WBD, if, due to resizing,
Web browser 160 reflows text underneath the annotations, the annotation will not match up with the underlying WBD. Thus, freezing WBD content preventsWeb browser 160 from re-flowing text and images when user 200 resizesWeb browser 160, so that the positioning of any annotations will remain fixed with respect to the underlying WBD. - FIG. 9 is a flowchart of steps for freezing WBD content in accordance with an exemplary embodiment of the present invention. To freeze a WBD in general,
annotation software 170 first gains access to the content of the WBD (step 905). Since some WBDs are composed of different layers that may behave differently upon browser resizing,annotation software 170 wraps the existing WBD layers into one fix-sized layer (step 910). With all the layers wrapped, the next task is to examine the properties of the WBD elements (step 915). WBD elements, which encompass any content on the WBD (e.g., single word, paragraph, image, buttons implemented in JavaScript), may contain certain properties that cause the element to move during browser resizing. For instance, an element property may require the element to stay fixed to the size of the WBD no matter how the browser is sized. Therefore, if a WBD element contains properties that cause that element to become unfrozen (“yes” branch of step 920), then those properties are modified so that the element remains in a fixed position through browser resizing (step 925). Since WBD elements are organized in a tree-like fashion, with the root element at the top and all children below, the next inquiry is whether children elements exist (step 930). If children elements exist, their properties are similarly examined (step 935) and, if appropriate, modified (step 925), and the process repeats until all elements have been examined (“no” branch of step 930). - One exemplary embodiment in accordance with the present invention uses the Internet Explorer (“IE”) implementation of the Document Object Model (“DOM”) in combination with Cascading Style Sheets (“CSS”) and Dynamic-HTML (“DHTML”) World Wide Web technology. The Document Object Model is a platform-neutral and language-neutral specification that allows programs and scripts to dynamically access and update the content, structure and style of WBDs. CSS is a standard approved by the World-Wide-Web Consortium that allows WBD authors greater flexibility in specifying how their WBDs should be formatted inside a browser. For example, these style sheets make it possible to insert elements on a WBD that “snap” to the sides of a browser, akin to left or right justified text, so that they move with the browser window as it is resized. DHTML functionality allows WBD authors to create multiple overlaid layers of HTML inside a single WBD, and also enables WBDs to alter their content programmatically.
- The method according to this embodiment starts at step900. Through a combination of C++ and JavaScript,
annotation software 170 employs the DOM to access the contents of a WBD (step 905) by using the document.body.innerHTML property.Annotation software 170 wraps the existing DHTML layers to a fix-sized DHTML layer (step 910) by inserting a <DIV> (new DHTML layer) tag before the contents of the original WBD and setting its CSS STYLE properties with “position:absolute; width:<width_of_browser>”. A close </DIV> tag is inserted at the end of the WBD's document.body element to keep the WBD valid. Inserting the DIV layer effectively tells IE to render (i.e., layout the contents of the WBD into the browser) all HTML inside the DIV layer within a particular width. - Adding the DIV tag freezes a significant number of WBDs in their entirety, but WBDs that utilize CSS or DHTML may still contain unfrozen elements. To ensure that every element in the tree of WBD elements remains frozen upon window resizing,
annotation software 170 examines the properties of the document.body element (step 915), which is the root of the tree. It determines if this body element contains any properties that could cause the element to become unfrozen (step 920), such as “position:absolute” or “centered”. The “position: absolute” property could cause an element to become unfrozen because it would not be positioned relative to the newly inserted fixed-sized DIY layer. If no such properties exist (“no” branch of step 920),annotation software 170 proceeds to step 930 to examine any children elements. If these properties do exist (“yes” branch of step 920), they are modified to freeze the element (step 925) by using the “position:relative” or “normal” properties. If no children elements are found to exist (“no” branch of step 930), the method terminates (step 940). If any children elements do exist (“yes” branch of step 930), their properties are examined (step 935) and the same process (step 920 and step 925) is recursively repeated until all children elements in the tree have been examined and, if applicable, modified. - Annotating into the Browser
- Since most modem Web browsers internally maintain their own graphics contexts (buffers that enable the browsers to draw to the screen) and HTML rendering code, browser plug-in developers currently have no ability to enable drawing directly into a browser. Thus, the present invention overlays an active image file onto the WBD to simulate drawing directly into the browser, as shown in FIG. 10.
- FIG. 11 is a flowchart of steps for drawing into a
Web browser 160 in accordance with an exemplary embodiment of the present invention. In general, the method starts when user 200 views anew WBD 1010 that user 200 would like to annotate (step 1100).Annotation software 170 creates anew annotation record 500 to capture information about user 200's annotations on WBD 1010 (step 1105).Annotation software 170 next overlays ablank image file 1000 on top of a WBD 1010 (step 1110), as shown in FIG. 10. As long as thecurrent WBD 1010 is still displayed in Web browser 160 (“yes” branch of step 1115),annotation software 170 waits for user 200 to initiate an annotation event, which comprises drawing, adding a text note, or adding an audio note to WBD 1010 (step 1120). Once the annotation event is initiated (“yes” branch of step 1120),annotation software 170 accesses the display mechanism for the entire computer screen (step 1125). Since this would enable user 200 to place the annotation element anywhere on the entire computer screen,annotation software 170 restricts user 200's annotation to the boundaries of Web browser 160 (step 1130). After user 200 completes the annotation event, technical annotation information (e.g., the annotation image, the data representing annotation location and attributes, etc.) is appended to annotation record 500 (step 1135). In this step, the annotation image is appended to imagefile 1000, so whenannotation software 170signals Web browser 160 to reload WBD 1010 (step 1140), the newly integrated annotatedWBD 800 is displayed. This seamless process continues until user 200 leaves the annotated WBD 800 (“no” branch of step 1115), at which time the process ends (step 1145). - One exemplary embodiment in accordance with the present invention uses the IE implementation of the DOM in combination with CSS and DHTML technology. The method starts when user200 views a
new WBD 1010 that user 200 would like to annotate (step 1100). When user 200 presses one of the buttons onannotation toolbar 805,annotation software 170 creates anew annotation record 500 inannotation database 280 to capture information about user 200's annotations on WBD 1010 (step 1105). Note that althoughannotation software 170 sends all annotation-related information toannotation repository 240, this information may also be stored intemporary storage device 140 orresident storage device 150 for efficiency reasons. At this time,annotation software 170 creates a unique identifier forWBD 1010 in theannotation ID 510 field ofannotation record 500.Annotation software 170 places the Internet address ofunannotated WBD 1010 in theoriginal WBD URL 515 field, places a time and date stamp into time/date stamp 530 field, and copies WBD 1010 intoannotation database 280, storing its location in the pointer tooriginal WBD 540 field.Annotation software 170 also creates in annotation database 280 a default-sized image file, and stores its location in pointer to imagefile 545. -
Annotation software 170 next overlays the standard-format (e.g., tiff, gif, or png)blank image file 1000 on top of WBD 1010 (step 1110), as shown in FIG. 10. This is accomplished by creating a new DHTML layer inWBD 1010 using the <DIV> HTML tag, and inserting a standard <IMG> HTML tag in the new DHTML layer to incorporate theblank image file 1000. Theimage file 1000 is set to be transparent in locations where no annotation is positioned. Transparency is a standard provision of many file formats, including those enumerated above. - As long as the
current WBD 1010 is still displayed in Web browser 160 (“yes” branch of step 1115),annotation software 170 waits for user 200 to initiate an annotation event, which comprises drawing an ink-mark 810, drawing a highlight-mark 815, adding a text annotation or adding an audio dictation (step 1120). Once the annotation event is initiated (“yes” branch of step 1120),annotation software 170 acquires the global graphics context of the entire computer screen (step 1125). This global graphics context is accessible because it is maintained by the operating system, which may comprise, among others, Microsoft Windows or NT, MacOS, or some variation of UNIX. Since this access would enable user 200 to annotate anywhere on the screen through standard operating system calls,annotation software 170 clips user 200's annotation element so that it remains within the boundaries of Web browser 160 (step 1130). - After user200 initiates an annotation event,
annotation software 170 appends technical information about the annotation into annotation record 500 (step 1135). In this step, the annotation image is appended to imagefile 1000 referenced by a pointer to imagefile 545.Annotation software 170 positions the annotation element so that the location of the drawing marks inimage file 1000 corresponds to the location of the drawing marks that user 200 made on the screen. -
Annotation software 170 creates anew stroke record 600 instroke database 290 for every mark that user 200 draws intoWeb browser 160. For eachstroke record 600,annotation software 170 generates a unique ID number forstroke ID 610, and adds that ID number to the list ofstroke IDs 550 of the associatedannotation record 500.Annotation repository 240 stores the appropriate values for brush width 620, brush height 630, brush shape 640, brush color 650, and brush opacity 660, and stores the data points or coordinates of the annotation stroke in the list ofpoints 670. In an exemplary embodiment,annotation software 170 may store intostroke record 600 information extracted through the DOM like the current scroll position ofWBD 1010 and the size of Web browser 200's window, along with number of direction changes, length of stroke, horizontal and vertical dot products, and time elapsed from start to end of stroke. -
Annotation software 170 creates anew note record 700 innote database 295 for every text-based note or audio annotation that user 200 creates. For eachnote record 700,annotation software 170 generates a unique ID number fornote ID 710, and adds that ID number to the list ofnote IDs 555 of the associatedannotation record 500.Annotation repository 240 stores the type of note innote type 720, and the text of the note innote text 730. If user 200 associates an audio annotation with the note, the audio annotation is stored in an audio file in streaming audio format (e.g., wav., .mp3, RealAudio) innote database 295, and its location is stored in a pointer toaudio file 740. - Since
image file 1000, which is overlaid on top ofWBD 1010, is updated with the new annotation image, whenannotation software 170signals Web browser 160 to reload WBD 1010 (step 1140), the newly integrated annotatedWBD 800 is displayed. This process continues until user 200 leaves the annotated WBD 800 (“no” branch of step 1115), at which time the process ends (step 1145). This entire process from on-screen ink to in-browser ink is seamless, and transparent to user 200. - Passing Browser Events Through Annotations
- As is known in the art, standards-
compliant Web browsers 160 are required to pass events (e.g., keyboard strokes, mouse clicks, etc.) from the lowest element in the WBD's element tree, up the tree, and eventually to the root element (i.e., document.body element). Since theimage file 1000 created byannotation software 170 overlays the prior top-most WBD layer, it blocksinput device 120 events (e.g., mouse clicks) from reaching theoriginal unannotated WBD 1010. Thus, the present invention “bums a hole” centered around user 200's input device pointer (i.e., cursor) in theimage file 1000 layer, so thatinput device 120 events can find their way to original.WBD 1010 below. - FIG. 13 is a flowchart of steps for passing Web browser events through annotations in accordance with an exemplary embodiment of the present invention. This method commences when user200 views a new WBD 1010 (step 1300).
Annotation software 170 inserts multiple versions of thesame image file 1000 on top of WBD 1010 (step 1305) and then starts to monitorinput device 120 movements (step 1310). Wheninput device 120 moves (step 1315),annotation software 170 dynamically clips the viewable rectangular portion of eachimage file 1000 in such a way that no part of anyimage file 1000 is visible at the point directly beneath input device 120 (step 1320). The clipping rectangle ofimage file 1000 determines which portion ofimage file 1000 is visible. This is illustrated in FIG. 12, in which the four clipping rectangles 1200 a-1200 d ofimage file 1000 are arranged so that no image projects through thehole 1210, which represents the minuscule point directly beneathinput device 120. Since no image projects through thehole 1210 beneathinput device 120,input device 120 events are able to reach theoriginal unannotated WBD 1010. This method of FIG. 13 does not end, it just restarts when user 200 views adifferent WBD 1010. - One exemplary mouse-driven embodiment in accordance with the present invention uses the IE implementation of the DOM in combination with CSS and DHTML technology. This method commences when user200 views a new WBD 1010 (step 1300). In order to “bum a hole” into a DHTML layer,
annotation software 170 initially creates four identical DHTML layers containing thefull image file 1000, and inserts them into WBD 1010 (step 1305). The four layers are inserted by using the <DIV> tag, and, using CSS properties, they are positioned absolutely at the top-left corner ofWBD 1010 so that they cannot be resized.Annotation software 170 then inserts a hook intoWBD 1010's onmousemove( ) handler (step 1310). WhenWeb browser 160 notifiesannotation software 170 through this handler that the mouse has moved (step 1315),annotation software 170 dynamically changes, through DHTML, the clip property of the four instantiations ofimage file 1000 so that no image is displayed directly underneath the mouse (step 1320). This method does not end, it just restarts when user 200 views adifferent WBD 1010. - Alternative Annotation Method
- In an alternative embodiment, the present invention still freezes the WBD as an initial step, but the WBD is annotated through the use of component object technology. Component objects, or control objects, are part of a component framework that enables these objects to become embedded within documents (including WBDs) to communicate with one another and with the framework. There are numerous component object technologies; some exist for multiple operating systems and browsers, and others exist for single operating systems and browsers. Component object framework implementations vary widely.
- FIG. 14 is a flowchart of steps for drawing into a
Web browser 160 via a control object in accordance with an exemplary embodiment of the present invention. In general, the method starts when user 200 views anew WBD 1010 that user 200 would like to annotate (step 1400).Annotation software 170 creates anew annotation record 500 to capture information about user 200's annotations on WBD 1010 (step 1405).Annotation software 170 next inserts a control object into Web browser 160 (step 1410). As long as thecurrent WBD 1010 is still displayed in Web browser 160 (“yes” branch of step 1415),annotation software 170 waits for user 200 to initiate an annotation event, which comprises drawing, adding a text note, or adding an audio note to WBD 1010 (step 1420). Once the annotation event is initiated (“yes” branch of step 1420),annotation software 170 enables the control object to captureinput device 120's movements (step 1425), and places the annotation element onWBD 1010 in response toinput device 120's movements (step 1430). After user 200 completes the annotation event,annotation software 170 disables the control object from capturinginput device 120's movements (step 1435), and appends technical annotation information (e.g., vector stroke information, data representing annotation attributes, etc.) to annotation record 500 (step 1440). Whenannotation software 170signals Web browser 160 to reload WBD 1010 (step 1445), the newly annotatedWBD 800 is displayed. This seamless process continues until user 200 leaves the annotated WBD 800 (“no” branch of step 1415), at which time the process ends (step 1450). - One exemplary embodiment in accordance with the present invention makes use of ActiveX control technologies available for IE. ActiveX control technologies build on previous Microsoft Windows technologies, including COM (“Component Object Model”) and OLE (Object Linking and Embedding”), and allow programmers to create “Internet aware” controls. A control in the most basic sense is a GUI (“graphical user interface”) widget such as a button, scrollbar, or text entry area. Normally each control has a separate window, which is a rectangular portion of the computer screen in which drawing can be performed. However, ActiveX controls can be “windowless,” which result in unusually shaped controls and transparency. This transparency allows browser events to pass directly through the control, without the “hole burning” techniques explained above.
- The method according to this embodiment starts when user200 views a
new WBD 1010 that user 200 would like to annotate (step 1400). When user 200 presses one of the buttons onannotation toolbar 805,annotation software 170 creates anew annotation record 500 inannotation database 280 to capture information about user 200's annotations on WBD 1010 (step 1405). Note that althoughannotation software 170 sends all annotation-related information toannotation repository 240, this information may also be stored intemporary storage device 140 orresident storage device 150 for efficiency reasons. At this time,annotation software 170 creates a unique identifier forWBD 1010 in theannotation ID 510 field ofannotation record 500.Annotation software 170 places the Internet address ofunannotated WBD 1010 in theoriginal WBD URL 515 field, places a time and date stamp into time/date stamp 530 field, and copies WBD 1010 intoannotation database 280, storing its location in the pointer tooriginal WBD 540 field. -
Annotation software 170 next inserts a control object into Web browser 160 (step 1410). This is accomplished through COM interfaces supported by IE.Annotation software 170 initially sets the ActiveX control object to be completely transparent, and positions it at the top-left corner ofWeb browser 160. The initial size of the control is arbitrarily small (e.g., 20 pixels square). - As long as the
current WBD 1010 is still displayed in Web browser 160 (“yes” branch of step 1415),annotation software 170 waits for user 200 to initiate an annotation event, which comprises drawing an ink-mark 810, drawing a highlight-mark 815, adding a text annotation or adding an audio dictation (step 1420). Once the annotation event is initiated (“yes” branch of step 1420),annotation software 170 enables the control object to captureinput device 120's movements through ActiveX control's EnableCapture method (step 1425). As user 200 moves theenabled input device 120, the ActiveX control inherently resizes itself as necessary to fit all of user 200's strokes inside its boundaries. In addition, as user 200 dragsinput device 120, the ActiveX object redraws itself to reflect the new lines that are drawn. Using standard method calls to the ActiveX control,annotation software 170 places the annotation element onto the computer screen in response toinput device 120's movements (step 1430), and then disables the control object from capturinginput device 120 movements (step 1435). - After user200 initiates an annotation event,
annotation software 170 appends technical information about the annotation into annotation record 500 (step 1440). In this embodiment,annotation software 170 does not need to store an annotation image file to be superimposed over the actual WBD. Instead, the ActiveX object uses the vector stroke data stored instroke database 290 to re-form, on screen, the stroke image. However, since this implementation is currently limited to Microsoft Window's machines,annotation software 170 may still construct the appropriate image file for storage inannotation repository 240, in order to allow any person on any machine access to the annotated WBD's 800. - In step1440,
annotation software 170 creates anew stroke record 600 instroke database 290 for every mark that user 200 draws intoWeb browser 160. For eachstroke record 600,annotation software 170 generates a unique ID number forstroke ID 610, and adds that ID number to the list ofstroke IDs 550 of the associatedannotation record 500.Annotation repository 240 stores the appropriate values for brush width 620, brush height 630, brush shape 640, brush color 650, and brush opacity 660, and stores the data points or coordinates of the annotation stroke in the list ofpoints 670. In an exemplary embodiment,annotation software 170 may store intostroke record 600 information extracted through the DOM like the current scroll position ofWBD 1010 and the size of Web browser 200's window, along with number of direction changes, length of stroke, horizontal and vertical dot products, and time elapsed from start to end of stroke. -
Annotation software 170 creates anew note record 700 innote database 295 for every text-based note or audio annotation that user 200 creates. For eachnote record 700,annotation software 170 generates a unique ID number fornote ID 710, and adds that ID number to the list ofnote IDs 555 of the associatedannotation record 500.Annotation repository 240 stores the type of note innote type 720, and the text of the note innote text 730. If user 200 associates an audio annotation with the note, the audio annotation is stored in an audio file in streaming audio format (e.g., .wav., .mp3, RealAudio) innote database 295, and its location is stored in pointer toaudio file 740. - In
step 1445,annotation software 170signals Web browser 160 to reloadWBD 1010, causing the ActiveX object to use the vector stroke data to display the newly annotatedWBD 800. This entire process continues until user 200 leaves the annotated WBD 800 (“no” branch of step 1415), at which time the process ends (step 1450). The process from on-screen ink to in-browser ink is seamless, and transparent to user 200. - Organizational Tools
- Collecting Annotated Information
- The present invention acts as an online notebook/scrapbook in the way it collects and organizes WBDs. Standard browsers enable WBDs to be collected (e.g., via “favorites” or “bookmarks”), but
annotation repository 240 allows users 200 to mark WBDs for collection simply by adding annotations. Any time user 200 marks a WBD,annotation software 170 sends the information from user computer 100 toannotation repository 240 in the background, so as not to disrupt user 200 from browsing theInternet 230. -
Annotation software 170 provides user 200 with a margin insideWeb browser 160 in which to group thumbnails (i.e., miniaturized images) of annotatedWBDs 800. FIG. 15 illustrates a thumbnail margin in accordance with an exemplary embodiment of the present invention. After user 200 completes annotating a WBD,annotation software 170 automatically generates athumbnail 1515 of the newly annotatedWBD 800 and displays it inmargin 1510. User 200 may assign eachthumbnail 1515 a user-definedcategory 1520, which is listed along the left border ofmargin 1510. In this embodiment,annotation repository 240 generates each thumbnail using standard 2D image processing techniques, and stores each file containing the thumbnail image intoannotation database 280, along with the file location in pointer to thumbnail file 548 of the associatedannotation record 500.Annotation repository 240 stores the user-defined category incategory 420 of the associatedfolder record 400, making sure the associatedannotation record 500 is linked to the list ofannotation IDs 430. - The present invention also allows users200 to annotate blank WBDs. Annotating blank WBDs is no different that annotating WBDs with preexisting content. As shown in FIG. 15A, which is an exemplary embodiment of an online notebook/scrapbook, users 200 have a limitless forum in which to collect, organize and store their notes. As with regular annotated
WBDs 800, these notes may comprise colored marks, highlighting, text-based windows and audio annotations. The notes may be placed into any user-defined category, and may be viewed and searched as described below. - Viewing/Searching by Inking Technology
- The present invention provides user200 with an intuitive Web-based interface for accessing, viewing and searching the WBDs that user 200 has annotated. This interface enables user 200 to search any annotated
WBD 800 by its annotation attributes, which include, among others, time of annotation (e.g., last week, today, etc.), color of ink-mark 810, shape of annotation (e.g., user-defined star or underline),category 1520, author, and Website. An embodiment of thesearch interface 1600 in accordance with the present invention is illustrated in FIG. 16. - According to one embodiment,
annotation software 170 implements viewing and searching of annotatedWBDs 800 by comparing user 200'ssearch parameters 1610, which user 200 enters throughsearch interface 1600 ofWeb browser 160, with the associated fields of the relevant records inannotation repository 240. For example, if user 200 wants to view all annotatedWBDs 800 assigned aspecific category 1520,annotation software 170 searches thecategory 420 field offolder record 400 inuser folder database 270 for matches. Ifcategory 420 matches the search criteria,annotation software 170displays thumbnails 1515 of the matched annotatedWBDs 800 by following the pointer tothumbnail files 548 of theannotation records 500 linked to the associated list ofannotation IDs 430. Similarly, if user 200 wants to view all annotated WBD's 800 containing a specific ink-mark 810 (e.g., an asterisk or star),annotation software 170 receives the ink-mark 810 from user 200 throughsearch interface 1600, stores its graphical attributes in a temporary stroke record 6900 intemporary storage device 140, and searches the stroke records 600 instroke database 290 for matches. If stroke records 600 match the search criteria,annotation software 170 again displaysthumbnails 1515 of the matched annotatedWBDs 800 inWeb browser 160. - Sharing Annotations
- The present invention also allows users200 to send an annotated
WBD 800 to someone else over theInternet 230. By clicking on the send button onannotation toolbar 805, user 200 can e-mail an annotatedWBD 800 link to others so they can view annotatedWBD 800 directly on theirWeb browser 160, even if the others do not haveannotation software 170. In one embodiment,annotation software 170 creates a unique Internet address forannotated WBD 800 and inserts it into a draft of an e-mail.Annotation software 170 generates this address by executing a standard hash function on the contents of the annotatedWBD 800 and stores it inURL content hash 520 of the associatedannotation record 500. This address is mapped to the annotated WBD's 800 location inannotation database 280. User 200 may then type a message in the e-mail, and send both the message and the link to someone else. When the recipient clicks on the link to view annotatedWBD 800,annotation repository 240 receives the request and sends annotatedWBD 800 to the recipient'sWeb browser 160 for viewing.Annotated WBD 800 still contains its original active links and properties, and recipient does not needannotation software 170 installed to view annotatedWBD 800. - Interface Techniques
- The present invention provides users with many novel interface techniques. These techniques include using dog-ears and its associated navigation tools, splitting pages, turning pages, selecting and copying various portions of a WBD, and marking menus suited for right-handed or left-handed users200.
- Gesture Recognition
- Most of the interface techniques employed by the present invention involve gestures, which are strokes made by
input device 120 that issue commands toWeb browser 160. The present invention utilizes three types of gestures: single stroke gestures, multi-stroke gestures, and dynamic gestures. Dynamic gestures refer to strokes that issue commands during the drawing of the stroke. - FIG. 17 is a flowchart of steps for recognizing gestures in accordance with an exemplary embodiment of the present invention. In this embodiment, a multi-stroke gesture comprises two strokes. The process starts when user200 begins drawing a stroke with
input device 120 in Web browser 160 (step 1700).Annotation software 170 continuously monitors the stroke to determine when it has completed (step 1705). During the drawing of the stroke (“no” branch of step 1705),annotation software 170 determines whether a dynamic gesture is being employed through a process known eager recognition (step 1710). If a dynamic stroke is recognized (“yes” branch of step 1710), thenannotation software 170 invokes the appropriate command to Web browser 160 (step 1715) before resuming stroke monitoring. After the stroke is completed (“yes” branch of step 1705),annotation software 170 builds a vector data matrix of the stroke features (e.g., number of direction changes, length of stroke, horizontal and vertical dot products, x and y positioning, time elapsed from start to end of stroke, and beginning and end points) in temporary storage device 140 (step 1720). -
Annotation software 170 recognizes a gesture by comparing the vector data matrix with recognizer objects, which are stored matrices associated with each multi-stroke and single stroke gesture utilized byannotation software 170. Annotation software first compares the vector data matrix with its recognizer objects for single stroke gestures (step 1725). If the stroke is recognized (“yes” branch of step 1725),annotation software 170 invokes the appropriate command to Web browser 160 (step 1730), and the process ends (step 1755). If the stroke is not recognized as a single stroke gesture (“no” branch of step 1725),annotation software 170 compares the vector data matrix with its recognizer objects for the initial stroke of multi-stroke gestures (step 1735). If the initial stroke is recognized (“yes” branch of step 1735), thenannotation software 170 waits for the next stroke (step 1740) and builds a corresponding vector data matrix of stroke features (step 1745). Since this embodiment comprises two-stroke multi-stroke gestures, the next stroke is the final stroke of the multi-stroke gesture. If the final stroke is recognized (“yes” branch of step 1750), thenannotation software 170 invokes the appropriate command to Web browser 160 (step 1730), and the process ends (step 1755). If the initial stroke is not recognized as part of a multi-stroke gesture (“no” branch of step 1735), or the final stroke is not recognized as part of a multi-stroke gesture (“no” branch of step 1750), the process ends (step 1755). - Dog-Ears
- In the present invention, dog-ears provide a novel way to organize and index annotated
WBDs 800 in aWeb browser 160. As shown in FIG. 18, dog-ear 1800 marks annotatedWBD 800 for later retrieval and resembles a folded corner of annotatedWBD 800. Users 200 may search through previously dog-earedannotated WBDs 800 by using thenavigation widget 1900, as shown in FIG. 19. Each rectangle innavigation widget 1900 represents an annotatedWBD 800, and the annotatedWBDs 800 with dog-ears 1800 have a small triangle to the right of their representative rectangle. As user 200 selects each rectangle innavigation widget 1900,annotation software 170 displays athumbnail 1515 of the associated annotatedWBD 800 to the left ofnavigation widget 1900, and displays the associatedcategory 1520, if it exists, above thethumbnail 1515. - FIG. 20 is a flowchart of steps for creating, deleting, and navigating through dog-
ears 1800 in accordance with an exemplary embodiment of the present invention. The method starts in step 2000. If user 200 wishes to create a dog-ear 1800 (“yes” branch of step 2005), user 200 issues a diagonal stroke gesture withinput device 120 in the upper left-hand corner of the desired annotated WBD 800 (step 2010). If user 200 chooses to navigate through existing dog-eared annotated WBDs 800 (“yes” branch of step 2015), user 200 may utilize eithernavigation widget 1900 orinput device 120 gestures. If user 200 chooses the navigation widget 1900 (“yes” branch of step 2020), then user 200 selects the desired annotatedWBD 800 identified by the small triangle (step 2025), as shown in FIG. 19. If user 200 chooses to useinput device 120 gestures, then user 200 issues simple vertical strokes to view adjacent dog-eared annotation WBDs 800 (step 2030), as shown in FIG. 21. The circular end of the flip to dog-ear gesture representation in FIG. 21 denotes whereinput device 120 activates the stroke. For example, the left gesture representation in FIG. 21 comprising a downward stroke may issue the command toannotation software 170 to flip to the following dog-eared annotated WBD 800, whereas the right gesture representation in FIG. 21 comprising an upward stroke may issue the command toannotation software 170 to flip to the previous dog-eared annotated WBD 800. If user 200 decides to delete a dog-ear 1800 (“yes” branch of step 2035), then user 200 repeats the diagonal stroke gesture of step 2010 (step 2040). In another embodiment, the gesture instep 2040 could operate in the reverse direction (i.e., issue the diagonal stroke toward the upper left-hand corner of annotated WBD 800). - One exemplary embodiment in accordance with the present invention uses the IE implementation of the DOM in combination with CSS and DHTML technology. When user200 creates a dog-
ear 1800 on annotated WBD 800 (step 2010),annotation software 170 places a “true” value in the dog-ear 535 field of the associatedannotation record 500. When user 200 employs thenavigation widget 1900 to select a dog-ear 1800 (step 2025), annotation software places the small triangle denoting a dog-ear 1800 next to each rectangle associated withannotation records 500 with a “true” value in the dog-ear 535 field. When user 200 employs the flip to dog-ear gestures as shown in FIG. 21,annotation software 170 searches forward or backward inannotation database 280 to select theannotation records 500 containing a “true” value in the dog-ear 535 field. And when user 200 deletes a dog-ear 1800 from annotated WBD 800 (step 2040),annotation software 170 places a “false” value in the dog-ear 535 field of the associatedannotation record 500. - Splitting Pages
- The present invention employs novel page split gestures, as shown in FIG. 22, that divide a WBD either horizontally or vertically. For example, the left gesture representation in FIG. 22 comprising a jagged horizontal stroke may issue the command to
annotation software 170 to split a WBD horizontally, whereas the right gesture representation in FIG. 22 comprising a jagged vertical stroke may issue the command toannotation software 170 to split a WBD vertically.Annotation software 170 may use the IE implementation of the DOM in combination with CSS and DHTML technology to split the WBD using standard browser frame technology. - Turning Pages
- The present invention employs novel single stroke and dynamic page turning gestures, as shown in FIG. 23 and FIG. 24, that flip to the previously or subsequently viewed WBD. For example, the top gesture representation in FIG. 23 comprising a single left horizontal stroke may issue the command to
annotation software 170 to flip to a previously viewed WBD, whereas the bottom gesture representation in FIG. 23 comprising a single right horizontal stroke may issue the command toannotation software 170 to flip to a subsequently viewed WBD.Annotation software 170 may turn the pages by using standard browser calls. - FIG. 25 is a flowchart of steps for turning multiple pages with a dynamic gesture in accordance with an exemplary embodiment of the present invention. In this embodiment, the pages of the WBD turn faster or slower depending upon the speed of user200's circling
input device 120. A graphical representation of the dynamic gesture is illustrated in FIG. 24. The method for using the dynamic gesture starts instep 2500. User 200 first activatesinput device 120 instep 2510. Ifinput device 120 is a mouse in one embodiment, user 200 satisfies this step by left-clicking the mouse. Ifinput device 120 is a pen or stylus, user 200 satisfies this step by touching the pen or stylus to the touch screen. User 200 then movesinput device 120 in a circular pattern to turn to consecutive pages (step 2520). Turning in a counter-clockwise direction may flip to previous pages, whereas turning in a clockwise direction may flip to subsequent pages. If user 200 wants to turn pages faster or slower (“yes” branch of step 2530), user 200 varies the speed of the circling motion accordingly (step 2540). In other words, if user 200 wants to flip through pages faster, user 200 would increase the rotational speed ofinput device 120. Alternatively, if user 200 wants to flip through pages slower, user 200 would decrease the rotational speed ofinput device 120. When user 200 reaches the desired page, user 200 deactivates input device 120 (step 2550). Ifinput device 120 is a mouse, this is accomplished by user 200 releasing the click button. Ifinput device 120 is a pen or stylus, this is accomplished by user 200 lifting the pen or stylus from the touch screen. This method ends instep 2560. - Selecting Portions of Page
- The present invention employs three novel selection gestures, as shown in FIG. 26. The left gesture representation in FIG. 26 comprising a closed loop stroke may issue the command to
annotation software 170 to select the area inside the loop. The middle gesture representation in FIG. 26 comprising a bracket stroke may issue the command toannotation software 170 to select the area bound by the bracket's three sides with no boundary on the fourth side. And the right gesture representation in FIG. 26 comprising two corner strokes issue the command toannotation software 170 to select the square area bound by the two edges.Annotation software 170 may use the IE implementation of the DOM in combination with CSS and DHTML technology to select these areas. Once the area is selected, user 200 may copy, move or paste the selection anywhere a typical graphical selection could be copied or pasted. - Shaking Out a Copy
- The present invention employs a novel dynamic gesture that allows a selected area of a WBD to be copied by shaking it. FIG. 27 is a flowchart of steps for performing a shaking out a copy gesture in accordance with an exemplary embodiment of the present invention. The method starts in
step 2700. User 200 firstuses input device 120 to select an object or area to be copied (step 2710). While retaining selection of the object, user 200 shakes the selection back and forth withinput device 120 to create a copy of the selection (step 2720). Without deactivatinginput device 120, which would deselect the object, user 200 drags the copy of the selection to the desired location (step 2730). User 200 then deactivatesinput device 120, leaving the copy of the selection in the desired area (step 2740). The process ends instep 2750.Annotation software 170 may use the IE implementation of the DOM in combination with CSS and DHTML technology to shake out the copy. - Right-Handedness and Left-Handedness of Marking Menus
- The present invention employs a novel marking menu that can be arranged to suit the hand position of right-handed and left-handed users200. FIG. 28 illustrates a tap and dwell menu in accordance with a pen-based embodiment of the present invention. A
standard marking menu 2810 can be summoned by any type of gesture, such as a double tap with the pen, a dwell with the pen (holding down the pen without lifting it) or a tap with the stylus button pressed. Theregular marking menu 2810 then appears in the place the gesture was made, allowing user 200 to choose a menu item 2840 a-2840 d without having to focus attention to another area of the screen as with traditional static menus. The menu items 2840 a-2840 d are laid out radially rather than as a list, and allow imprecise picks. Once user 200 is familiar with the arrangement of the menu, it is easy to make a selection without even reading the menu, since user 200 only needs to know which direction to move thepen 2850 from the location of the gesture that summoned the menu. The marking menus of the present invention display menu items 2840 a-2840 d in the area that is most visible to user 200, taking into account the positioning of user 200's hand. For instance, a right-handed user 200 would use the righthanded marking menu 2820, whereas a left-handed user 200 would use the left handed markingmenu 2830. - Several embodiments of the present invention are specifically illustrated and/or described herein. However, it will be appreciated that modifications and variations of the present invention are covered by the above teachings and within the purview of the appended claims without departing from the spirit and intended scope of the present invention.
Claims (9)
1. A method for annotating a Web-based document and viewing the annotated document, comprising the steps of:
(a) generating annotation data by processing user input provided to annotation client software by a first user of the annotation client software;
(b) associating the annotation data with the document to create the annotated document, the document being displayed via a Web browser;
(c) providing the annotated document to an annotation server;
(d) with the annotation server, generating a graphic data file corresponding to a visual layout of the annotation data;
(e) when a second user of the annotation client software attempts to view the annotated document, generating the annotated document for the second user as a function of the document and the associated annotation data; and (f) when a third user not employing the annotation client software attempts to view the annotated document, generating the annotated document and providing the annotated document to the third user as a function of the document, the graphic data and predetermined programming codes.
2. The method according to claim 1 , wherein the annotation data includes at least one of ink marks, highlight marks, text-based note windows and audio dictations.
3. The method according to claim 1 , wherein the document is a blank document.
4. The method according to claim 1 further comprising the step of:
(g) before step a, preventing elements of the document from moving when the document is being one of resized and manipulated.
5. The method according to claim 1 , wherein each of steps (b) and (e) includes the sub-step of utilizing at least one ActiveX control to draw ink images and text-based note windows over the document based on the annotated data.
6. A computer arrangement for annotating a Web-based document and viewing the annotated document, comprising:
an input device;
an output device;
a communication device; and
a processor receiving user input from the input device, the user input being provided by interaction of a first user with the annotation client software, the processor associating the annotation data with the document to create the annotated document, the document being displayed via a Web browser, the processor providing the annotated document to an annotation server via the communication device,
wherein the annotation server generates graphic data corresponding to a visual layout of the annotation data,
wherein when a second user of the annotation client software attempts to view the annotated document, the processor generates the annotated document as a function of the document and the associated annotation data, and when a third user without access to the annotation client software attempts to view the annotated document, the processor generates the annotated document and provides the annotated document to the third user as a function of the document, the graphic data and predetermined programming codes.
7. A method for sharing annotated Web-based document, comprising the steps of:
(a) generating an annotated document as a function of a Web-based document and associated annotation data using client annotation software stored on a first user computer;
(b) storing the annotated document on a server computer; and
(c) providing access to the annotated document to a second user computer for viewing, the second user computer not including the client annotation software.
8. The method according to claim 7 , further comprising the steps of:
(d) generating a particular address associated with the annotated document using the client annotation software, the particular address indicating a location of the annotated document on the server computer;
(e) providing the particular address to the second user computer; and
(f) providing access to the annotated document to the second user computer using the particular address.
9. The method according to claim 8 , wherein the particular address includes a Uniform Resource Locator generated from a content hash of the annotated document.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/848,047 US20040210833A1 (en) | 2000-03-07 | 2004-05-19 | System and method for annotating web-based document |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/521,022 US6859909B1 (en) | 2000-03-07 | 2000-03-07 | System and method for annotating web-based documents |
US10/848,047 US20040210833A1 (en) | 2000-03-07 | 2004-05-19 | System and method for annotating web-based document |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/521,022 Continuation US6859909B1 (en) | 2000-03-07 | 2000-03-07 | System and method for annotating web-based documents |
Publications (1)
Publication Number | Publication Date |
---|---|
US20040210833A1 true US20040210833A1 (en) | 2004-10-21 |
Family
ID=32713737
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/521,022 Expired - Lifetime US6859909B1 (en) | 2000-03-07 | 2000-03-07 | System and method for annotating web-based documents |
US10/753,344 Expired - Fee Related US7409633B2 (en) | 2000-03-07 | 2004-01-09 | System and method for annotating web-based document |
US10/790,678 Abandoned US20040172595A1 (en) | 2000-03-07 | 2004-03-03 | System and method for annotating web-based document |
US10/848,047 Abandoned US20040210833A1 (en) | 2000-03-07 | 2004-05-19 | System and method for annotating web-based document |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/521,022 Expired - Lifetime US6859909B1 (en) | 2000-03-07 | 2000-03-07 | System and method for annotating web-based documents |
US10/753,344 Expired - Fee Related US7409633B2 (en) | 2000-03-07 | 2004-01-09 | System and method for annotating web-based document |
US10/790,678 Abandoned US20040172595A1 (en) | 2000-03-07 | 2004-03-03 | System and method for annotating web-based document |
Country Status (1)
Country | Link |
---|---|
US (4) | US6859909B1 (en) |
Cited By (69)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030090714A1 (en) * | 2000-04-11 | 2003-05-15 | Christoph Sandhaus | Method and system for processing print data, whilst restaining tab alignment |
US20040111668A1 (en) * | 2002-12-04 | 2004-06-10 | International Business Machines Corporation | Annotation validity using partial checksums |
US20040199516A1 (en) * | 2001-10-31 | 2004-10-07 | Metacyber.Net | Source information adapter and method for use in generating a computer memory-resident hierarchical structure for original source information |
US20050289452A1 (en) * | 2004-06-24 | 2005-12-29 | Avaya Technology Corp. | Architecture for ink annotations on web documents |
US20060031755A1 (en) * | 2004-06-24 | 2006-02-09 | Avaya Technology Corp. | Sharing inking during multi-modal communication |
US20060053365A1 (en) * | 2004-09-08 | 2006-03-09 | Josef Hollander | Method for creating custom annotated books |
US20060112330A1 (en) * | 2004-11-25 | 2006-05-25 | Canon Kabushiki Kaisha | Layout method, program, and device |
US20060277460A1 (en) * | 2005-06-03 | 2006-12-07 | Scott Forstall | Webview applications |
US20060288273A1 (en) * | 2005-06-20 | 2006-12-21 | Ricoh Company, Ltd. | Event-driven annotation techniques |
US7155664B1 (en) * | 2000-11-14 | 2006-12-26 | Cypress Semiconductor, Corp. | Extracting comment keywords from distinct design files to produce documentation |
US20070043688A1 (en) * | 2005-08-18 | 2007-02-22 | Microsoft Corporation | Annotating shared contacts with public descriptors |
US20070057930A1 (en) * | 2002-07-30 | 2007-03-15 | Microsoft Corporation | Freeform Encounter Selection Tool |
US20070099672A1 (en) * | 2005-10-28 | 2007-05-03 | Lg Electronics Inc. | Mobile communication terminal and link management method of the same |
US20070106952A1 (en) * | 2005-06-03 | 2007-05-10 | Apple Computer, Inc. | Presenting and managing clipped content |
KR100719514B1 (en) | 2005-12-20 | 2007-05-17 | 엔에이치엔(주) | Method and system for sorting/searching file and record media therefor |
US20070136657A1 (en) * | 2005-03-25 | 2007-06-14 | Daniel Blumenthal | Process for Automatic Data Annotation, Selection, and Utilization. |
US20070198916A1 (en) * | 2000-06-12 | 2007-08-23 | Rohrabaugh Gary B | Resolution independent vector display of internet content |
US20080082610A1 (en) * | 2006-09-29 | 2008-04-03 | Breise Devin W | Method and apparatus for providing collaborative user interface feedback |
US20080162528A1 (en) * | 2006-12-29 | 2008-07-03 | Adnan Shabbir Jariwala | Content Management System and Method |
US20080227076A1 (en) * | 2007-03-13 | 2008-09-18 | Byron Johnson | Progress monitor and method of doing the same |
US20080235597A1 (en) * | 2007-03-19 | 2008-09-25 | Mor Schlesinger | Systems and methods of data integration for creating custom books |
US20080260241A1 (en) * | 2007-04-20 | 2008-10-23 | Microsoft Corporation | Grouping writing regions of digital ink |
US20080270887A1 (en) * | 2004-11-12 | 2008-10-30 | Justsystems Corporation | Document Processing Device And Document Processing Method |
US20080276159A1 (en) * | 2007-05-01 | 2008-11-06 | International Business Machines Corporation | Creating Annotated Recordings and Transcripts of Presentations Using a Mobile Device |
US20080276177A1 (en) * | 2007-05-03 | 2008-11-06 | Microsoft Corporation | Tag-sharing and tag-sharing application program interface |
US20090043799A1 (en) * | 2007-08-06 | 2009-02-12 | Morris Robert P | Methods And Apparatus For Using Annotated User Interface Widgets In Search Operations |
US20090044144A1 (en) * | 2007-08-06 | 2009-02-12 | Morris Robert P | Methods And Apparatus For Sharing User Interface Widget Annotations |
US20090073188A1 (en) * | 2007-09-13 | 2009-03-19 | James Williams | System and method of modifying illustrations using scaleable vector graphics |
US20090193337A1 (en) * | 2008-01-28 | 2009-07-30 | Fuji Xerox Co., Ltd. | System and method for supporting document navigation on mobile devices using segmentation and keyphrase summarization |
US20090217196A1 (en) * | 2008-02-21 | 2009-08-27 | Globalenglish Corporation | Web-Based Tool for Collaborative, Social Learning |
US20090287793A1 (en) * | 2008-05-19 | 2009-11-19 | O'sullivan Patrick Joseph | Markup elements in referenced content |
US20100042615A1 (en) * | 2008-08-12 | 2010-02-18 | Peter Rinearson | Systems and methods for aggregating content on a user-content driven website |
US20100325557A1 (en) * | 2009-06-17 | 2010-12-23 | Agostino Sibillo | Annotation of aggregated content, systems and methods |
US20110040787A1 (en) * | 2009-08-12 | 2011-02-17 | Google Inc. | Presenting comments from various sources |
US20110113320A1 (en) * | 2008-02-21 | 2011-05-12 | Globalenglish Corporation | Network-Accessible Collaborative Annotation Tool |
US7945852B1 (en) * | 2006-05-19 | 2011-05-17 | Washington State University Research Foundation | Strategies for annotating digital maps |
US20110289404A1 (en) * | 2010-05-19 | 2011-11-24 | Alexandra Fleur | System and methods for document critique |
WO2012057791A1 (en) * | 2010-10-29 | 2012-05-03 | Fractor, LLC | Methods and systems for concatenating and transferring web accessible content and metadata |
US8180787B2 (en) | 2002-02-26 | 2012-05-15 | International Business Machines Corporation | Application portability and extensibility through database schema and query abstraction |
US20130007588A1 (en) * | 2011-06-30 | 2013-01-03 | International Business Machines Corporation | Systems and methods for globalizing web applications |
US20130036448A1 (en) * | 2011-08-03 | 2013-02-07 | Samsung Electronics Co., Ltd. | Sandboxing technology for webruntime system |
US8380866B2 (en) | 2009-03-20 | 2013-02-19 | Ricoh Company, Ltd. | Techniques for facilitating annotations |
US20130047070A1 (en) * | 2001-08-28 | 2013-02-21 | Eugene M. Lee | Computer implemented method and system for document annotaton with split feature |
US20130145249A1 (en) * | 2011-07-06 | 2013-06-06 | Myriad France | Smart annotation anchoring process |
US8510646B1 (en) * | 2008-07-01 | 2013-08-13 | Google Inc. | Method and system for contextually placed chat-like annotations |
US8640023B1 (en) * | 2006-07-10 | 2014-01-28 | Oracle America, Inc. | Method and system for providing HTML page annotations using AJAX and JAVA enterprise edition |
US20140033015A1 (en) * | 2008-05-12 | 2014-01-30 | Adobe Systems Incorporated | Comment presentation in electronic documents |
US20140108918A1 (en) * | 2011-05-11 | 2014-04-17 | Sechang Instruments Co., Ltd. | Method for Processing an Effect of Extracting and Moving a Section on an Output Display of a Webpage |
US20140109019A1 (en) * | 2012-10-17 | 2014-04-17 | Research In Motion Limited | Electronic device including touch-sensitive display and method of controlling same |
US8893225B2 (en) | 2011-10-14 | 2014-11-18 | Samsung Electronics Co., Ltd. | Method and apparatus for secure web widget runtime system |
US20150185994A1 (en) * | 2013-12-30 | 2015-07-02 | Adobe Systems Incorporated | Local Rendering of an Object as an Image |
US20160070686A1 (en) * | 2014-09-05 | 2016-03-10 | Microsoft Corporation | Collecting annotations for a document by augmenting the document |
US9348803B2 (en) | 2013-10-22 | 2016-05-24 | Google Inc. | Systems and methods for providing just-in-time preview of suggestion resolutions |
US20160155091A1 (en) * | 2014-12-01 | 2016-06-02 | Workiva Inc. | Methods and a computing device for maintaining comments for a document |
US20160227015A1 (en) * | 2015-02-03 | 2016-08-04 | Alibaba Group Holding Limited | Method, apparatus and mobile terminal for speed dial within page |
US9449182B1 (en) | 2013-11-11 | 2016-09-20 | Amazon Technologies, Inc. | Access control for a document management and collaboration system |
US9529785B2 (en) | 2012-11-27 | 2016-12-27 | Google Inc. | Detecting relationships between edits and acting on a subset of edits |
US9542391B1 (en) | 2013-11-11 | 2017-01-10 | Amazon Technologies, Inc. | Processing service requests for non-transactional databases |
US9807073B1 (en) | 2014-09-29 | 2017-10-31 | Amazon Technologies, Inc. | Access to documents in a document management and collaboration system |
US9811513B2 (en) | 2003-12-09 | 2017-11-07 | International Business Machines Corporation | Annotation structure type determination |
US9940320B2 (en) * | 2015-12-01 | 2018-04-10 | International Business Machines Corporation | Plugin tool for collecting user generated document segmentation feedback |
US9971752B2 (en) | 2013-08-19 | 2018-05-15 | Google Llc | Systems and methods for resolving privileged edits within suggested edits |
US10114810B2 (en) * | 2014-12-01 | 2018-10-30 | Workiva Inc. | Methods and a computing device for maintaining comments and graphical annotations for a document |
US10387549B2 (en) * | 2004-06-25 | 2019-08-20 | Apple Inc. | Procedurally expressing graphic objects for web pages |
US10481771B1 (en) | 2011-10-17 | 2019-11-19 | Google Llc | Systems and methods for controlling the display of online documents |
US10540404B1 (en) | 2014-02-07 | 2020-01-21 | Amazon Technologies, Inc. | Forming a document collection in a document management and collaboration system |
US10599753B1 (en) * | 2013-11-11 | 2020-03-24 | Amazon Technologies, Inc. | Document version control in collaborative environment |
US10691877B1 (en) | 2014-02-07 | 2020-06-23 | Amazon Technologies, Inc. | Homogenous insertion of interactions into documents |
US20220414321A1 (en) * | 2012-08-13 | 2022-12-29 | Google Llc | Managing a sharing of media content among client computers |
Families Citing this family (430)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050131992A1 (en) * | 2003-12-11 | 2005-06-16 | Eric Goldstein | System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources |
JP4124402B2 (en) * | 2000-03-31 | 2008-07-23 | 株式会社リコー | Image input device |
US7047487B1 (en) * | 2000-05-11 | 2006-05-16 | International Business Machines Corporation | Methods for formatting electronic documents |
US7234108B1 (en) * | 2000-06-29 | 2007-06-19 | Microsoft Corporation | Ink thickness rendering for electronic annotations |
US7272786B1 (en) * | 2000-07-20 | 2007-09-18 | Vignette Corporation | Metadata, models, visualization and control |
US6721921B1 (en) * | 2000-07-26 | 2004-04-13 | Itm Associates | Method and system for annotating documents using an independent annotation repository |
US7801905B1 (en) * | 2003-11-25 | 2010-09-21 | Prabhdeep Singh | Knowledge archival and recollection systems and methods |
US6563913B1 (en) * | 2000-08-21 | 2003-05-13 | Koninklijke Philips Electronics N.V. | Selective sending of portions of electronic content |
US20020059343A1 (en) * | 2000-11-10 | 2002-05-16 | Masahiro Kurishima | Client apparatus and recording medium that records a program thereof |
US7249324B2 (en) * | 2000-12-28 | 2007-07-24 | Matsushita Electric Industrial Co., Ltd. | Electronic paper file |
US7392287B2 (en) * | 2001-03-27 | 2008-06-24 | Hemisphere Ii Investment Lp | Method and apparatus for sharing information using a handheld device |
US7213211B1 (en) * | 2001-07-03 | 2007-05-01 | Dynamic Knowledge Transfer, Llc | System for knowledge transfer in a group setting |
WO2003009474A2 (en) | 2001-07-18 | 2003-01-30 | Wireless Generation, Inc. | System and method for real-time observation assessment |
US20030070140A1 (en) * | 2001-10-10 | 2003-04-10 | Mtot Insight Ltd. | Tool and method for assistance with creative thinking |
US7712028B2 (en) * | 2001-10-19 | 2010-05-04 | Xerox Corporation | Using annotations for summarizing a document image and itemizing the summary based on similar annotations |
US9189467B1 (en) * | 2001-11-07 | 2015-11-17 | Apple Inc. | Method and apparatus for annotating an electronic document |
JP4158374B2 (en) * | 2001-11-19 | 2008-10-01 | ブラザー工業株式会社 | Image forming apparatus and program |
US6931603B2 (en) * | 2001-11-29 | 2005-08-16 | International Business Machines Corporation | Method and system for appending information to graphical files stored in specific graphical file formats |
US7493559B1 (en) * | 2002-01-09 | 2009-02-17 | Ricoh Co., Ltd. | System and method for direct multi-modal annotation of objects |
US7079713B2 (en) * | 2002-06-28 | 2006-07-18 | Microsoft Corporation | Method and system for displaying and linking ink objects with recognized text and objects |
US7353453B1 (en) * | 2002-06-28 | 2008-04-01 | Microsoft Corporation | Method and system for categorizing data objects with designation tools |
US7751623B1 (en) | 2002-06-28 | 2010-07-06 | Microsoft Corporation | Writing guide for a free-form document editor |
US20040004599A1 (en) * | 2002-07-03 | 2004-01-08 | Scott Shepard | Systems and methods for facilitating playback of media |
US20040021686A1 (en) * | 2002-07-30 | 2004-02-05 | Barberis Romain P. | Method and system for collaborative interaction on a document |
NO318991B1 (en) * | 2002-09-05 | 2005-05-30 | Opera Software Asa | Presentation of HTML content on a small terminal screen |
US20040088420A1 (en) * | 2002-10-30 | 2004-05-06 | Allen Bradley Paul | System and method for electronic scrapbooking |
KR100490734B1 (en) * | 2002-12-21 | 2005-05-24 | 한국전자통신연구원 | Annotation-based automatic document generation apparatus and method |
US20040199877A1 (en) * | 2003-03-17 | 2004-10-07 | Hiroshi Yasuda | System for processing handwritten document and method for processing handwritten document |
US20040196306A1 (en) * | 2003-04-04 | 2004-10-07 | Microsoft Corporation | Method and system for flagging digital ink note content |
US7269787B2 (en) * | 2003-04-28 | 2007-09-11 | International Business Machines Coporation | Multi-document context aware annotation system |
US7257769B2 (en) * | 2003-06-05 | 2007-08-14 | Siemens Communications, Inc. | System and method for indicating an annotation for a document |
JP2005309829A (en) * | 2003-06-13 | 2005-11-04 | Canon Inc | Document management apparatus, document management method, storage medium with computer-readable program stored thereon, and document management program |
US7565425B2 (en) * | 2003-07-02 | 2009-07-21 | Amazon Technologies, Inc. | Server architecture and methods for persistently storing and serving event data |
EP1665046A2 (en) * | 2003-09-17 | 2006-06-07 | Research In Motion Limited | System and method for dynamic content processing with extendable provisioning |
JP2005094391A (en) * | 2003-09-18 | 2005-04-07 | Pioneer Electronic Corp | Device, method and program for editing and recording data, and recording medium having data editing and recording program recorded thereon |
US7418656B1 (en) * | 2003-10-03 | 2008-08-26 | Adobe Systems Incorporated | Dynamic annotations for electronics documents |
US8156248B2 (en) | 2003-10-09 | 2012-04-10 | International Business Machines Corporation | Image distribution for dynamic server pages |
US20050080820A1 (en) * | 2003-10-11 | 2005-04-14 | Koppel Carl Arnold | Method and system for generating, associating and employing user-defined fields in a relational database within an information technology system |
US7584172B2 (en) * | 2003-10-16 | 2009-09-01 | Sap Ag | Control for selecting data query and visual configuration |
US7676739B2 (en) * | 2003-11-26 | 2010-03-09 | International Business Machines Corporation | Methods and apparatus for knowledge base assisted annotation |
US7148905B2 (en) * | 2003-12-19 | 2006-12-12 | Palo Alto Research Center Incorporated | Systems and method for annotating pages in a three-dimensional electronic document |
US8452880B2 (en) * | 2003-12-22 | 2013-05-28 | Oracle International Corporation | System and method for verifying intended contents of an electronic message |
US8201079B2 (en) * | 2004-01-15 | 2012-06-12 | International Business Machines Corporation | Maintaining annotations for distributed and versioned files |
US7962846B2 (en) | 2004-02-13 | 2011-06-14 | Microsoft Corporation | Organization of annotated clipping views |
US20050182736A1 (en) * | 2004-02-18 | 2005-08-18 | Castellanos Maria G. | Method and apparatus for determining contract attributes based on language patterns |
US7721226B2 (en) * | 2004-02-18 | 2010-05-18 | Microsoft Corporation | Glom widget |
US7542050B2 (en) | 2004-03-03 | 2009-06-02 | Virtual Iris Studios, Inc. | System for delivering and enabling interactivity with images |
US7659890B2 (en) * | 2004-03-19 | 2010-02-09 | Microsoft Corporation | Automatic height adjustment for electronic highlighter pens and mousing devices |
US8131702B1 (en) * | 2004-03-31 | 2012-03-06 | Google Inc. | Systems and methods for browsing historical content |
US8219531B2 (en) * | 2004-04-05 | 2012-07-10 | George Eagan | Knowledge archival and recollection systems and methods |
US7580867B2 (en) | 2004-05-04 | 2009-08-25 | Paul Nykamp | Methods for interactively displaying product information and for collaborative product design |
DE102004041395A1 (en) * | 2004-08-26 | 2006-03-09 | Siemens Ag | Create dynamic web content |
JP4541803B2 (en) * | 2004-08-30 | 2010-09-08 | キヤノン株式会社 | Document management server |
EP1800222A4 (en) * | 2004-09-08 | 2009-08-05 | Sharedbook Ltd | Shared annotation system and method |
US9384619B2 (en) | 2006-07-31 | 2016-07-05 | Ricoh Co., Ltd. | Searching media content for objects specified using identifiers |
US8276088B2 (en) * | 2007-07-11 | 2012-09-25 | Ricoh Co., Ltd. | User interface for three-dimensional navigation |
US8086038B2 (en) * | 2007-07-11 | 2011-12-27 | Ricoh Co., Ltd. | Invisible junction features for patch recognition |
US8144921B2 (en) * | 2007-07-11 | 2012-03-27 | Ricoh Co., Ltd. | Information retrieval using invisible junctions and geometric constraints |
US7991778B2 (en) * | 2005-08-23 | 2011-08-02 | Ricoh Co., Ltd. | Triggering actions with captured input in a mixed media environment |
US8600989B2 (en) * | 2004-10-01 | 2013-12-03 | Ricoh Co., Ltd. | Method and system for image matching in a mixed media environment |
US7970171B2 (en) * | 2007-01-18 | 2011-06-28 | Ricoh Co., Ltd. | Synthetic image and video generation from ground truth data |
US9405751B2 (en) | 2005-08-23 | 2016-08-02 | Ricoh Co., Ltd. | Database for mixed media document system |
US8335789B2 (en) * | 2004-10-01 | 2012-12-18 | Ricoh Co., Ltd. | Method and system for document fingerprint matching in a mixed media environment |
US8195659B2 (en) * | 2005-08-23 | 2012-06-05 | Ricoh Co. Ltd. | Integration and use of mixed media documents |
US7885955B2 (en) * | 2005-08-23 | 2011-02-08 | Ricoh Co. Ltd. | Shared document annotation |
US8332401B2 (en) * | 2004-10-01 | 2012-12-11 | Ricoh Co., Ltd | Method and system for position-based image matching in a mixed media environment |
US8856108B2 (en) * | 2006-07-31 | 2014-10-07 | Ricoh Co., Ltd. | Combining results of image retrieval processes |
US8385589B2 (en) * | 2008-05-15 | 2013-02-26 | Berna Erol | Web-based content detection in images, extraction and recognition |
US8825682B2 (en) * | 2006-07-31 | 2014-09-02 | Ricoh Co., Ltd. | Architecture for mixed media reality retrieval of locations and registration of images |
US8521737B2 (en) * | 2004-10-01 | 2013-08-27 | Ricoh Co., Ltd. | Method and system for multi-tier image matching in a mixed media environment |
US9373029B2 (en) * | 2007-07-11 | 2016-06-21 | Ricoh Co., Ltd. | Invisible junction feature recognition for document security or annotation |
US8176054B2 (en) * | 2007-07-12 | 2012-05-08 | Ricoh Co. Ltd | Retrieving electronic documents by converting them to synthetic text |
US8184155B2 (en) * | 2007-07-11 | 2012-05-22 | Ricoh Co. Ltd. | Recognition and tracking using invisible junctions |
US10192279B1 (en) | 2007-07-11 | 2019-01-29 | Ricoh Co., Ltd. | Indexed document modification sharing with mixed media reality |
US8369655B2 (en) * | 2006-07-31 | 2013-02-05 | Ricoh Co., Ltd. | Mixed media reality recognition using multiple specialized indexes |
US7702673B2 (en) * | 2004-10-01 | 2010-04-20 | Ricoh Co., Ltd. | System and methods for creation and use of a mixed media environment |
US7812986B2 (en) * | 2005-08-23 | 2010-10-12 | Ricoh Co. Ltd. | System and methods for use of voice mail and email in a mixed media environment |
US7917554B2 (en) * | 2005-08-23 | 2011-03-29 | Ricoh Co. Ltd. | Visibly-perceptible hot spots in documents |
US8838591B2 (en) * | 2005-08-23 | 2014-09-16 | Ricoh Co., Ltd. | Embedding hot spots in electronic documents |
US8156116B2 (en) * | 2006-07-31 | 2012-04-10 | Ricoh Co., Ltd | Dynamic presentation of targeted information in a mixed media reality recognition system |
US9171202B2 (en) | 2005-08-23 | 2015-10-27 | Ricoh Co., Ltd. | Data organization and access for mixed media document system |
US8949287B2 (en) | 2005-08-23 | 2015-02-03 | Ricoh Co., Ltd. | Embedding hot spots in imaged documents |
US9530050B1 (en) | 2007-07-11 | 2016-12-27 | Ricoh Co., Ltd. | Document annotation sharing |
US8005831B2 (en) * | 2005-08-23 | 2011-08-23 | Ricoh Co., Ltd. | System and methods for creation and use of a mixed media environment with geographic location information |
US8156427B2 (en) * | 2005-08-23 | 2012-04-10 | Ricoh Co. Ltd. | User interface for mixed media reality |
US8868555B2 (en) * | 2006-07-31 | 2014-10-21 | Ricoh Co., Ltd. | Computation of a recongnizability score (quality predictor) for image retrieval |
US7669148B2 (en) * | 2005-08-23 | 2010-02-23 | Ricoh Co., Ltd. | System and methods for portable device for mixed media system |
US7920759B2 (en) * | 2005-08-23 | 2011-04-05 | Ricoh Co. Ltd. | Triggering applications for distributed action execution and use of mixed media recognition as a control input |
US8510283B2 (en) * | 2006-07-31 | 2013-08-13 | Ricoh Co., Ltd. | Automatic adaption of an image recognition system to image capture devices |
US8169410B2 (en) * | 2004-10-20 | 2012-05-01 | Nintendo Co., Ltd. | Gesture inputs for a portable display device |
US7472341B2 (en) | 2004-11-08 | 2008-12-30 | International Business Machines Corporation | Multi-user, multi-timed collaborative annotation |
CA2500573A1 (en) * | 2005-03-14 | 2006-09-14 | Oculus Info Inc. | Advances in nspace - system and method for information analysis |
US7689655B2 (en) * | 2004-12-06 | 2010-03-30 | Aol Inc. | Managing and collaborating with digital content using a dynamic user interface |
US8225195B1 (en) | 2004-12-15 | 2012-07-17 | Amazon Technologies, Inc. | Displaying links at varying levels of prominence to reveal emergent paths based on user interaction |
US7467349B1 (en) | 2004-12-15 | 2008-12-16 | Amazon Technologies, Inc. | Method and system for displaying a hyperlink at multiple levels of prominence based on user interaction |
US7421448B2 (en) * | 2004-12-20 | 2008-09-02 | Sap Ag | System and method for managing web content by using annotation tags |
JP2006209496A (en) * | 2005-01-28 | 2006-08-10 | Fuji Xerox Co Ltd | Information processor, information processing method and information processing program |
US8640959B2 (en) * | 2005-03-18 | 2014-02-04 | The Invention Science Fund I, Llc | Acquisition of a user expression and a context of the expression |
US7826687B2 (en) | 2005-03-18 | 2010-11-02 | The Invention Science Fund I, Llc | Including contextual information with a formed expression |
US8102383B2 (en) * | 2005-03-18 | 2012-01-24 | The Invention Science Fund I, Llc | Performing an action with respect to a hand-formed expression |
US8823636B2 (en) * | 2005-03-18 | 2014-09-02 | The Invention Science Fund I, Llc | Including environmental information in a manual expression |
US8340476B2 (en) * | 2005-03-18 | 2012-12-25 | The Invention Science Fund I, Llc | Electronic acquisition of a hand formed expression and a context of the expression |
US20070273674A1 (en) * | 2005-03-18 | 2007-11-29 | Searete Llc, A Limited Liability Corporation | Machine-differentiatable identifiers having a commonly accepted meaning |
US7672512B2 (en) * | 2005-03-18 | 2010-03-02 | Searete Llc | Forms for completion with an electronic writing device |
US20060212509A1 (en) * | 2005-03-21 | 2006-09-21 | International Business Machines Corporation | Profile driven method for enabling annotation of World Wide Web resources |
US9769354B2 (en) | 2005-03-24 | 2017-09-19 | Kofax, Inc. | Systems and methods of processing scanned data |
US9137417B2 (en) | 2005-03-24 | 2015-09-15 | Kofax, Inc. | Systems and methods for processing video data |
US20060277482A1 (en) * | 2005-06-07 | 2006-12-07 | Ilighter Corp. | Method and apparatus for automatically storing and retrieving selected document sections and user-generated notes |
US9235560B2 (en) * | 2005-06-09 | 2016-01-12 | International Business Machines Corporation | General purpose annotation service for portal-based applications |
US8660900B2 (en) * | 2005-07-13 | 2014-02-25 | Perogo, Inc. | Multi-site message sharing |
US7831913B2 (en) * | 2005-07-29 | 2010-11-09 | Microsoft Corporation | Selection-based item tagging |
US7562287B1 (en) | 2005-08-17 | 2009-07-14 | Clipmarks Llc | System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources |
US7769772B2 (en) * | 2005-08-23 | 2010-08-03 | Ricoh Co., Ltd. | Mixed media reality brokerage network with layout-independent recognition |
US20070061703A1 (en) * | 2005-09-12 | 2007-03-15 | International Business Machines Corporation | Method and apparatus for annotating a document |
US9177050B2 (en) | 2005-10-04 | 2015-11-03 | Thomson Reuters Global Resources | Systems, methods, and interfaces for extending legal search results |
US20070101257A1 (en) * | 2005-10-14 | 2007-05-03 | Xerox Corporation | Electronic file re-formatting tool |
US8943035B2 (en) * | 2005-11-14 | 2015-01-27 | Patrick J. Ferrel | Distributing web applications across a pre-existing web |
US7526737B2 (en) * | 2005-11-14 | 2009-04-28 | Microsoft Corporation | Free form wiper |
US7958456B2 (en) | 2005-12-23 | 2011-06-07 | Apple Inc. | Scrolling list with floating adjacent index symbols |
US8533199B2 (en) * | 2005-12-14 | 2013-09-10 | Unifi Scientific Advances, Inc | Intelligent bookmarks and information management system based on the same |
US20070143298A1 (en) * | 2005-12-16 | 2007-06-21 | Microsoft Corporation | Browsing items related to email |
US8018440B2 (en) | 2005-12-30 | 2011-09-13 | Microsoft Corporation | Unintentional touch rejection |
US7509588B2 (en) | 2005-12-30 | 2009-03-24 | Apple Inc. | Portable electronic device with interface reconfiguration mode |
US8117196B2 (en) * | 2006-01-23 | 2012-02-14 | Chacha Search, Inc. | Search tool providing optional use of human search guides |
US8266130B2 (en) | 2006-01-23 | 2012-09-11 | Chacha Search, Inc. | Search tool providing optional use of human search guides |
US7962466B2 (en) * | 2006-01-23 | 2011-06-14 | Chacha Search, Inc | Automated tool for human assisted mining and capturing of precise results |
US20070174762A1 (en) * | 2006-01-24 | 2007-07-26 | International Business Machines Corporation | Personal web page annotation system |
US7970763B2 (en) * | 2006-02-21 | 2011-06-28 | Microsoft Corporation | Searching and indexing of photos based on ink annotations |
US7996776B2 (en) * | 2006-02-27 | 2011-08-09 | Microsoft Corporation | Shared telepointer |
US7925993B2 (en) * | 2006-03-30 | 2011-04-12 | Amazon Technologies, Inc. | Method and system for aggregating and presenting user highlighting of content |
US7593965B2 (en) * | 2006-05-10 | 2009-09-22 | Doubledip Llc | System of customizing and presenting internet content to associate advertising therewith |
US7478332B2 (en) * | 2006-05-24 | 2009-01-13 | 170 Systems Inc. | System for and method of providing a user interface for a computer-based software application |
US8434013B2 (en) * | 2006-05-26 | 2013-04-30 | Oracle America, Inc. | Navigating source code using annotated topographic image(s) |
JP4946189B2 (en) * | 2006-06-13 | 2012-06-06 | 富士ゼロックス株式会社 | Annotation information distribution program and annotation information distribution apparatus |
JP2007334470A (en) * | 2006-06-13 | 2007-12-27 | Fuji Xerox Co Ltd | Information processor and program regarding electronic tag |
US11301532B2 (en) | 2006-06-22 | 2022-04-12 | Rohit Chandra | Searching for user selected portions of content |
US11853374B2 (en) | 2006-06-22 | 2023-12-26 | Rohit Chandra | Directly, automatically embedding a content portion |
US11429685B2 (en) | 2006-06-22 | 2022-08-30 | Rohit Chandra | Sharing only a part of a web page—the part selected by a user |
US11288686B2 (en) * | 2006-06-22 | 2022-03-29 | Rohit Chandra | Identifying micro users interests: at a finer level of granularity |
US9805010B2 (en) | 2006-06-28 | 2017-10-31 | Adobe Systems Incorporated | Methods and apparatus for redacting related content in a document |
US8584005B1 (en) * | 2006-06-28 | 2013-11-12 | Adobe Systems Incorporated | Previewing redaction content in a document |
US7827253B2 (en) * | 2006-07-24 | 2010-11-02 | International Business Machines Corporation | Methods, systems, and computer program products for dynamically annotating web pages passed via a messaging application |
US8073263B2 (en) * | 2006-07-31 | 2011-12-06 | Ricoh Co., Ltd. | Multi-classifier selection and monitoring for MMR-based image recognition |
US8201076B2 (en) * | 2006-07-31 | 2012-06-12 | Ricoh Co., Ltd. | Capturing symbolic information from documents upon printing |
US9176984B2 (en) * | 2006-07-31 | 2015-11-03 | Ricoh Co., Ltd | Mixed media reality retrieval of differentially-weighted links |
US9020966B2 (en) * | 2006-07-31 | 2015-04-28 | Ricoh Co., Ltd. | Client device for interacting with a mixed media reality recognition system |
US8489987B2 (en) * | 2006-07-31 | 2013-07-16 | Ricoh Co., Ltd. | Monitoring and analyzing creation and usage of visual content using image and hotspot interaction |
US8676810B2 (en) * | 2006-07-31 | 2014-03-18 | Ricoh Co., Ltd. | Multiple index mixed media reality recognition using unequal priority indexes |
US9063952B2 (en) * | 2006-07-31 | 2015-06-23 | Ricoh Co., Ltd. | Mixed media reality recognition with image tracking |
US20080046218A1 (en) * | 2006-08-16 | 2008-02-21 | Microsoft Corporation | Visual summarization of activity data of a computing session |
US20080059281A1 (en) * | 2006-08-30 | 2008-03-06 | Kimberly-Clark Worldwide, Inc. | Systems and methods for product attribute analysis and product recommendation |
US8842074B2 (en) | 2006-09-06 | 2014-09-23 | Apple Inc. | Portable electronic device performing similar operations for different gestures |
US7864163B2 (en) * | 2006-09-06 | 2011-01-04 | Apple Inc. | Portable electronic device, method, and graphical user interface for displaying structured electronic documents |
US7956849B2 (en) * | 2006-09-06 | 2011-06-07 | Apple Inc. | Video manager for portable multifunction device |
US10313505B2 (en) | 2006-09-06 | 2019-06-04 | Apple Inc. | Portable multifunction device, method, and graphical user interface for configuring and displaying widgets |
US7587392B2 (en) * | 2006-09-15 | 2009-09-08 | Microsoft Corporation | Efficient navigation of search results |
US8812945B2 (en) * | 2006-10-11 | 2014-08-19 | Laurent Frederick Sidon | Method of dynamically creating real time presentations responsive to search expression |
KR100705474B1 (en) * | 2006-10-19 | 2007-04-09 | (주)이즈포유 | System displaying and managing information using indicator on webpage |
US20080195931A1 (en) * | 2006-10-27 | 2008-08-14 | Microsoft Corporation | Parsing of ink annotations |
US20080215589A1 (en) * | 2006-11-10 | 2008-09-04 | Getingate, Inc. | System, Method, and Computer-Readable Medium for Collection and Distribution of User-Supplied Comments Associated with Network and Local Content |
US8214768B2 (en) * | 2007-01-05 | 2012-07-03 | Apple Inc. | Method, system, and graphical user interface for viewing multiple application windows |
US20080165148A1 (en) * | 2007-01-07 | 2008-07-10 | Richard Williamson | Portable Electronic Device, Method, and Graphical User Interface for Displaying Inline Multimedia Content |
US8519964B2 (en) | 2007-01-07 | 2013-08-27 | Apple Inc. | Portable multifunction device, method, and graphical user interface supporting user navigations of graphical objects on a touch screen display |
US8595635B2 (en) | 2007-01-25 | 2013-11-26 | Salesforce.Com, Inc. | System, method and apparatus for selecting content from web sources and posting content to web logs |
US20090282365A1 (en) * | 2007-02-06 | 2009-11-12 | Nikon Corporation | Image processing apparatus, image reproducing apparatus, imaging apparatus and program recording medium |
US8930331B2 (en) | 2007-02-21 | 2015-01-06 | Palantir Technologies | Providing unique views of data based on changes or rules |
US20080229186A1 (en) * | 2007-03-14 | 2008-09-18 | Microsoft Corporation | Persisting digital ink annotations as image metadata |
US20080276190A1 (en) * | 2007-04-03 | 2008-11-06 | Sugarcrm Inc. | Customer Relationship Management System with Quicknotes |
US20080250327A1 (en) * | 2007-04-09 | 2008-10-09 | Microsoft Corporation | Content commenting and monetization |
US20080256434A1 (en) * | 2007-04-10 | 2008-10-16 | Morris Robert P | Methods, Systems, And Computer Program Products For Associating User-Provided Annotation Data With Markup Content Of A Resource |
US20080256441A1 (en) * | 2007-04-16 | 2008-10-16 | Yahoo! Inc. | Flash rich textfields |
US7975215B2 (en) * | 2007-05-14 | 2011-07-05 | Microsoft Corporation | Sharing editable ink annotated images with annotation-unaware applications |
US20080294972A1 (en) * | 2007-05-21 | 2008-11-27 | Stix.To Ab | System and method for adding a layer of marks on top of web-pages |
US8316309B2 (en) * | 2007-05-31 | 2012-11-20 | International Business Machines Corporation | User-created metadata for managing interface resources on a user interface |
US9933937B2 (en) | 2007-06-20 | 2018-04-03 | Apple Inc. | Portable multifunction device, method, and graphical user interface for playing online videos |
US9772751B2 (en) | 2007-06-29 | 2017-09-26 | Apple Inc. | Using gestures to slide between user interfaces |
US7937663B2 (en) | 2007-06-29 | 2011-05-03 | Microsoft Corporation | Integrated collaborative user interface for a document editor program |
US8775474B2 (en) | 2007-06-29 | 2014-07-08 | Microsoft Corporation | Exposing common metadata in digital images |
US9035948B2 (en) * | 2007-08-02 | 2015-05-19 | Adobe Systems Incorporated | Methods and systems for drawing graphics into a data chart |
US9619143B2 (en) | 2008-01-06 | 2017-04-11 | Apple Inc. | Device, method, and graphical user interface for viewing application launch icons |
US11126321B2 (en) | 2007-09-04 | 2021-09-21 | Apple Inc. | Application menu user interface |
US8619038B2 (en) | 2007-09-04 | 2013-12-31 | Apple Inc. | Editing interface |
JP5168619B2 (en) * | 2007-09-12 | 2013-03-21 | 株式会社リコー | Image display data generation apparatus and image display data generation method |
US8799103B1 (en) | 2007-09-20 | 2014-08-05 | Ariba, Inc. | Client-side structured data capture and remote application integration using a web browser |
US20090132907A1 (en) * | 2007-11-20 | 2009-05-21 | Shin-Chung Shao | Annotation Structure for Web Pages, System and Method for Annotating Web Pages |
US8566752B2 (en) | 2007-12-21 | 2013-10-22 | Ricoh Co., Ltd. | Persistent selection marks |
US8405621B2 (en) * | 2008-01-06 | 2013-03-26 | Apple Inc. | Variable rate media playback methods for electronic devices with touch interfaces |
US8555193B2 (en) * | 2008-01-17 | 2013-10-08 | Google Inc. | System for intelligent automated layout and management of interactive windows |
US20090199083A1 (en) * | 2008-01-17 | 2009-08-06 | Can Sar | Method of enabling the modification and annotation of a webpage from a web browser |
US20090187818A1 (en) * | 2008-01-22 | 2009-07-23 | International Business Machines Corporation | Method and system of interface comment mapping |
US20090193327A1 (en) * | 2008-01-30 | 2009-07-30 | Microsoft Corporation | High-fidelity scalable annotations |
US8390579B2 (en) * | 2008-03-14 | 2013-03-05 | France Telecom | System for classifying gestures |
JP2009237792A (en) * | 2008-03-26 | 2009-10-15 | Fujifilm Corp | Content processing apparatus and method |
US20100151431A1 (en) * | 2008-03-27 | 2010-06-17 | Knowledge Athletes, Inc. | Virtual learning |
US8078693B2 (en) * | 2008-04-14 | 2011-12-13 | Microsoft Corporation | Inserting a multimedia file through a web-based desktop productivity application |
US7949633B1 (en) | 2008-05-12 | 2011-05-24 | Adobe Systems Incorporated | Shared edit access of electronic content |
US7945595B1 (en) | 2008-05-12 | 2011-05-17 | Adobe Systems Incorporated | System and method for generating an item list in electronic content |
US8996621B2 (en) | 2008-05-12 | 2015-03-31 | Adobe Systems Incorporated | Asynchronous comment updates |
US9418054B2 (en) | 2008-05-12 | 2016-08-16 | Adobe Systems Incorporated | Document comment management |
US10055392B2 (en) | 2008-05-12 | 2018-08-21 | Adobe Systems Incorporated | History-based archive management |
US20090307762A1 (en) * | 2008-06-05 | 2009-12-10 | Chorus Llc | System and method to create, save, and display web annotations that are selectively shared within specified online communities |
US10282391B2 (en) | 2008-07-03 | 2019-05-07 | Ebay Inc. | Position editing tool of collage multi-media |
US8893015B2 (en) | 2008-07-03 | 2014-11-18 | Ebay Inc. | Multi-directional and variable speed navigation of collage multi-media |
US9251266B2 (en) * | 2008-07-03 | 2016-02-02 | International Business Machines Corporation | Assisting users in searching for tagged content based on historical usage patterns |
US8627192B2 (en) | 2008-07-03 | 2014-01-07 | Ebay Inc. | System and methods for automatic media population of a style presentation |
GB2461771A (en) * | 2008-07-11 | 2010-01-20 | Icyte Pty Ltd | Annotation of electronic documents with preservation of document as originally annotated |
US11245708B2 (en) * | 2008-07-23 | 2022-02-08 | Mcafee, Llc | Model-based system, method, and computer program product for detecting at least potentially unwanted activity associated with confidential data |
WO2010025945A1 (en) * | 2008-09-05 | 2010-03-11 | Torsten Maul | Method for attaching electronic notes to web sites and communicating such notes over the internet |
US8244801B2 (en) * | 2008-09-15 | 2012-08-14 | Wolf Pack Products, Llc | System for digital yearbook delivery with multi-media data |
US9373132B2 (en) | 2008-09-15 | 2016-06-21 | Wolf Pack Products, Llc | System for digital yearbook with advertising |
US10380102B2 (en) | 2008-09-15 | 2019-08-13 | Wolf Pack Products, Llc | System for digital yearbook |
US8595294B2 (en) | 2008-09-15 | 2013-11-26 | Wolf Pack Products, Llc | System for digital yearbook with advertising |
US9348499B2 (en) | 2008-09-15 | 2016-05-24 | Palantir Technologies, Inc. | Sharing objects that rely on local resources with outside servers |
US20100082612A1 (en) * | 2008-09-24 | 2010-04-01 | Microsoft Corporation | Determining relevance between an image and its location |
US20100100866A1 (en) * | 2008-10-21 | 2010-04-22 | International Business Machines Corporation | Intelligent Shared Virtual Whiteboard For Use With Representational Modeling Languages |
US9563616B2 (en) * | 2008-11-07 | 2017-02-07 | Workiva Inc. | Method and system for generating and utilizing persistent electronic tick marks and use of electronic support binders |
US8156133B2 (en) * | 2009-01-14 | 2012-04-10 | Raytheon Company | Modifying an electronic graphics file to be searchable according to annotation information |
US8319736B2 (en) * | 2009-01-19 | 2012-11-27 | Microsoft Corporation | Touch sensitive computing device and method |
US8219937B2 (en) * | 2009-02-09 | 2012-07-10 | Microsoft Corporation | Manipulation of graphical elements on graphical user interface via multi-touch gestures |
US9349046B2 (en) | 2009-02-10 | 2016-05-24 | Kofax, Inc. | Smart optical input/output (I/O) extension for context-dependent workflows |
US8774516B2 (en) | 2009-02-10 | 2014-07-08 | Kofax, Inc. | Systems, methods and computer program products for determining document validity |
US9767354B2 (en) | 2009-02-10 | 2017-09-19 | Kofax, Inc. | Global geographic information retrieval, validation, and normalization |
US8879846B2 (en) | 2009-02-10 | 2014-11-04 | Kofax, Inc. | Systems, methods and computer program products for processing financial documents |
US9576272B2 (en) | 2009-02-10 | 2017-02-21 | Kofax, Inc. | Systems, methods and computer program products for determining document validity |
US8958605B2 (en) | 2009-02-10 | 2015-02-17 | Kofax, Inc. | Systems, methods and computer program products for determining document validity |
US9330097B2 (en) * | 2009-02-17 | 2016-05-03 | Hewlett-Packard Development Company, L.P. | Projects containing media data of different types |
US8839155B2 (en) * | 2009-03-16 | 2014-09-16 | Apple Inc. | Accelerated scrolling for a multifunction device |
US8572513B2 (en) | 2009-03-16 | 2013-10-29 | Apple Inc. | Device, method, and graphical user interface for moving a current position in content at a variable scrubbing rate |
WO2010114624A1 (en) * | 2009-04-04 | 2010-10-07 | Brett Matthews | Online document annotation and reading system |
US8836648B2 (en) * | 2009-05-27 | 2014-09-16 | Microsoft Corporation | Touch pull-in gesture |
EP2438541A2 (en) * | 2009-06-01 | 2012-04-11 | West Services, Inc. | Improved systems, methods, and interfaces for extending legal search results |
US20100313252A1 (en) * | 2009-06-08 | 2010-12-09 | Erie Trouw | System, method and apparatus for creating and using a virtual layer within a web browsing environment |
US20100325527A1 (en) * | 2009-06-18 | 2010-12-23 | Microsoft Corporation | Overlay for digital annotations |
US8385660B2 (en) * | 2009-06-24 | 2013-02-26 | Ricoh Co., Ltd. | Mixed media reality indexing and retrieval for repeated content |
US8624933B2 (en) | 2009-09-25 | 2014-01-07 | Apple Inc. | Device, method, and graphical user interface for scrolling a multi-section document |
JP5474479B2 (en) * | 2009-09-30 | 2014-04-16 | 株式会社日立製作所 | How to display a document with images |
US20110137548A1 (en) * | 2009-12-07 | 2011-06-09 | Microsoft Corporation | Multi-Modal Life Organizer |
US8443280B2 (en) * | 2009-12-15 | 2013-05-14 | Bluebeam Software, Inc. | Method for sequenced document annotations |
US20110145692A1 (en) * | 2009-12-16 | 2011-06-16 | Peter Noyes | Method for Tracking Annotations with Associated Actions |
US8736561B2 (en) | 2010-01-06 | 2014-05-27 | Apple Inc. | Device, method, and graphical user interface with content display modes and display rotation heuristics |
US8438504B2 (en) | 2010-01-06 | 2013-05-07 | Apple Inc. | Device, method, and graphical user interface for navigating through multiple viewing areas |
US20110178981A1 (en) * | 2010-01-21 | 2011-07-21 | International Business Machines Corporation | Collecting community feedback for collaborative document development |
US8239785B2 (en) * | 2010-01-27 | 2012-08-07 | Microsoft Corporation | Edge gestures |
US9411504B2 (en) * | 2010-01-28 | 2016-08-09 | Microsoft Technology Licensing, Llc | Copy and staple gestures |
US8261213B2 (en) | 2010-01-28 | 2012-09-04 | Microsoft Corporation | Brush, carbon-copy, and fill gestures |
US20110185299A1 (en) * | 2010-01-28 | 2011-07-28 | Microsoft Corporation | Stamp Gestures |
US20110185320A1 (en) * | 2010-01-28 | 2011-07-28 | Microsoft Corporation | Cross-reference Gestures |
US9519356B2 (en) * | 2010-02-04 | 2016-12-13 | Microsoft Technology Licensing, Llc | Link gestures |
US20110191719A1 (en) * | 2010-02-04 | 2011-08-04 | Microsoft Corporation | Cut, Punch-Out, and Rip Gestures |
US20110191704A1 (en) * | 2010-02-04 | 2011-08-04 | Microsoft Corporation | Contextual multiplexing gestures |
US9367205B2 (en) | 2010-02-19 | 2016-06-14 | Microsoft Technolgoy Licensing, Llc | Radial menus with bezel gestures |
US20110209098A1 (en) * | 2010-02-19 | 2011-08-25 | Hinckley Kenneth P | On and Off-Screen Gesture Combinations |
US9310994B2 (en) * | 2010-02-19 | 2016-04-12 | Microsoft Technology Licensing, Llc | Use of bezel as an input mechanism |
US9274682B2 (en) * | 2010-02-19 | 2016-03-01 | Microsoft Technology Licensing, Llc | Off-screen gestures to create on-screen input |
US9965165B2 (en) * | 2010-02-19 | 2018-05-08 | Microsoft Technology Licensing, Llc | Multi-finger gestures |
US8799827B2 (en) * | 2010-02-19 | 2014-08-05 | Microsoft Corporation | Page manipulations using on and off-screen gestures |
US9075522B2 (en) * | 2010-02-25 | 2015-07-07 | Microsoft Technology Licensing, Llc | Multi-screen bookmark hold gesture |
US8473870B2 (en) | 2010-02-25 | 2013-06-25 | Microsoft Corporation | Multi-screen hold and drag gesture |
US20110209058A1 (en) * | 2010-02-25 | 2011-08-25 | Microsoft Corporation | Multi-screen hold and tap gesture |
US9454304B2 (en) | 2010-02-25 | 2016-09-27 | Microsoft Technology Licensing, Llc | Multi-screen dual tap gesture |
US8539384B2 (en) * | 2010-02-25 | 2013-09-17 | Microsoft Corporation | Multi-screen pinch and expand gestures |
US8707174B2 (en) * | 2010-02-25 | 2014-04-22 | Microsoft Corporation | Multi-screen hold and page-flip gesture |
US8751970B2 (en) * | 2010-02-25 | 2014-06-10 | Microsoft Corporation | Multi-screen synchronous slide gesture |
US20110258526A1 (en) * | 2010-04-20 | 2011-10-20 | International Business Machines Corporation | Web content annotation management web browser plug-in |
US20110258216A1 (en) * | 2010-04-20 | 2011-10-20 | International Business Machines Corporation | Usability enhancements for bookmarks of browsers |
US9092128B2 (en) | 2010-05-21 | 2015-07-28 | Apple Inc. | Method and apparatus for managing visual information |
US8312365B2 (en) * | 2010-06-11 | 2012-11-13 | Microsoft Corporation | Rendering web content with a brush |
JPWO2012042599A1 (en) * | 2010-09-28 | 2014-02-03 | 富士通株式会社 | Information adding method, information processing apparatus, and program |
US9678572B2 (en) | 2010-10-01 | 2017-06-13 | Samsung Electronics Co., Ltd. | Apparatus and method for turning e-book pages in portable terminal |
KR101743632B1 (en) | 2010-10-01 | 2017-06-07 | 삼성전자주식회사 | Apparatus and method for turning e-book pages in portable terminal |
EP2437151B1 (en) | 2010-10-01 | 2020-07-08 | Samsung Electronics Co., Ltd. | Apparatus and method for turning e-book pages in portable terminal |
WO2012050251A1 (en) * | 2010-10-14 | 2012-04-19 | 엘지전자 주식회사 | Mobile terminal and method for controlling same |
US9141710B2 (en) * | 2010-10-27 | 2015-09-22 | International Business Machines Corporation | Persisting annotations within a cobrowsing session |
US20120159373A1 (en) * | 2010-12-15 | 2012-06-21 | Verizon Patent And Licensing, Inc. | System for and method of generating dog ear bookmarks on a touch screen device |
US20120159395A1 (en) | 2010-12-20 | 2012-06-21 | Microsoft Corporation | Application-launching interface for multiple modes |
US8612874B2 (en) | 2010-12-23 | 2013-12-17 | Microsoft Corporation | Presenting an application change through a tile |
US8689123B2 (en) | 2010-12-23 | 2014-04-01 | Microsoft Corporation | Application reporting in an application-selectable user interface |
US9785335B2 (en) * | 2010-12-27 | 2017-10-10 | Sling Media Inc. | Systems and methods for adaptive gesture recognition |
JP5263309B2 (en) | 2011-01-28 | 2013-08-14 | ブラザー工業株式会社 | Image reading system and image reading apparatus |
CN102682025B (en) * | 2011-03-16 | 2014-03-19 | 中兴通讯股份有限公司 | Device and method for achieving adding and displaying of web image comments |
US9104440B2 (en) | 2011-05-27 | 2015-08-11 | Microsoft Technology Licensing, Llc | Multi-application environment |
US9104307B2 (en) | 2011-05-27 | 2015-08-11 | Microsoft Technology Licensing, Llc | Multi-application environment |
US9158445B2 (en) | 2011-05-27 | 2015-10-13 | Microsoft Technology Licensing, Llc | Managing an immersive interface in a multi-application immersive environment |
US9658766B2 (en) | 2011-05-27 | 2017-05-23 | Microsoft Technology Licensing, Llc | Edge gesture |
US8893033B2 (en) | 2011-05-27 | 2014-11-18 | Microsoft Corporation | Application notifications |
US9430583B1 (en) | 2011-06-10 | 2016-08-30 | Salesforce.Com, Inc. | Extracting a portion of a document, such as a web page |
US9092482B2 (en) | 2013-03-14 | 2015-07-28 | Palantir Technologies, Inc. | Fair scheduling for mixed-query loads |
US8799240B2 (en) | 2011-06-23 | 2014-08-05 | Palantir Technologies, Inc. | System and method for investigating large amounts of data |
US9547693B1 (en) | 2011-06-23 | 2017-01-17 | Palantir Technologies Inc. | Periodic database search manager for multiple data sources |
US9058331B2 (en) | 2011-07-27 | 2015-06-16 | Ricoh Co., Ltd. | Generating a conversation in a social network based on visual search results |
US8732574B2 (en) | 2011-08-25 | 2014-05-20 | Palantir Technologies, Inc. | System and method for parameterizing documents for automatic workflow generation |
US20130057587A1 (en) | 2011-09-01 | 2013-03-07 | Microsoft Corporation | Arranging tiles |
US8504542B2 (en) | 2011-09-02 | 2013-08-06 | Palantir Technologies, Inc. | Multi-row transactions |
US9146670B2 (en) | 2011-09-10 | 2015-09-29 | Microsoft Technology Licensing, Llc | Progressively indicating new content in an application-selectable user interface |
US9141595B2 (en) * | 2011-10-05 | 2015-09-22 | Adobe Systems Incorporated | Contextual commenting on the web |
US9191424B1 (en) * | 2011-11-23 | 2015-11-17 | Google Inc. | Media capture during message generation |
JP5418576B2 (en) * | 2011-11-28 | 2014-02-19 | コニカミノルタ株式会社 | Information browsing apparatus and display control program |
US9483794B2 (en) | 2012-01-12 | 2016-11-01 | Kofax, Inc. | Systems and methods for identification document processing and business workflow integration |
US9058515B1 (en) | 2012-01-12 | 2015-06-16 | Kofax, Inc. | Systems and methods for identification document processing and business workflow integration |
US9342742B2 (en) | 2012-01-12 | 2016-05-17 | Kofax, Inc. | Systems and methods for mobile image capture and processing |
US10146795B2 (en) | 2012-01-12 | 2018-12-04 | Kofax, Inc. | Systems and methods for mobile image capture and processing |
US9058580B1 (en) | 2012-01-12 | 2015-06-16 | Kofax, Inc. | Systems and methods for identification document processing and business workflow integration |
US20130201161A1 (en) * | 2012-02-03 | 2013-08-08 | John E. Dolan | Methods, Systems and Apparatus for Digital-Marking-Surface Content-Unit Manipulation |
US9026900B1 (en) * | 2012-02-10 | 2015-05-05 | Google Inc. | Invisible overlay for dynamic annotation |
KR20130114336A (en) * | 2012-04-09 | 2013-10-17 | 삼성전자주식회사 | Page display method and apparatus |
US9753926B2 (en) | 2012-04-30 | 2017-09-05 | Salesforce.Com, Inc. | Extracting a portion of a document, such as a web page |
US9412372B2 (en) * | 2012-05-08 | 2016-08-09 | SpeakWrite, LLC | Method and system for audio-video integration |
KR20140014551A (en) * | 2012-07-24 | 2014-02-06 | 삼성전자주식회사 | Memo function providing method and system based on a cloud service, and portable terminal supporting the same |
JP5284524B1 (en) * | 2012-09-07 | 2013-09-11 | 株式会社東芝 | Electronic device and handwritten document processing method |
US9703792B2 (en) | 2012-09-24 | 2017-07-11 | Moxtra, Inc. | Online binders |
US9348677B2 (en) | 2012-10-22 | 2016-05-24 | Palantir Technologies Inc. | System and method for batch evaluation programs |
US9582122B2 (en) | 2012-11-12 | 2017-02-28 | Microsoft Technology Licensing, Llc | Touch-sensitive bezel techniques |
US9380431B1 (en) | 2013-01-31 | 2016-06-28 | Palantir Technologies, Inc. | Use of teams in a mobile application |
JP2016517587A (en) | 2013-03-13 | 2016-06-16 | コファックス, インコーポレイテッド | Classification of objects in digital images captured using mobile devices |
US9208536B2 (en) | 2013-09-27 | 2015-12-08 | Kofax, Inc. | Systems and methods for three dimensional geometric reconstruction of captured image data |
US9355312B2 (en) | 2013-03-13 | 2016-05-31 | Kofax, Inc. | Systems and methods for classifying objects in digital images captured using mobile devices |
US10037314B2 (en) | 2013-03-14 | 2018-07-31 | Palantir Technologies, Inc. | Mobile reports |
US8868486B2 (en) | 2013-03-15 | 2014-10-21 | Palantir Technologies Inc. | Time-sensitive cube |
US9965937B2 (en) | 2013-03-15 | 2018-05-08 | Palantir Technologies Inc. | External malware data item clustering and analysis |
US8937619B2 (en) | 2013-03-15 | 2015-01-20 | Palantir Technologies Inc. | Generating an object time series from data objects |
US10275778B1 (en) | 2013-03-15 | 2019-04-30 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive investigation based on automatic malfeasance clustering of related data in various data structures |
US8818892B1 (en) | 2013-03-15 | 2014-08-26 | Palantir Technologies, Inc. | Prioritizing data clusters with customizable scoring strategies |
US8909656B2 (en) | 2013-03-15 | 2014-12-09 | Palantir Technologies Inc. | Filter chains with associated multipath views for exploring large data sets |
US8917274B2 (en) | 2013-03-15 | 2014-12-23 | Palantir Technologies Inc. | Event matrix based on integrated data |
US20140316841A1 (en) | 2013-04-23 | 2014-10-23 | Kofax, Inc. | Location-based workflows and services |
JP2016518790A (en) | 2013-05-03 | 2016-06-23 | コファックス, インコーポレイテッド | System and method for detecting and classifying objects in video captured using a mobile device |
US8799799B1 (en) | 2013-05-07 | 2014-08-05 | Palantir Technologies Inc. | Interactive geospatial map |
US20140337705A1 (en) * | 2013-05-10 | 2014-11-13 | Successfactors, Inc. | System and method for annotations |
US20140344030A1 (en) * | 2013-05-20 | 2014-11-20 | John F. Groom | Unique content creation and remuneration systems and methods |
US9477372B2 (en) | 2013-08-08 | 2016-10-25 | Palantir Technologies Inc. | Cable reader snippets and postboard |
US9565152B2 (en) | 2013-08-08 | 2017-02-07 | Palantir Technologies Inc. | Cable reader labeling |
US8713467B1 (en) | 2013-08-09 | 2014-04-29 | Palantir Technologies, Inc. | Context-sensitive views |
KR102147935B1 (en) * | 2013-08-29 | 2020-08-25 | 삼성전자주식회사 | Method for processing data and an electronic device thereof |
US9704137B2 (en) * | 2013-09-13 | 2017-07-11 | Box, Inc. | Simultaneous editing/accessing of content by collaborator invitation through a web-based or mobile application to a cloud-based collaboration platform |
GB2518298A (en) | 2013-09-13 | 2015-03-18 | Box Inc | High-availability architecture for a cloud-based concurrent-access collaboration platform |
US8892679B1 (en) | 2013-09-13 | 2014-11-18 | Box, Inc. | Mobile device, methods and user interfaces thereof in a mobile device platform featuring multifunctional access and engagement in a collaborative environment provided by a cloud-based platform |
US8938686B1 (en) | 2013-10-03 | 2015-01-20 | Palantir Technologies Inc. | Systems and methods for analyzing performance of an entity |
US8924872B1 (en) | 2013-10-18 | 2014-12-30 | Palantir Technologies Inc. | Overview user interface of emergency call data of a law enforcement agency |
US9116975B2 (en) | 2013-10-18 | 2015-08-25 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive simultaneous querying of multiple data stores |
US10866931B2 (en) | 2013-10-22 | 2020-12-15 | Box, Inc. | Desktop application for accessing a cloud collaboration platform |
US9021384B1 (en) | 2013-11-04 | 2015-04-28 | Palantir Technologies Inc. | Interactive vehicle information map |
US8868537B1 (en) | 2013-11-11 | 2014-10-21 | Palantir Technologies, Inc. | Simple web search |
US9386235B2 (en) | 2013-11-15 | 2016-07-05 | Kofax, Inc. | Systems and methods for generating composite images of long documents using mobile video data |
US9898451B2 (en) | 2013-11-26 | 2018-02-20 | Adobe Systems Incorporated | Content adaptation based on selected reviewer comment |
US9105000B1 (en) | 2013-12-10 | 2015-08-11 | Palantir Technologies Inc. | Aggregating data from a plurality of data sources |
US9734217B2 (en) | 2013-12-16 | 2017-08-15 | Palantir Technologies Inc. | Methods and systems for analyzing entity performance |
US20150178260A1 (en) * | 2013-12-20 | 2015-06-25 | Avaya, Inc. | Multi-layered presentation and mechanisms for collaborating with the same |
US9552615B2 (en) | 2013-12-20 | 2017-01-24 | Palantir Technologies Inc. | Automated database analysis to detect malfeasance |
US11082466B2 (en) | 2013-12-20 | 2021-08-03 | Avaya Inc. | Active talker activated conference pointers |
US10356032B2 (en) | 2013-12-26 | 2019-07-16 | Palantir Technologies Inc. | System and method for detecting confidential information emails |
US10331777B2 (en) | 2013-12-31 | 2019-06-25 | Barnes & Noble College Booksellers, Llc | Merging annotations of paginated digital content |
US8832832B1 (en) | 2014-01-03 | 2014-09-09 | Palantir Technologies Inc. | IP reputation |
US9483162B2 (en) | 2014-02-20 | 2016-11-01 | Palantir Technologies Inc. | Relationship visualizations |
US9727376B1 (en) | 2014-03-04 | 2017-08-08 | Palantir Technologies, Inc. | Mobile tasks |
US10963924B1 (en) | 2014-03-10 | 2021-03-30 | A9.Com, Inc. | Media processing techniques for enhancing content |
US9477337B2 (en) | 2014-03-14 | 2016-10-25 | Microsoft Technology Licensing, Llc | Conductive trace routing for display and bezel sensors |
US8924429B1 (en) | 2014-03-18 | 2014-12-30 | Palantir Technologies Inc. | Determining and extracting changed data from a data source |
US10338793B2 (en) * | 2014-04-25 | 2019-07-02 | Timothy Isaac FISHER | Messaging with drawn graphic input |
US9857958B2 (en) | 2014-04-28 | 2018-01-02 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive access of, investigation of, and analysis of data objects stored in one or more databases |
US20150317071A1 (en) * | 2014-05-05 | 2015-11-05 | Peter N. Moore | Method and Computer-Readable Medium for Cueing the Display of Active Content to an Audience |
US9619557B2 (en) | 2014-06-30 | 2017-04-11 | Palantir Technologies, Inc. | Systems and methods for key phrase characterization of documents |
US9535974B1 (en) | 2014-06-30 | 2017-01-03 | Palantir Technologies Inc. | Systems and methods for identifying key phrase clusters within documents |
US9202249B1 (en) | 2014-07-03 | 2015-12-01 | Palantir Technologies Inc. | Data item clustering and analysis |
US9256664B2 (en) | 2014-07-03 | 2016-02-09 | Palantir Technologies Inc. | System and method for news events detection and visualization |
US9454281B2 (en) | 2014-09-03 | 2016-09-27 | Palantir Technologies Inc. | System for providing dynamic linked panels in user interface |
US10509853B2 (en) * | 2014-09-05 | 2019-12-17 | Microsoft Technology Licensing, Llc | Creating an annotation pane for a document by augmenting the document |
US9501851B2 (en) | 2014-10-03 | 2016-11-22 | Palantir Technologies Inc. | Time-series analysis system |
US9767172B2 (en) | 2014-10-03 | 2017-09-19 | Palantir Technologies Inc. | Data aggregation and analysis system |
US9984133B2 (en) | 2014-10-16 | 2018-05-29 | Palantir Technologies Inc. | Schematic and database linking system |
US9760788B2 (en) | 2014-10-30 | 2017-09-12 | Kofax, Inc. | Mobile document detection and orientation based on reference object characteristics |
US9229952B1 (en) | 2014-11-05 | 2016-01-05 | Palantir Technologies, Inc. | History preserving data pipeline system and method |
US9043894B1 (en) | 2014-11-06 | 2015-05-26 | Palantir Technologies Inc. | Malicious software detection in a computing system |
US10452757B2 (en) * | 2014-11-25 | 2019-10-22 | Oracle International Corporation | Persistent user personalization |
CN104391834A (en) * | 2014-12-11 | 2015-03-04 | 成都明日星辰科技有限公司 | Method for annotating electronic book content |
US10362133B1 (en) | 2014-12-22 | 2019-07-23 | Palantir Technologies Inc. | Communication data processing architecture |
US9348920B1 (en) | 2014-12-22 | 2016-05-24 | Palantir Technologies Inc. | Concept indexing among database of documents using machine learning techniques |
US9367872B1 (en) | 2014-12-22 | 2016-06-14 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive investigation of bad actor behavior based on automatic clustering of related data in various data structures |
US10552994B2 (en) | 2014-12-22 | 2020-02-04 | Palantir Technologies Inc. | Systems and interactive user interfaces for dynamic retrieval, analysis, and triage of data items |
US9335911B1 (en) | 2014-12-29 | 2016-05-10 | Palantir Technologies Inc. | Interactive user interface for dynamic data analysis exploration and query processing |
US9817563B1 (en) | 2014-12-29 | 2017-11-14 | Palantir Technologies Inc. | System and method of generating data points from one or more data stores of data items for chart creation and manipulation |
US9870205B1 (en) | 2014-12-29 | 2018-01-16 | Palantir Technologies Inc. | Storing logical units of program code generated using a dynamic programming notebook user interface |
US10372879B2 (en) | 2014-12-31 | 2019-08-06 | Palantir Technologies Inc. | Medical claims lead summary report generation |
US9727560B2 (en) | 2015-02-25 | 2017-08-08 | Palantir Technologies Inc. | Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags |
US10002361B2 (en) | 2015-02-27 | 2018-06-19 | Esquify, Inc. | Remote supervision of client device activity |
US9910644B2 (en) * | 2015-03-03 | 2018-03-06 | Microsoft Technology Licensing, Llc | Integrated note-taking functionality for computing system entities |
EP3070622A1 (en) | 2015-03-16 | 2016-09-21 | Palantir Technologies, Inc. | Interactive user interfaces for location-based data analysis |
US9886467B2 (en) | 2015-03-19 | 2018-02-06 | Plantir Technologies Inc. | System and method for comparing and visualizing data entities and data entity series |
CN104699408A (en) * | 2015-04-01 | 2015-06-10 | 广东欧珀移动通信有限公司 | Operation method and device of touch screen and touch device |
US10360287B2 (en) | 2015-05-22 | 2019-07-23 | Microsoft Technology Licensing, Llc | Unified messaging platform and interface for providing user callouts |
US20160344677A1 (en) * | 2015-05-22 | 2016-11-24 | Microsoft Technology Licensing, Llc | Unified messaging platform for providing interactive semantic objects |
US10242285B2 (en) | 2015-07-20 | 2019-03-26 | Kofax, Inc. | Iterative recognition-guided thresholding and data extraction |
US9454785B1 (en) | 2015-07-30 | 2016-09-27 | Palantir Technologies Inc. | Systems and user interfaces for holistic, data-driven investigation of bad actor behavior based on clustering and scoring of related data |
US9996595B2 (en) | 2015-08-03 | 2018-06-12 | Palantir Technologies, Inc. | Providing full data provenance visualization for versioned datasets |
US9456000B1 (en) | 2015-08-06 | 2016-09-27 | Palantir Technologies Inc. | Systems, methods, user interfaces, and computer-readable media for investigating potential malicious communications |
CA2993664C (en) | 2015-08-13 | 2023-03-21 | Bluebeam Software, Inc. | Method for archiving a collaboration session with a multimedia data stream and view parameters |
US10489391B1 (en) | 2015-08-17 | 2019-11-26 | Palantir Technologies Inc. | Systems and methods for grouping and enriching data items accessed from one or more databases for presentation in a user interface |
US9600146B2 (en) | 2015-08-17 | 2017-03-21 | Palantir Technologies Inc. | Interactive geospatial map |
US10853378B1 (en) | 2015-08-25 | 2020-12-01 | Palantir Technologies Inc. | Electronic note management via a connected entity graph |
US11150917B2 (en) | 2015-08-26 | 2021-10-19 | Palantir Technologies Inc. | System for data aggregation and analysis of data from a plurality of data sources |
US9485265B1 (en) | 2015-08-28 | 2016-11-01 | Palantir Technologies Inc. | Malicious activity detection system capable of efficiently processing data accessed from databases and generating alerts for display in interactive user interfaces |
US10706434B1 (en) | 2015-09-01 | 2020-07-07 | Palantir Technologies Inc. | Methods and systems for determining location information |
US9576015B1 (en) | 2015-09-09 | 2017-02-21 | Palantir Technologies, Inc. | Domain-specific language for dataset transformations |
US10296617B1 (en) | 2015-10-05 | 2019-05-21 | Palantir Technologies Inc. | Searches of highly structured data |
US9542446B1 (en) | 2015-12-17 | 2017-01-10 | Palantir Technologies, Inc. | Automatic generation of composite datasets based on hierarchical fields |
US9823818B1 (en) | 2015-12-29 | 2017-11-21 | Palantir Technologies Inc. | Systems and interactive user interfaces for automatic generation of temporal representation of data objects |
US9612723B1 (en) | 2015-12-30 | 2017-04-04 | Palantir Technologies Inc. | Composite graphical interface with shareable data-objects |
US10228775B2 (en) * | 2016-01-22 | 2019-03-12 | Microsoft Technology Licensing, Llc | Cross application digital ink repository |
US10698938B2 (en) | 2016-03-18 | 2020-06-30 | Palantir Technologies Inc. | Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags |
US9779296B1 (en) | 2016-04-01 | 2017-10-03 | Kofax, Inc. | Content-based detection and three dimensional geometric reconstruction of objects in image and video data |
US10719188B2 (en) | 2016-07-21 | 2020-07-21 | Palantir Technologies Inc. | Cached database and synchronization system for providing dynamic linked panels in user interface |
US10324609B2 (en) | 2016-07-21 | 2019-06-18 | Palantir Technologies Inc. | System for providing dynamic linked panels in user interface |
US10437840B1 (en) | 2016-08-19 | 2019-10-08 | Palantir Technologies Inc. | Focused probabilistic entity resolution from multiple data sources |
US10852936B2 (en) * | 2016-09-23 | 2020-12-01 | Apple Inc. | Devices, methods, and graphical user interfaces for a unified annotation layer for annotating content displayed on a device |
US20180101512A1 (en) * | 2016-10-07 | 2018-04-12 | Flowfinity Wireless Inc. | Multi-Media Forms System |
US10318630B1 (en) | 2016-11-21 | 2019-06-11 | Palantir Technologies Inc. | Analysis of large bodies of textual data |
JP2017091559A (en) * | 2016-12-12 | 2017-05-25 | 株式会社リコー | Apparatus and method |
KR20180071886A (en) * | 2016-12-20 | 2018-06-28 | 삼성전자주식회사 | Electric device and method for categorizing content |
US10460602B1 (en) | 2016-12-28 | 2019-10-29 | Palantir Technologies Inc. | Interactive vehicle information mapping system |
US10956406B2 (en) | 2017-06-12 | 2021-03-23 | Palantir Technologies Inc. | Propagated deletion of database records and derived data |
US10387747B2 (en) * | 2017-06-26 | 2019-08-20 | Huddly As | Intelligent whiteboard collaboratio systems and methods |
US10403011B1 (en) | 2017-07-18 | 2019-09-03 | Palantir Technologies Inc. | Passing system with an interactive user interface |
US11062176B2 (en) | 2017-11-30 | 2021-07-13 | Kofax, Inc. | Object detection and image cropping using a multi-detector approach |
US11599369B1 (en) | 2018-03-08 | 2023-03-07 | Palantir Technologies Inc. | Graphical user interface configuration system |
US10754822B1 (en) | 2018-04-18 | 2020-08-25 | Palantir Technologies Inc. | Systems and methods for ontology migration |
US10885021B1 (en) | 2018-05-02 | 2021-01-05 | Palantir Technologies Inc. | Interactive interpreter and graphical user interface |
US11119630B1 (en) | 2018-06-19 | 2021-09-14 | Palantir Technologies Inc. | Artificial intelligence assisted evaluations and user interface for same |
US11258834B2 (en) * | 2018-10-05 | 2022-02-22 | Explain Everything, Inc. | System and method for recording online collaboration |
CN111857893B (en) * | 2019-04-08 | 2024-05-28 | 百度在线网络技术(北京)有限公司 | Method and device for generating annotation graph |
US20220391055A1 (en) * | 2021-05-28 | 2022-12-08 | Ricoh Company, Ltd. | Display apparatus, display system, and display method |
US11418571B1 (en) | 2021-07-29 | 2022-08-16 | Servicenow, Inc. | Server-side workflow improvement based on client-side data mining |
Citations (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5577188A (en) * | 1994-05-31 | 1996-11-19 | Future Labs, Inc. | Method to provide for virtual screen overlay |
US5581670A (en) * | 1993-07-21 | 1996-12-03 | Xerox Corporation | User interface having movable sheet with click-through tools |
US5689717A (en) * | 1993-12-03 | 1997-11-18 | Lockheed Martin Corporation | Method and apparatus for the placement of annotations on a display without overlap |
US6105055A (en) * | 1998-03-13 | 2000-08-15 | Siemens Corporate Research, Inc. | Method and apparatus for asynchronous multimedia collaboration |
US6133925A (en) * | 1994-08-31 | 2000-10-17 | Microsoft Corporation | Automated system and method for annotation using callouts |
US6297824B1 (en) * | 1997-11-26 | 2001-10-02 | Xerox Corporation | Interactive interface for viewing retrieval results |
US6342906B1 (en) * | 1999-02-02 | 2002-01-29 | International Business Machines Corporation | Annotation layer for synchronous collaboration |
US6369811B1 (en) * | 1998-09-09 | 2002-04-09 | Ricoh Company Limited | Automatic adaptive document help for paper documents |
US20020059342A1 (en) * | 1997-10-23 | 2002-05-16 | Anoop Gupta | Annotating temporally-dimensioned multimedia content |
US6549922B1 (en) * | 1999-10-01 | 2003-04-15 | Alok Srivastava | System for collecting, transforming and managing media metadata |
US6573907B1 (en) * | 1997-07-03 | 2003-06-03 | Obvious Technology | Network distribution and management of interactive video and multi-media containers |
US6584479B2 (en) * | 1998-06-17 | 2003-06-24 | Xerox Corporation | Overlay presentation of textual and graphical annotations |
US6582475B2 (en) * | 1998-09-09 | 2003-06-24 | Ricoh Company Limited | Automatic adaptive document printing help system |
US20030196164A1 (en) * | 1998-09-15 | 2003-10-16 | Anoop Gupta | Annotations for multiple versions of media content |
US6654032B1 (en) * | 1999-12-23 | 2003-11-25 | Webex Communications, Inc. | Instant sharing of documents on a remote server |
US6665490B2 (en) * | 1998-04-01 | 2003-12-16 | Xerox Corporation | Obtaining and using data associating annotating activities with portions of recordings |
US6687876B1 (en) * | 1998-12-30 | 2004-02-03 | Fuji Xerox Co., Ltd. | Method and system for maintaining freeform ink annotations on changing views |
US6832355B1 (en) * | 1998-07-28 | 2004-12-14 | Microsoft Corporation | Web page display system |
US6877137B1 (en) * | 1998-04-09 | 2005-04-05 | Rose Blush Software Llc | System, method and computer program product for mediating notes and note sub-notes linked or otherwise associated with stored or networked web pages |
US6950982B1 (en) * | 1999-11-19 | 2005-09-27 | Xerox Corporation | Active annotation mechanism for document management systems |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5404295A (en) * | 1990-08-16 | 1995-04-04 | Katz; Boris | Method and apparatus for utilizing annotations to facilitate computer retrieval of database material |
US5309359A (en) * | 1990-08-16 | 1994-05-03 | Boris Katz | Method and apparatus for generating and utlizing annotations to facilitate computer text retrieval |
US5946406A (en) * | 1991-06-17 | 1999-08-31 | Microsoft Corporation | Method and system for data entry of handwritten symbols |
EP0566293B1 (en) * | 1992-04-15 | 2003-07-16 | Xerox Corporation | Graphical drawing and editing systems and methods therefor |
JP3453422B2 (en) * | 1994-02-10 | 2003-10-06 | キヤノン株式会社 | Registration method of character pattern in user dictionary and character recognition device having the user dictionary |
US5897648A (en) | 1994-06-27 | 1999-04-27 | Numonics Corporation | Apparatus and method for editing electronic documents |
US5737740A (en) | 1994-06-27 | 1998-04-07 | Numonics | Apparatus and method for processing electronic documents |
US5826025A (en) * | 1995-09-08 | 1998-10-20 | Sun Microsystems, Inc. | System for annotation overlay proxy configured to retrieve associated overlays associated with a document request from annotation directory created from list of overlay groups |
US5822539A (en) * | 1995-12-08 | 1998-10-13 | Sun Microsystems, Inc. | System for adding requested document cross references to a document by annotation proxy configured to merge and a directory generator and annotation server |
US6081829A (en) * | 1996-01-31 | 2000-06-27 | Silicon Graphics, Inc. | General purpose web annotations without modifying browser |
US5832474A (en) * | 1996-02-26 | 1998-11-03 | Matsushita Electric Industrial Co., Ltd. | Document search and retrieval system with partial match searching of user-drawn annotations |
US6049329A (en) * | 1996-06-04 | 2000-04-11 | International Business Machines Corporartion | Method of and system for facilitating user input into a small GUI window using a stylus |
US6240444B1 (en) * | 1996-09-27 | 2001-05-29 | International Business Machines Corporation | Internet web page sharing |
US5953541A (en) * | 1997-01-24 | 1999-09-14 | Tegic Communications, Inc. | Disambiguating system for disambiguating ambiguous input sequences by displaying objects associated with the generated input sequences in the order of decreasing frequency of use |
US7111009B1 (en) * | 1997-03-14 | 2006-09-19 | Microsoft Corporation | Interactive playlist generation using annotations |
US6279014B1 (en) | 1997-09-15 | 2001-08-21 | Xerox Corporation | Method and system for organizing documents based upon annotations in context |
JP4183311B2 (en) * | 1997-12-22 | 2008-11-19 | 株式会社リコー | Document annotation method, annotation device, and recording medium |
US6181344B1 (en) * | 1998-03-20 | 2001-01-30 | Nuvomedia, Inc. | Drag-and-release method for configuring user-definable function key of hand-held computing device |
US6956593B1 (en) * | 1998-09-15 | 2005-10-18 | Microsoft Corporation | User interface for creating, viewing and temporally positioning annotations for media content |
US6262728B1 (en) * | 1998-11-03 | 2001-07-17 | Agilent Technologies, Inc. | System and method for annotating a graphical user interface display in a computer-based system |
US6389435B1 (en) | 1999-02-05 | 2002-05-14 | Fuji Xerox, Co, Ltd. | Method and system for copying a freeform digital ink mark on an object to a related object |
US6687877B1 (en) | 1999-02-17 | 2004-02-03 | Siemens Corp. Research Inc. | Web-based call center system with web document annotation |
US6565611B1 (en) * | 1999-02-26 | 2003-05-20 | Xerox Corporation | Automatic index creation for handwritten digital ink notes |
US6687878B1 (en) * | 1999-03-15 | 2004-02-03 | Real Time Image Ltd. | Synchronizing/updating local client notes with annotations previously made by other clients in a notes database |
US6519603B1 (en) * | 1999-10-28 | 2003-02-11 | International Business Machine Corporation | Method and system for organizing an annotation structure and for querying data and annotations |
-
2000
- 2000-03-07 US US09/521,022 patent/US6859909B1/en not_active Expired - Lifetime
-
2004
- 2004-01-09 US US10/753,344 patent/US7409633B2/en not_active Expired - Fee Related
- 2004-03-03 US US10/790,678 patent/US20040172595A1/en not_active Abandoned
- 2004-05-19 US US10/848,047 patent/US20040210833A1/en not_active Abandoned
Patent Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5581670A (en) * | 1993-07-21 | 1996-12-03 | Xerox Corporation | User interface having movable sheet with click-through tools |
US5689717A (en) * | 1993-12-03 | 1997-11-18 | Lockheed Martin Corporation | Method and apparatus for the placement of annotations on a display without overlap |
US5577188A (en) * | 1994-05-31 | 1996-11-19 | Future Labs, Inc. | Method to provide for virtual screen overlay |
US6133925A (en) * | 1994-08-31 | 2000-10-17 | Microsoft Corporation | Automated system and method for annotation using callouts |
US6573907B1 (en) * | 1997-07-03 | 2003-06-03 | Obvious Technology | Network distribution and management of interactive video and multi-media containers |
US20020059342A1 (en) * | 1997-10-23 | 2002-05-16 | Anoop Gupta | Annotating temporally-dimensioned multimedia content |
US6297824B1 (en) * | 1997-11-26 | 2001-10-02 | Xerox Corporation | Interactive interface for viewing retrieval results |
US6105055A (en) * | 1998-03-13 | 2000-08-15 | Siemens Corporate Research, Inc. | Method and apparatus for asynchronous multimedia collaboration |
US6665490B2 (en) * | 1998-04-01 | 2003-12-16 | Xerox Corporation | Obtaining and using data associating annotating activities with portions of recordings |
US6877137B1 (en) * | 1998-04-09 | 2005-04-05 | Rose Blush Software Llc | System, method and computer program product for mediating notes and note sub-notes linked or otherwise associated with stored or networked web pages |
US6584479B2 (en) * | 1998-06-17 | 2003-06-24 | Xerox Corporation | Overlay presentation of textual and graphical annotations |
US6832355B1 (en) * | 1998-07-28 | 2004-12-14 | Microsoft Corporation | Web page display system |
US6582475B2 (en) * | 1998-09-09 | 2003-06-24 | Ricoh Company Limited | Automatic adaptive document printing help system |
US6369811B1 (en) * | 1998-09-09 | 2002-04-09 | Ricoh Company Limited | Automatic adaptive document help for paper documents |
US20030196164A1 (en) * | 1998-09-15 | 2003-10-16 | Anoop Gupta | Annotations for multiple versions of media content |
US7051275B2 (en) * | 1998-09-15 | 2006-05-23 | Microsoft Corporation | Annotations for multiple versions of media content |
US6687876B1 (en) * | 1998-12-30 | 2004-02-03 | Fuji Xerox Co., Ltd. | Method and system for maintaining freeform ink annotations on changing views |
US6342906B1 (en) * | 1999-02-02 | 2002-01-29 | International Business Machines Corporation | Annotation layer for synchronous collaboration |
US6549922B1 (en) * | 1999-10-01 | 2003-04-15 | Alok Srivastava | System for collecting, transforming and managing media metadata |
US6950982B1 (en) * | 1999-11-19 | 2005-09-27 | Xerox Corporation | Active annotation mechanism for document management systems |
US6654032B1 (en) * | 1999-12-23 | 2003-11-25 | Webex Communications, Inc. | Instant sharing of documents on a remote server |
Cited By (127)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7269790B2 (en) * | 2000-04-11 | 2007-09-11 | Oce Printing Systems Gmbh | Method and system for in-register processing of print data |
US20030090714A1 (en) * | 2000-04-11 | 2003-05-15 | Christoph Sandhaus | Method and system for processing print data, whilst restaining tab alignment |
US8533628B2 (en) * | 2000-06-12 | 2013-09-10 | Softview Llc | Method, apparatus, and browser to support full-page web browsing on hand-held wireless devices |
US20070198916A1 (en) * | 2000-06-12 | 2007-08-23 | Rohrabaugh Gary B | Resolution independent vector display of internet content |
US20110231746A1 (en) * | 2000-06-12 | 2011-09-22 | Softview L.L.C. | Scalable display of internet content on mobile devices |
US20110231782A1 (en) * | 2000-06-12 | 2011-09-22 | Softview L.L.C. | Scalable Display of Internet Content on Mobile Devices |
US20080028335A1 (en) * | 2000-06-12 | 2008-01-31 | Rohrabaugh Gary B | Scalable display of internet content on mobile devices |
US9519729B2 (en) | 2000-06-12 | 2016-12-13 | Softview L.L.C. | Scalable display of internet content on mobile devices |
US8386959B2 (en) | 2000-06-12 | 2013-02-26 | Softview Llc | Scalable display of internet content on mobile devices |
US7155664B1 (en) * | 2000-11-14 | 2006-12-26 | Cypress Semiconductor, Corp. | Extracting comment keywords from distinct design files to produce documentation |
US9569437B2 (en) * | 2001-08-28 | 2017-02-14 | Eugene M. Lee | Computer implemented method and system for document annotation with split feature |
US20130047070A1 (en) * | 2001-08-28 | 2013-02-21 | Eugene M. Lee | Computer implemented method and system for document annotaton with split feature |
US20040199516A1 (en) * | 2001-10-31 | 2004-10-07 | Metacyber.Net | Source information adapter and method for use in generating a computer memory-resident hierarchical structure for original source information |
US8180787B2 (en) | 2002-02-26 | 2012-05-15 | International Business Machines Corporation | Application portability and extensibility through database schema and query abstraction |
US20070057930A1 (en) * | 2002-07-30 | 2007-03-15 | Microsoft Corporation | Freeform Encounter Selection Tool |
US8132125B2 (en) * | 2002-07-30 | 2012-03-06 | Microsoft Corporation | Freeform encounter selection tool |
US8140964B2 (en) | 2002-12-04 | 2012-03-20 | International Business Machines Corporation | Annotation validity using partial checksums |
US20080209310A1 (en) * | 2002-12-04 | 2008-08-28 | Cragun Brian J | Annotation validity using partial checksums |
US7392267B2 (en) * | 2002-12-04 | 2008-06-24 | International Business Machines Corporation | Annotation validity using partial checksums |
US20080072135A1 (en) * | 2002-12-04 | 2008-03-20 | International Business Machines Corporation | Annotation validity using partial checksums |
US20040111668A1 (en) * | 2002-12-04 | 2004-06-10 | International Business Machines Corporation | Annotation validity using partial checksums |
US9811513B2 (en) | 2003-12-09 | 2017-11-07 | International Business Machines Corporation | Annotation structure type determination |
US20050289452A1 (en) * | 2004-06-24 | 2005-12-29 | Avaya Technology Corp. | Architecture for ink annotations on web documents |
US20060010368A1 (en) * | 2004-06-24 | 2006-01-12 | Avaya Technology Corp. | Method for storing and retrieving digital ink call logs |
US7284192B2 (en) * | 2004-06-24 | 2007-10-16 | Avaya Technology Corp. | Architecture for ink annotations on web documents |
US7797630B2 (en) | 2004-06-24 | 2010-09-14 | Avaya Inc. | Method for storing and retrieving digital ink call logs |
US20060031755A1 (en) * | 2004-06-24 | 2006-02-09 | Avaya Technology Corp. | Sharing inking during multi-modal communication |
US10387549B2 (en) * | 2004-06-25 | 2019-08-20 | Apple Inc. | Procedurally expressing graphic objects for web pages |
US20060053364A1 (en) * | 2004-09-08 | 2006-03-09 | Josef Hollander | System and method for arbitrary annotation of web pages copyright notice |
US20060053365A1 (en) * | 2004-09-08 | 2006-03-09 | Josef Hollander | Method for creating custom annotated books |
US7506246B2 (en) * | 2004-09-08 | 2009-03-17 | Sharedbook Limited | Printing a custom online book and creating groups of annotations made by various users using annotation identifiers before the printing |
US20090204882A1 (en) * | 2004-09-08 | 2009-08-13 | Sharedbook Ltd. | System and method for annotation of web pages |
US20090199082A1 (en) * | 2004-09-08 | 2009-08-06 | Sharedbook Ltd. | System and method for annotation of web pages |
US20080270887A1 (en) * | 2004-11-12 | 2008-10-30 | Justsystems Corporation | Document Processing Device And Document Processing Method |
US7571381B2 (en) * | 2004-11-25 | 2009-08-04 | Canon Kabushiki Kaisha | Layout method, program, and device |
US20060112330A1 (en) * | 2004-11-25 | 2006-05-25 | Canon Kabushiki Kaisha | Layout method, program, and device |
US20070136657A1 (en) * | 2005-03-25 | 2007-06-14 | Daniel Blumenthal | Process for Automatic Data Annotation, Selection, and Utilization. |
US20070106952A1 (en) * | 2005-06-03 | 2007-05-10 | Apple Computer, Inc. | Presenting and managing clipped content |
US20060277460A1 (en) * | 2005-06-03 | 2006-12-07 | Scott Forstall | Webview applications |
US9098597B2 (en) * | 2005-06-03 | 2015-08-04 | Apple Inc. | Presenting and managing clipped content |
US20060288273A1 (en) * | 2005-06-20 | 2006-12-21 | Ricoh Company, Ltd. | Event-driven annotation techniques |
US8805929B2 (en) * | 2005-06-20 | 2014-08-12 | Ricoh Company, Ltd. | Event-driven annotation techniques |
US20070043688A1 (en) * | 2005-08-18 | 2007-02-22 | Microsoft Corporation | Annotating shared contacts with public descriptors |
US8095551B2 (en) | 2005-08-18 | 2012-01-10 | Microsoft Corporation | Annotating shared contacts with public descriptors |
US20070099672A1 (en) * | 2005-10-28 | 2007-05-03 | Lg Electronics Inc. | Mobile communication terminal and link management method of the same |
US7899487B2 (en) * | 2005-10-28 | 2011-03-01 | Lg Electronics Inc. | Mobile communication terminal and link management method of the same |
KR100719514B1 (en) | 2005-12-20 | 2007-05-17 | 엔에이치엔(주) | Method and system for sorting/searching file and record media therefor |
US20080294632A1 (en) * | 2005-12-20 | 2008-11-27 | Nhn Corporation | Method and System for Sorting/Searching File and Record Media Therefor |
WO2007073097A1 (en) * | 2005-12-20 | 2007-06-28 | Nhn Corporation | Method and system for sorting/searching file and record media therefor |
US20110214047A1 (en) * | 2006-05-19 | 2011-09-01 | Wsu Research Foundation | Strategies for annotating digital maps |
US8904275B2 (en) | 2006-05-19 | 2014-12-02 | Washington State University | Strategies for annotating digital maps |
US7945852B1 (en) * | 2006-05-19 | 2011-05-17 | Washington State University Research Foundation | Strategies for annotating digital maps |
US8640023B1 (en) * | 2006-07-10 | 2014-01-28 | Oracle America, Inc. | Method and system for providing HTML page annotations using AJAX and JAVA enterprise edition |
US20080082610A1 (en) * | 2006-09-29 | 2008-04-03 | Breise Devin W | Method and apparatus for providing collaborative user interface feedback |
US8661035B2 (en) * | 2006-12-29 | 2014-02-25 | International Business Machines Corporation | Content management system and method |
US20080162528A1 (en) * | 2006-12-29 | 2008-07-03 | Adnan Shabbir Jariwala | Content Management System and Method |
US20080228876A1 (en) * | 2007-03-13 | 2008-09-18 | Byron Johnson | System and method for online collaboration |
US20080228590A1 (en) * | 2007-03-13 | 2008-09-18 | Byron Johnson | System and method for providing an online book synopsis |
US20080225757A1 (en) * | 2007-03-13 | 2008-09-18 | Byron Johnson | Web-based interactive learning system and method |
US20080227076A1 (en) * | 2007-03-13 | 2008-09-18 | Byron Johnson | Progress monitor and method of doing the same |
US20080235597A1 (en) * | 2007-03-19 | 2008-09-25 | Mor Schlesinger | Systems and methods of data integration for creating custom books |
US20080260241A1 (en) * | 2007-04-20 | 2008-10-23 | Microsoft Corporation | Grouping writing regions of digital ink |
US9317492B2 (en) | 2007-04-20 | 2016-04-19 | Microsoft Technology Licensing Llc | Grouping writing regions of digital ink |
US8407589B2 (en) * | 2007-04-20 | 2013-03-26 | Microsoft Corporation | Grouping writing regions of digital ink |
US20080276159A1 (en) * | 2007-05-01 | 2008-11-06 | International Business Machines Corporation | Creating Annotated Recordings and Transcripts of Presentations Using a Mobile Device |
US20080276177A1 (en) * | 2007-05-03 | 2008-11-06 | Microsoft Corporation | Tag-sharing and tag-sharing application program interface |
WO2008137510A1 (en) * | 2007-05-03 | 2008-11-13 | Microsoft Corporation | Tag-sharing and tag-sharing application program interface |
US20090043799A1 (en) * | 2007-08-06 | 2009-02-12 | Morris Robert P | Methods And Apparatus For Using Annotated User Interface Widgets In Search Operations |
US20090044144A1 (en) * | 2007-08-06 | 2009-02-12 | Morris Robert P | Methods And Apparatus For Sharing User Interface Widget Annotations |
US20090073188A1 (en) * | 2007-09-13 | 2009-03-19 | James Williams | System and method of modifying illustrations using scaleable vector graphics |
US8601393B2 (en) * | 2008-01-28 | 2013-12-03 | Fuji Xerox Co., Ltd. | System and method for supporting document navigation on mobile devices using segmentation and keyphrase summarization |
US20090193337A1 (en) * | 2008-01-28 | 2009-07-30 | Fuji Xerox Co., Ltd. | System and method for supporting document navigation on mobile devices using segmentation and keyphrase summarization |
US20110113320A1 (en) * | 2008-02-21 | 2011-05-12 | Globalenglish Corporation | Network-Accessible Collaborative Annotation Tool |
US8612469B2 (en) | 2008-02-21 | 2013-12-17 | Globalenglish Corporation | Network-accessible collaborative annotation tool |
US20090217196A1 (en) * | 2008-02-21 | 2009-08-27 | Globalenglish Corporation | Web-Based Tool for Collaborative, Social Learning |
US10223342B2 (en) | 2008-02-21 | 2019-03-05 | Pearson Education, Inc. | Network-accessible collaborative annotation tool |
US20140033015A1 (en) * | 2008-05-12 | 2014-01-30 | Adobe Systems Incorporated | Comment presentation in electronic documents |
US9176943B2 (en) * | 2008-05-12 | 2015-11-03 | Adobe Systems Incorporated | Comment presentation in electronic documents |
US20090287793A1 (en) * | 2008-05-19 | 2009-11-19 | O'sullivan Patrick Joseph | Markup elements in referenced content |
US8510646B1 (en) * | 2008-07-01 | 2013-08-13 | Google Inc. | Method and system for contextually placed chat-like annotations |
US10394942B1 (en) * | 2008-07-01 | 2019-08-27 | Google Llc | Method and system for contextually placed chat-like annotations |
US20100042615A1 (en) * | 2008-08-12 | 2010-02-18 | Peter Rinearson | Systems and methods for aggregating content on a user-content driven website |
US8380866B2 (en) | 2009-03-20 | 2013-02-19 | Ricoh Company, Ltd. | Techniques for facilitating annotations |
US20100325557A1 (en) * | 2009-06-17 | 2010-12-23 | Agostino Sibillo | Annotation of aggregated content, systems and methods |
US8745067B2 (en) * | 2009-08-12 | 2014-06-03 | Google Inc. | Presenting comments from various sources |
US20110040787A1 (en) * | 2009-08-12 | 2011-02-17 | Google Inc. | Presenting comments from various sources |
US20110289404A1 (en) * | 2010-05-19 | 2011-11-24 | Alexandra Fleur | System and methods for document critique |
WO2012057791A1 (en) * | 2010-10-29 | 2012-05-03 | Fractor, LLC | Methods and systems for concatenating and transferring web accessible content and metadata |
KR101809089B1 (en) * | 2011-05-11 | 2017-12-14 | 세창인스트루먼트(주) | Method for accomplishing effect that extracts and moves an area on the picture of the web page |
US20140108918A1 (en) * | 2011-05-11 | 2014-04-17 | Sechang Instruments Co., Ltd. | Method for Processing an Effect of Extracting and Moving a Section on an Output Display of a Webpage |
US20130007588A1 (en) * | 2011-06-30 | 2013-01-03 | International Business Machines Corporation | Systems and methods for globalizing web applications |
US20130145249A1 (en) * | 2011-07-06 | 2013-06-06 | Myriad France | Smart annotation anchoring process |
US9064111B2 (en) * | 2011-08-03 | 2015-06-23 | Samsung Electronics Co., Ltd. | Sandboxing technology for webruntime system |
US20130036448A1 (en) * | 2011-08-03 | 2013-02-07 | Samsung Electronics Co., Ltd. | Sandboxing technology for webruntime system |
US8893225B2 (en) | 2011-10-14 | 2014-11-18 | Samsung Electronics Co., Ltd. | Method and apparatus for secure web widget runtime system |
US10481771B1 (en) | 2011-10-17 | 2019-11-19 | Google Llc | Systems and methods for controlling the display of online documents |
US20220414321A1 (en) * | 2012-08-13 | 2022-12-29 | Google Llc | Managing a sharing of media content among client computers |
US11960826B2 (en) * | 2012-08-13 | 2024-04-16 | Google Llc | Managing a sharing of media content among client computers |
US20140109019A1 (en) * | 2012-10-17 | 2014-04-17 | Research In Motion Limited | Electronic device including touch-sensitive display and method of controlling same |
US9098127B2 (en) * | 2012-10-17 | 2015-08-04 | Blackberry Limited | Electronic device including touch-sensitive display and method of controlling same |
US9529785B2 (en) | 2012-11-27 | 2016-12-27 | Google Inc. | Detecting relationships between edits and acting on a subset of edits |
US11087075B2 (en) | 2013-08-19 | 2021-08-10 | Google Llc | Systems and methods for resolving privileged edits within suggested edits |
US11663396B2 (en) | 2013-08-19 | 2023-05-30 | Google Llc | Systems and methods for resolving privileged edits within suggested edits |
US10380232B2 (en) | 2013-08-19 | 2019-08-13 | Google Llc | Systems and methods for resolving privileged edits within suggested edits |
US9971752B2 (en) | 2013-08-19 | 2018-05-15 | Google Llc | Systems and methods for resolving privileged edits within suggested edits |
US9348803B2 (en) | 2013-10-22 | 2016-05-24 | Google Inc. | Systems and methods for providing just-in-time preview of suggestion resolutions |
US10567382B2 (en) | 2013-11-11 | 2020-02-18 | Amazon Technologies, Inc. | Access control for a document management and collaboration system |
US9832195B2 (en) | 2013-11-11 | 2017-11-28 | Amazon Technologies, Inc. | Developer based document collaboration |
US10686788B2 (en) | 2013-11-11 | 2020-06-16 | Amazon Technologies, Inc. | Developer based document collaboration |
US10599753B1 (en) * | 2013-11-11 | 2020-03-24 | Amazon Technologies, Inc. | Document version control in collaborative environment |
US10257196B2 (en) | 2013-11-11 | 2019-04-09 | Amazon Technologies, Inc. | Access control for a document management and collaboration system |
US9542391B1 (en) | 2013-11-11 | 2017-01-10 | Amazon Technologies, Inc. | Processing service requests for non-transactional databases |
US10877953B2 (en) | 2013-11-11 | 2020-12-29 | Amazon Technologies, Inc. | Processing service requests for non-transactional databases |
US11336648B2 (en) | 2013-11-11 | 2022-05-17 | Amazon Technologies, Inc. | Document management and collaboration system |
US9449182B1 (en) | 2013-11-11 | 2016-09-20 | Amazon Technologies, Inc. | Access control for a document management and collaboration system |
US9460062B2 (en) * | 2013-12-30 | 2016-10-04 | Adobe Systems Incorporated | Local rendering of an object as an image |
US20150185994A1 (en) * | 2013-12-30 | 2015-07-02 | Adobe Systems Incorporated | Local Rendering of an Object as an Image |
US10540404B1 (en) | 2014-02-07 | 2020-01-21 | Amazon Technologies, Inc. | Forming a document collection in a document management and collaboration system |
US10691877B1 (en) | 2014-02-07 | 2020-06-23 | Amazon Technologies, Inc. | Homogenous insertion of interactions into documents |
US20160070686A1 (en) * | 2014-09-05 | 2016-03-10 | Microsoft Corporation | Collecting annotations for a document by augmenting the document |
US9807073B1 (en) | 2014-09-29 | 2017-10-31 | Amazon Technologies, Inc. | Access to documents in a document management and collaboration system |
US10432603B2 (en) | 2014-09-29 | 2019-10-01 | Amazon Technologies, Inc. | Access to documents in a document management and collaboration system |
US10114810B2 (en) * | 2014-12-01 | 2018-10-30 | Workiva Inc. | Methods and a computing device for maintaining comments and graphical annotations for a document |
US20160155091A1 (en) * | 2014-12-01 | 2016-06-02 | Workiva Inc. | Methods and a computing device for maintaining comments for a document |
US10585980B2 (en) | 2014-12-01 | 2020-03-10 | Workiva Inc. | Methods and a computing device for maintaining comments and graphical annotations for a document |
US20160227015A1 (en) * | 2015-02-03 | 2016-08-04 | Alibaba Group Holding Limited | Method, apparatus and mobile terminal for speed dial within page |
US9940320B2 (en) * | 2015-12-01 | 2018-04-10 | International Business Machines Corporation | Plugin tool for collecting user generated document segmentation feedback |
Also Published As
Publication number | Publication date |
---|---|
US6859909B1 (en) | 2005-02-22 |
US7409633B2 (en) | 2008-08-05 |
US20040172595A1 (en) | 2004-09-02 |
US20040143796A1 (en) | 2004-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6859909B1 (en) | System and method for annotating web-based documents | |
US7966352B2 (en) | Context harvesting from selected content | |
US9483453B2 (en) | Clipping view | |
US6920610B1 (en) | Method and system for browsing a low-resolution image | |
US7296230B2 (en) | Linked contents browsing support device, linked contents continuous browsing support device, and method and program therefor, and recording medium therewith | |
KR101083533B1 (en) | System and method for user modification of metadata in a shell browser | |
US8812945B2 (en) | Method of dynamically creating real time presentations responsive to search expression | |
JP4201154B2 (en) | Digital story creation and playback method and system | |
US7735007B2 (en) | Adding and removing white space from a document | |
US7519573B2 (en) | System and method for clipping, repurposing, and augmenting document content | |
US20130212463A1 (en) | Smart document processing with associated online data and action streams | |
US9171132B1 (en) | Electronic note management system and user-interface | |
US20020116421A1 (en) | Method and system for page-like display, formating and processing of computer generated information on networked computers | |
US20050203935A1 (en) | Clipboard content and document metadata collection | |
US7284200B2 (en) | Organization of handwritten notes using handwritten titles | |
US20100199166A1 (en) | Image Component WEB/PC Repository | |
KR20150087405A (en) | Providing note based annotation of content in e-reader | |
Zellweger et al. | Fluid annotations in an open world | |
JP2004500635A (en) | System and method for annotating electronic documents independent of content | |
JP2002055748A (en) | Method for processing information and device for the same | |
JPWO2008041743A1 (en) | Terminal device, content display method, and content display program | |
US20030135820A1 (en) | Method of and a system for creating a button type bookmark in a web browser | |
US9864479B2 (en) | System and method for managing and reviewing document integration and updates | |
JP2004139501A (en) | Document browser, method of browsing document, and program for making computer implement this method | |
KR100954740B1 (en) | The method for creating and using transparency layer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |