Abstract:
Methods and apparatus are presented for visual comparison of different portions of one or more source documents to emulate a paper folding gesture experience in a user device, in which the user uses a mouse or finger in a touchscreen device to circle two or more portions of interest in the same or separate source documents, and provides a different user input such as a pinch motion or zoom in feature to display the selected regions proximate one another for visual comparison.

Description:
BACKGROUND 
       [0001]    The present exemplary embodiments relate to tools and techniques for viewing documents on display screens. People often print physical copies of documents in order to visually examine content located in different places within a document, or to compare visual content located in different documents. The same is true of other electronic source files, such as PDF files, slideshow presentation files, electronic drawing files, web page content, etc. Different content portions in a given printed page can then be brought together by folding the paper or in other ways. For example, certain bits of content may be physically cut from a paper printout, and the bits can be laid out together on a table for examination and comparison. Conventional software tools provide some limited capability for comparing disparate portions of a source document or of different documents, such as by opening separate windows next to each other, each containing an instance of the entire document, but the user must navigate the display of each window to a corresponding portion to be compared. Certain word processors and spreadsheet programs provide means for placing different portions of a file in proximity, such as by creating a “split screen” view of a document, or by selectively freezing and/or hiding specific rows or columns of a spreadsheet file. U.S. Pat. No. 7,200,615 to Eschbach et al., assigned to Xerox Corporation, incorporated herein by reference, provides techniques for presenting spreadsheets and other documents on client-side devices with limited resources and tiny display screen area, with a split-bar stitched into a composite view of the user&#39;s current viewpoint. However, such tools and multiple window techniques may not be available on all user devices, such as smart phones, etc. Moreover, available tools do not allow direct comparison of arbitrary portions of two or more commonly used file formats, and do not allow side-by-side comparison of specific portions of a digital file that are far apart or are not aligned. Accordingly, a need remains for improved tools and techniques for comparing multiple disparate portions of one or more source files to facilitate a user visually comparing select portions without opening multiple windows in a user device and without printing out the files. 
       BRIEF DESCRIPTION 
       [0002]    The present disclosure provides apparatus and methods for comparing user-selected source file portions within a single user interface display rendering or window by which the above and other shortcomings of conventional tools and techniques can be mitigated or overcome. Computer-implemented processes and a user device software tool are disclosed for visual comparison of content in which a user input, such as an encircling motion on a touchscreen display or mouse action, etc. which identifies a selected visual content area in a display view, initiates generation of a first boundary defining a first content region that includes visual content identified by the visual content area. In response to receipt of a user input identifying a second selected visual content area in the same or another display view, of the same source file or of a different source file, the tool generates a second boundary defining a second content region. Receipt of a further user input, such as a pinching motion on a touchscreen display, etc., brings the first and second content regions together on the display, with the regions approaching one another and sliding relative to one another to final positions for visual user comparison. 
         [0003]    One or both of the content regions is/are automatically resized in certain embodiments according to the relative content region sizes, the size of the display, and the current display orientation (e.g., landscape versus portrait). In this manner, the user is presented with potentially maximal visibility to enhance the visual comparison operation without having to adjust zoom levels manually. Certain embodiments, moreover, allow further user input to adjust the position in the original content by changing the center point in the content of a given content region, to change a zoom level of a given content region and/or change the size of a given content region, thereby providing further flexibility in the user experience beyond those available with conventional applications and/or by folding printed paper. In certain embodiments, the user can identify three or more content areas in one or more source files for contemporaneous comparison on a single display view, and may be presented with a palette of the selected content regions with the ability to perform a further user input operation (e.g., a pinching operation on a touchscreen) to compare two particular content areas that have been identified. Further aspects of the disclosure provide computer readable mediums with computer executable instructions for implementing the software tool or comparison process, as well as user devices programmed to implement these concepts. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0004]    The present subject matter may take form in various components and arrangements of components, and in various steps and arrangements of steps. The drawings are only for purposes of illustrating preferred embodiments and are not to be construed as limiting the subject matter. 
           [0005]      FIGS. 1A-1D  depict a flow diagram illustrating an exemplary method for visually comparing multiple user identified portions of a document or documents using a computer-implemented system with a visual display in accordance with one or more aspects of the present disclosure; 
           [0006]      FIG. 2  illustrates various textual and graphical content in a first source file accessed by the computer-implemented system; 
           [0007]      FIG. 3  illustrates textual and graphical content in a second source file accessed by the computer-implemented system; 
           [0008]      FIG. 4  is a simplified schematic diagram illustrating exemplary computer-implemented systems in which the process of  FIGS. 1A-1D  can be implemented to provide a computer-implemented comparison tool; 
           [0009]      FIG. 5  is a simplified display view provided by the comparison tool illustrating a first type of user input in a selection mode to identify a first selected visual content area in the source file of  FIG. 2 ; 
           [0010]      FIG. 6  is a simplified display view showing generation by the comparison tool of a first boundary defining a first content region including visual content identified by the first user-selected content area of  FIG. 5 ; 
           [0011]      FIG. 7  is a simplified display view illustrating user input in the selection mode to identify a second selected visual content area in a different location of the source file of  FIG. 2 ; 
           [0012]      FIG. 8  is a simplified display view showing generation by the comparison tool of a second boundary defining a second content region including visual content identified by the second user-selected content area of  FIG. 7 ; 
           [0013]      FIG. 9  is a simplified display view showing a user input to initiate a comparison mode of the tool for comparing the visual content regions identified in  FIGS. 6 and 8 ; 
           [0014]      FIG. 10  is a simplified display view illustrating operation by the comparison tool to optionally resize one or both of the visual content regions and to bring the selected content regions together on the display; 
           [0015]      FIG. 11  is a simplified display view illustrating the tool bringing the selected visual content regions together and sliding along one another; 
           [0016]      FIG. 12  is a simplified display view illustrating the tool having positioned the selected content regions in a side-by-side arrangement to facilitate user comparison of the selected content regions for a portrait view orientation of the display screen; 
           [0017]      FIGS. 13-15  are simplified display views showing the tool bringing the selected visual content regions together, sliding along one another, and being positioned in final positions one on top of the other for user comparison in a portrait view orientation of the display screen; 
           [0018]      FIG. 16  is a simplified portrait display view illustrating user input to shift a content center point of one of the selected content regions to the left; 
           [0019]      FIG. 17  is a simplified display view illustrating another user input to change a zoom level of one of the selected content regions; 
           [0020]      FIG. 18  is a simplified display view illustrating a further user input to resize one of the selected content regions; 
           [0021]      FIG. 19  is a simplified display view illustrating realignment of the selected content regions following the user-initiated resizing of  FIG. 18 ; 
           [0022]      FIG. 20  is a simplified display view illustrating portions of the second source file of  FIG. 3  following user changing back to selection mode and navigating to the second source file; 
           [0023]      FIG. 21  is a simplified display view illustrating user input in the selection mode to identify a third selected visual content area in the second source file of  FIGS. 3 and 20 ; 
           [0024]      FIG. 22  is a simplified display view illustrating a third boundary generated by the comparison tool which defines a third content region including visual content identified by the third user-selected content area of  FIG. 21 ; 
           [0025]      FIG. 23  is a simplified display view illustrating a user input to resume comparison mode with the newly identified third content region; 
           [0026]      FIG. 24  is a simplified display view showing the three selected visual content regions displayed vertically in a portrait view display orientation; 
           [0027]      FIG. 25  is a simplified display view showing user input to identify the first and third user-selected content regions; and 
           [0028]      FIG. 26  is a simplified display view showing the selected first and third content regions displayed one on top of the other in a portrait view display orientation by the comparison tool. 
       
    
    
     DETAILED DESCRIPTION 
       [0029]    Several embodiments or implementations of the different aspects of the present disclosure are hereinafter described in conjunction with the drawings, wherein like reference numerals are used to refer to like elements throughout, and wherein the various features, structures, and graphical renderings are not necessarily drawn to scale. The disclosure provides computer-implemented methods and apparatus for comparing different portions of one or more source documents or files, and finds particular utility in connection with user devices having small display screens, such as laptop computers, tablet computers, netbooks, smart phones, cell phones, smart watches, PDAs, etc., although the various concepts of the present disclosure may be implemented in any processor-based system having a visual display. 
         [0030]    Referring initially to  FIGS. 1A-1D  and  2 - 4 , an exemplary method or process  10  is illustrated in  FIGS. 1A-1D  for comparing select portions of one or more source files in accordance with one or more aspects of the present disclosure. While the method  10  and other methods of the disclosure are illustrated and described in the form of a series of acts or events, it will be appreciated that the various methods of the disclosure are not limited by the illustrated ordering of such acts or events except as specifically set forth herein. In this regard, except as specifically provided hereinafter, some acts or events may occur in different order and/or concurrently with other acts or events apart from those illustrated and described herein, and not all illustrated steps may be required to implement a process or method in accordance with the present disclosure. The illustrated method  10  and other methods of the disclosure may be implemented in hardware, processor-executed software, processor-executed firmware, programmable logic, etc. or combinations thereof, whether in a single component or system or in distributed form in two or more components or systems, and may be employed in association with any form of user device, wherein the disclosure is not limited to the specific devices, systems, applications, and implementations illustrated and described herein. Moreover, the disclosure contemplates computer readable mediums with computer executable instructions for performing the various methods including the method  10  illustrated and described below in connection with  FIGS. 1A-1D . 
         [0031]      FIG. 2  illustrates two different portions of an exemplary source file  100 , including graphical and textual components. In this example, various financial data is illustrated for different corporations, including bar graphs representing profit and revenue during specific time periods for various divisions of the corporations. As seen in  FIG. 2 , for instance, bar graphs  102 - 1  through  102 - 18  are presented for various corporate divisions over certain time ranges, and the content of the source file  100  includes graphical elements  103 - 1  through  103 - 3  associated with certain of the bar graph content portions  102 .  FIG. 3  shows a second source file  200 , having a bar graph portion  202 , as well as textual portions  204 , and graphical portions  203 . Although two non-limiting source files  100 ,  200  are illustrated in  FIGS. 2 and 3 , any suitable form or type of source file may be used in connection with the processes and apparatus of the present disclosure, including without limitation document files, drawing files, slideshow presentation files, PDF files, webpages, etc. 
         [0032]      FIG. 4  shows various user devices including a laptop computer  302 - 1 , a tablet computer  302 - 2 , a desktop computer  302 - 3 , a smart phone  302 - 4 , a cell phone  302 - 5 , and a schematic representation of a user device  302 - 6 . Each of the user devices  302  is equipped with one or more processing elements  304 , such as a microprocessor, microcontroller, programmable logic, PGA, ASIC, or combinations thereof, as well as an associated electronic memory  306 . In addition, the user devices  302  also include some form of user interface  308  allowing interaction with a user, and including a graphical display  310 , where the user interface  308  may comprise a touch screen display  310  along with one or more other user input features, or the touchscreen display  310  may be implemented so as to provide all the user input capabilities. The user devices  302 , moreover, may include various connectivity features, non-limiting examples of which include network ports for wired connection to a network router, wireless capabilities allowing wireless connection to Wi-Fi, 3G, 4G or other forms of wireless radio access network, with the ability to connect to one or more external networks such as the Internet. Moreover, the user devices  302  may be equipped with suitable power circuitry and other components as are known for implementing various user functions, such as running applications, providing telecommunications functionality for placing and receiving calls, video conferencing, web browsing, etc. 
         [0033]    Referring now to FIGS.  1 A and  5 - 8 , the method  10  begins in  FIG. 1A  with a user navigating a user device display at  12  to a first location within a source file. As seen in  FIG. 5 , for instance, the user may be viewing the illustrated portion of a document file  100  (e.g., source file  100  from  FIG. 2 ), with a current landscape orientation of the user device display  310  and a current user device zoom level sufficient to show the content elements  102 - 7  through  102 - 18  as well as associated graphical elements  103 - 2  and  103 - 3 . In a touchscreen user device example, the user may employ various types of touch inputs to the display  310  to navigate the displayed portion of the source file  100  as are known at  12  in  FIG. 1A . At  14  in the process  10 , the user employs one or more input actions to activate a compare tool, such as through menu selection, etc. (not shown). In addition, the user initiates or begins a “SELECT” mode at  14 , for example, through a further user input action, or the compare tool may automatically begin execution in this mode for selection of user-identified regions of interest within the source file  100 . 
         [0034]    At  16  in  FIG. 1A , a first type of user input (“TYPE  1 ”) is employed by the user to identify a first selected visual content area in the current display view. The first user input type may be any suitable user interface interaction by which a user can identify a selected visual content area in the display. For example, as seen in  FIG. 5 , the user may employ a mouse or touchscreen action  401  to define or otherwise identify a content area of interest. In this example, the user has performed an encircling motion via a touchscreen display  310  to identify a portion of the displayed content in the source file  100  which includes the bar graph  102 - 8  as well as the associated logo graphic element  103 - 2  pertaining to profit and revenue financial information for a Commercial Products Division of a company. 
         [0035]    In response to this user input at  16 , the compare tool of the user device generates and displays a first boundary B 1  at  18  in  FIG. 1A , as shown in  FIG. 6 , which defines a first content region R 1  including visual content identified by the content area selected by the user in  FIG. 5 . In this case the boundary B 1  is rectangular, although circular boundaries and corresponding regions can be implemented, as well as boundaries and regions of various other forms and shapes, or combinations thereof. In certain implementations, the software compare tool may employ various algorithms for generating the boundary B 1  based on a substantially free hand user input (e.g., the user input  401  identified in  FIG. 5 ), for example by defining a bounding box that includes all the touched portions identified by the user input  401  to define a region that at least includes this amount of source file content, although other approaches may be employed within the scope of the present disclosure. In other possible examples, the type  1  user input could be performed using a mouse or other pointing device, or through voice commands, etc., by which a user defines a first corner of a bounding box and then defines an opposite corner of a bounding box, and with this input, the compared tool creates the boundary B 1  at  18  in  FIG. 1A . 
         [0036]    In the illustrated example, moreover, the tool provides a graphical identifier of the defined first region R 1 , for example, by displaying “R 1 ” within or proximate to the boundary line B 1 . Other implementations are possible in which any suitable form of identification may be used by which the user can determine a region of the source document  100  that has been previously identified through user selection. In this example, moreover, the tool-generated boundary B 1  is graphically shown to the user by way of the box line, although other graphical techniques can be used by which the user can distinguish regions R that have been selected from other regions within the source file  100 . 
         [0037]    Referring also to  FIGS. 7 and 8 , at  20  in  FIG. 1A , the user may optionally navigate the display to a second location in the first source file  100 , or may use the user device to open a second source file (e.g., file  200  of  FIG. 3  above). In particular, the user may navigate until another portion of a source document  100 ,  200  is shown in the display, which the user would like to compare with the first identified region R 1  in the first boundary B 1 . In the example of  FIG. 7 , the user has navigated the content presented in the display  310  of the source file  100  to a different location which does not include the previously identified first region R 1 . Accordingly, the compare tool in this example advantageously provides a region identifier  312  on the display  310  to indicate the relative positioning of the previously identified region R 1 , even though the region R 1  itself is not currently displayed. 
         [0038]    At  22  in  FIG. 1A , a further user input of the first type (TYPE  1 ) is used by which a second selected visual content area is identified in the current display view. In this case, like that of  FIG. 5  above, the user performs an encircling operation by way of a touchscreen display  310 , or using a mouse, or other user input means, indicated in dashed line at  401  in  FIG. 7 . In this case, the user has selected a bar graph content portion  102 - 1  with associated graphical element  103 - 1  relating financial profit and revenue information for a consumer products division of a second company. At  24  in  FIG. 1A , the compare tool generates and displays a second boundary B 2  and a second identified region indicator “R 2 ” as shown in  FIG. 8 . 
         [0039]    At this point, as seen in  FIG. 8 , the user cannot concurrently view both identified regions R 1  and R 2 , due to the current zoom level and display orientation, as well as to the lack of proximity within the source file  100  of these two identified regions. However, the rendering in  FIG. 8  advantageously shows the user that two regions have been identified via the display of the boundary B 2  and associated content, as well as the indicator  312  which notifies the user that there is another region currently off screen which may be compared to the most recently identified region R 2 . While the first and second content regions R 1  and R 2  were both identified in the same source file  100 , the processes and compare tool of the present disclosure may be employed where regions of interest are within two separate source files (e.g., source file  100  of  FIG. 2  and source file  200  in  FIG. 3  above), and the tool may advantageously display the indicator(s)  312  to always indicate to the user that one or more other regions have been previously identified and are available for comparison. 
         [0040]    Referring now to FIGS.  1 B and  9 - 12 , the process  10  continues at  26  in  FIG. 1B , where the user may optionally identify a third and subsequent content regions R. In other implementations, the compare tool may automatically bring the first and second identified regions R 1  and R 2  together for visual comparison automatically, without allowing the user to identify a third region. In the illustrated example, the process  10  allows the user to initiate a second type of user input (TYPE  2 ) at  30  in  FIG. 1B  in order to initiate or begin a comparison or COMPARE mode of operation. As seen in  FIG. 9 , for instance, the second type of user input may be a pinching type operation graphically illustrated at  402  in  FIG. 9 , although any suitable second type of user input action may be employed by which the user indicates a desire to compare two identified content regions R 1  and R 2 . As seen in  FIG. 9 , moreover, a pinching operation is particularly intuitive and advantageous in a touchscreen implementation, with the user touching two separate portions of the touchscreen display  310  and sliding at least one of the touched portions toward the other touched portion. For example, this operation  402  may be similar in some respects to a “zoom out” feature used in touchscreen implementations of various applications, such as maps or documents, whereby this form of user input  402  is relatively natural to users of touchscreen devices  302 . 
         [0041]    The tool makes a determination at  32  in  FIG. 1B  as to whether more than two content regions have been identified or defined. In the illustrated example of  FIG. 9 , only two regions R 1  and R 2  have been identified, and the process thus proceeds to  34  where the tool may resize one or both of the identified content regions R 1  and/or R 2  according to the relative aspect ratios of the regions as determined by the tool-generated boundaries B 1  and B 2 , and according to the current display size and current display orientation. For example, the display condition in  FIG. 9  is in a “landscape” orientation. Referring also to  FIG. 10 , the tool in this case brings the first and second identified content regions toward one another ( 36  in  FIG. 1B ) in the directions shown by the arrows in  FIG. 10 . In one possible implementation, the user will see the regions approaching one another as shown, and the regions R 1  and R 2  approach one another and may optionally touch as shown in  FIG. 11  and then slide alongside one another as shown by the arrows in  FIG. 11  until they reach final positions as shown in  FIG. 12 . In this case, the regions R 1  and R 2  end up in final positions in a “side-by-side” arrangement, with the regions R 1  and R 2  being automatically resized by the compare tool in order to somewhat optimize the display area, without the user having to adjust any zoom settings. The tool in this regard determines whether the final positions will be side to side or “up and down” or other relative positioning&#39;s based on the relative aspect ratios of the regions R 1  and R 2  being brought together for comparison, as well as according to the current display size and current display orientation. Thus, the final positions shown in  FIG. 12  are particularly advantageous when the display is in a landscape orientation as shown. 
         [0042]    Referring briefly to  FIGS. 13-15 , a “portrait” display orientation example is illustrated, again using the previously discussed first and second regions R 1  and R 2  from the source file  100 . As seen in  FIG. 13 , upon the user initiating the second type of user input (e.g., touchscreen pinch operation), the tool optionally resizes one or both of the identified content regions at  34  in  FIG. 1B , and then brings the identified content regions R 1  and R 2  together on the display  310 , where the user initially sees the proximate corners of the regions R 1  and R 2  approaching one another as shown in  FIG. 13 , and then sees the regions optionally touching and sliding alongside one another as shown in  FIG. 14 , eventually reaching final positions as seen in  FIG. 15 , in this case in a “top to bottom” configuration best suited to the portrait type orientation of the touchscreen display  310 . 
         [0043]    In this regard, the compare tool may advantageously follow reorientation of the user device display  310  if the user reconfigures the positioning of the user device  302 . For example, as is known for tablet computers, smart phones, etc., reorienting the physical position of the user device  302  may result in the display orientation changing from portrait to landscape view or vice versa, and the compare tool of the present disclosure may follow such reorientations and reconfigure the relative sizing and relative orientation of the content regions R 1  and R 2  accordingly. As seen in  FIG. 15 , moreover, the illustrated example provides for positioning of the identified regions based on their relative locations in the original source file  100 , in this case resulting in R 2  being positioned above R 1 , although other approaches may be used, for example, always organizing the regions based on the order in which they were originally identified in the source file  100 . 
         [0044]    Referring also to  FIG. 1C  and  FIGS. 15-19 , the user may then compare the displayed content regions R 1  and R 2  as shown in  FIG. 15  ( 38  in  FIG. 1C ). In certain situations, the user may wish to further adjust the graphical renderings associated with the identified regions R 1  and/or R 2 . Accordingly, various further user inputs may be used for such purposes. For instance, the user may initiate a third type of input  403  (TYPE  3 ) at  40  in  FIG. 1C  relative to a given one of the content regions, such as region R 2  in  FIG. 16  in order to change the center point of the visual content within the region. As shown in  FIG. 16 , for instance, the user may touch and slide to the left via the motion shown at  403 , with the tool responding by changing the content from the original source file  100  within the displayed boundary box B 2  as shown in the figure. In this case, this results in concurrent display of a portion of the graph  102 - 1  and the next bar graph  102 - 2  (seen in  FIG. 2  above). Other types and forms of user input  403  may be used in order to implement adjustment by the user of the center point of the content displayed within a given one of the regions R 1  and R 2 . 
         [0045]    At  42  in  FIG. 1C , moreover, the user may perform a fourth type of user input (TYPE  4 ) in order to cause the tool to change the zoom level of the visual content within a given content region. As shown in  FIG. 17 , for example, the user may provide a touchscreen input  404  which includes touching the display screen at two points and moving one of the touched points directly away from the other, such as a “zoom in” action found in many touchscreen device applications. In response to the user input  404 , the compare tool changes the zoom level of the visual content displayed in the region R 2  as shown, in this case zooming in. In another possible example, the user may employ a pinching operation in a touchscreen display  310  within the region R 2  in order to increase the amount of visual content displayed in the region R 2  (zoom out, not shown). Other types and forms of user inputs may be employed for zooming out or zooming in or otherwise adjusting the zoom level of the content displayed within a given one of the compared regions R 1  and R 2 . 
         [0046]    At  44  in  FIG. 1C , the user may optionally provide a fifth type of user input (TYPE  5 ) relative to a given content region in order to change the size of that region. For example,  FIG. 18  illustrates a user action  405  by touching a left side of the boundary box B 2  and sliding to the left via a touchscreen display  310 , with the compare tool responding by increasing the lateral extent of the boundary B 2  and hence increasing the amount of visual content shown within the region R 2 . Thus, the user may now view the bar graph associated with July 2004 in  FIG. 18 , which was not previously shown as viewable in  FIG. 17 . As seen in  FIG. 19 , moreover, the tool may automatically realign the displayed regions R 1  and R 2  following such a size adjustment, for example, by sliding the region R 2  slightly to the right as shown. 
         [0047]    The tool determines at  46  in  FIG. 1C  whether the user has provided a mode change input. If not (NO at  46 ), the user can continue to compare the displayed content regions R 1  and R 2  at  38  and make any necessary adjustments to one or both of the regions at  40 ,  42  and/or  44 . Once the user changes the mode (YES at  46 ), the process  10  returns to the SELECT mode at  16  in  FIG. 1  as described above. 
         [0048]    Referring now to  FIGS. 1B ,  1 D and  20 - 26 , the compare tool may, in certain embodiments, allow the user to designate or define more than two regions R in the selection mode. As seen in  FIG. 1B , for example, once first and second regions R 1  and R 2  have been defined, the process  10  proceeds to  26 , where the user may optionally navigate the display to a further specific location within the same or another source file at  27  (e.g., within source file  100  of  FIG. 2  or source file  200  of  FIG. 3  above), and may perform a TYPE  1  user input at  28  to identify a further selected visual content area in the current display view. As shown in  FIG. 20 , for instance, the user may navigate at  27  to a portion of the source file  200  shown in  FIG. 20 , which includes text portions  204 , a bar graph portion  202 , and a portion of a graphical element  203 , and may thereafter provide an encircling type input  401  as shown in  FIG. 21 . 
         [0049]    As seen in  FIGS. 20 and 21 , moreover, the exemplary compare tool provides the indicators  312  at the bottom of the screen to tell the user that previously defined regions R 1  and R 2  exist and are in a separate source file (e.g., from source file  100  of  FIG. 2  in this case). At  29  in  FIG. 1B , the tool generates and displays a further boundary B 3  shown in  FIG. 22  defining a third region R 3  including visual content identified in the source file  200  by the further selected content area. Referring also to  FIG. 23 , the user may then initiate the COMPARE mode at  30  and  FIG. 1B , and the tool determines at  32  that more than two content regions have been defined (YES at  32 ). For example, as seen in  FIG. 23 , the user may perform a pinching operation via a user input  402  indicating the desire to compare the newly identified region R 3  with one or both of the previously defined regions R 1  and/or R 2 . 
         [0050]    The process  10  then continues in  FIG. 1D , where the tool optionally resizes one or more of the content regions R 1 -R 3  according to the relative boundary aspect ratios, the current display size and the current display orientation. In the exemplary portrait mode orientation of  FIG. 24 , for instance, the tool then brings the identified content regions together on the display at  52  in  FIG. 1D , with the regions R 1 -R 3  initially being displayed approaching one another, touching and sliding alongside one another to final positions as shown. The user may then compare the displayed content regions at  54  in  FIG. 1D  as shown in  FIG. 24 . 
         [0051]    At  56 , the tool determines whether a further user input of a sixth type (TYPE  6 ) has been received, and if not (NO at  56 ), the process  10  proceeds to allow for user region comparison and region adjustment at  38 - 46  in  FIG. 1C  as described above. Otherwise (YES at  56  in  FIG. 1D ), the system receives a further input of the sixth type, such as a pinching action  406  shown in  FIG. 25  indicating the user desire to make a one-on-one comparison of two of the displayed regions, in this case R 1  and the newly defined region R 3 . In response, the tool optionally resizes one or both of the regions R 1  and/or R 3  at  60  in  FIG. 1D  according to the relative aspect ratios of these regions, the display size and orientation, and then brings the two designated regions R 1  and R 3  together on the display as shown in  FIG. 26 , with the regions being shown approaching one another, touching and sliding alongside one another to the illustrated final positions (top to bottom due to the portrait display orientation in this case). The process  10  then returns for user comparison and adjustment and/or mode change in  FIG. 1C  as described above. 
         [0052]    In other possible implementations in which more than two content regions R have been defined, the tool may allow the user to zoom out upon definition of the third region R 3  in order to see the relative locations of all marked regions within a given source file. For example, if the third region R 3  had been defined within the first source file  100  of  FIG. 2 , the compare tool would provide a “zoomed out” view at a sufficiently high level to show the relative locations within the source file  100  of the three designated regions R 1 -R 3 . Other potential zoomed out views could be created to indicate relative positions of more than two regions that are identified in more than a single source file. From such view, the user could initiate a pinching operation to join two particular regions for close up comparison. In other possible embodiments, the user may be provided with a palette to which each identified region R could be dragged using appropriate user interface input actions, and then the user could click on the palette for side-by-side or top to bottom comparison of two or more of the defined regions R. 
         [0053]    In other possible embodiments, the user could drag an identified region R that is visible on a currently displayed screen to a menu or icon in a sidebar, and the screen could split into two, where the original content in the region R that was dragged to the icon is shown in one portion of the screen display, and the other portion of the screen display could allow the user to scroll through the other marked regions R one by one, potentially providing an icon which the user could press or bump over and over again to scroll through the other marked regions R. Once a candidate has been identified by the user for comparison with the most recently identified region R, the user could press the candidate region, and the tool would enter the compare mode, for example, as described above to provide side-by-side or top to bottom orientation of the designated regions for user visual comparison. 
         [0054]    The above examples are merely illustrative of several possible embodiments of the present disclosure, wherein equivalent alterations and/or modifications will occur to others skilled in the art upon reading and understanding this specification and the annexed drawings. In particular regard to the various functions performed by the above described components (assemblies, devices, systems, circuits, and the like), the terms (including a reference to a “means”) used to describe such components are intended to correspond, unless otherwise indicated, to any component, such as hardware, processor-executed software or firmware, or combinations thereof, which performs the specified function of the described component (i.e., that is functionally equivalent), even though not structurally equivalent to the disclosed structure which performs the function in the illustrated implementations of the disclosure. In addition, although a particular feature of the disclosure may have been disclosed with respect to only one of several embodiments, such feature may be combined with one or more other features of the other implementations as may be desired and advantageous for any given or particular application. Also, to the extent that the terms “including”, “includes”, “having”, “has”, “with”, or variants thereof are used in the detailed description and/or in the claims, such terms are intended to be inclusive in a manner similar to the term “comprising”. It will be appreciated that various of the above-disclosed and other features and functions, or alternatives thereof, may be desirably combined into many other different systems or applications, and further that various presently unforeseen or unanticipated alternatives, modifications, variations or improvements therein may be subsequently made by those skilled in the art which are also intended to be encompassed by the following claims.