WORD PROCESSING
The present invention relates to computer implemented methods of analysing and working with electronic or electronically stored text.
Modern word processing packages are able to provide users with fine control over the look of a document . A user may adjust the size, font and colour of every single character in a document. Individual paragraphs may have different levels of indentation or alignment. Headings can be made more striking by using various formatting options. Lists may be provided with different bullets and numbering styles. For a long document, written over a period of time and perhaps by more than one author cutting and pasting between documents, subtle variations in formatting may creep into the document. Such variations cause documents to look unprofessional. Correcting or removing these formatting variations in a complex document is time consuming. Commonly, the look of a document is adjusted by applying different formatting properties to the text. Formatting properties include properties which are applied to individual characters such as font name, font size, capitalisation state, bold state, italicisation state, underlining state, superscript state, subscript state and colour. Each of these properties has an associated value. The value can be a Boolean value such as "on" or "off" (or "1" or "0", etc) for properties such as bold state, can be a name or label for the font name or colour properties, or can be a numeric value for properties such as font size. Other properties are applied to a paragraph of text such as alignment state, line spacing and indentation amount. Again,
each of these properties has an associated value which can be "left", "right", "centre" or "full" for alignment state, an amount for line spacing, or an amount and a direction for the indentation amount. By adjusting the values associated with the properties for each character or paragraph a user can control the appearance of a document . Packages such as Microsoft Word (TM) use "styles" to help users keep track of these different formatting properties within a document or over multiple documents. Rather than being a formatting property in itself, a style is a combination of formatting property values and/or instructions. When a style is applied to a section of text within a document, all of the formatting instructions in that style are applied to the text, overwriting the previous formatting property values. This can be useful in correcting formatting variations in a document. However, users are provided only with limited control when selecting the text to which a style is to be applied, forcing a user to take a time consuming piecemeal approach. Additionally, word processing packages make different assumptions about the manner in which a style is applied. Applying a style to a document in a wholesale manner can therefore result in intentional formatting variations being overwritten or unintentional variations being left unchanged. One useful aspect of styles is the concept of a base style. A base style is an underlying or original style on which other styles in a document are dependent. For example, some text in a document may be in a style called "Normal" which defines certain formatting property values. Some other text may have precisely the same formatting property values, except that the text is also in bold. This other text could have its own style name, perhaps called "Bold".
Alternatively, this other text could be given a base style of "Normal", and would therefore be in a "Normal + bold" style. If the formatting property values of a base style are changed, all other styles that have the base style will reflect that change and the user can decide whether or not to use a base style depending upon whether such changes would be desirable . Despite their uses, many users ignore styles or use them poorly to the extent that the benefits of using styles are no longer obtainable. For example, a user may define multiple styles where a single style would be sufficient, or may not apply different styles to text which is intended to have a different appearance. A user may also make a bad decision as to whether to use a base style or instead to create a new independent style. Correcting poor use of styles within a document is often a difficult and time consuming task. Another useful feature of many word processing packages is the template. A template determines the basic structure for a document and contains document settings including the available styles that can be used within a document and global settings specifying the default values associated with each formatting property within the document. Templates are therefore useful in maintaining consistency across several different documents since two documents made to the same template should have a similar appearance. However, the template is only a starting point, and a user is not prevented from introducing formatting variations. Additionally, wholesale application of a template to an inconsistently formatted document may not remove the inconsistencies since word processing packages commonly assume that user specified variations are intentional.
There is therefore a need to improve the level of control that a user has over the formatting properties and styles applied to text within documents. There is also a need to avoid or override the assumptions commonly made by word processing packages that user specified formatting variations are intentional . When formatting variations are introduced into a document, these variations may be invisible to the eye and may only become apparent during subsequent revision of the document. Some word processing packages provide a visual indication of individual instances of possible formatting inconsistencies. Nevertheless, there is a need to improve the quality and quantity of information relating to formatting variations that is provided to a user.
Generally speaking, embodiments of the present invention reverse the common assumptions made by word processing packages that user introduced variations in formatting are intentional. This is achieved by providing a set of tools and processes which permit a user to locate and then to remove or correct examples of inconsistent formatting. The user is provided with fine control over each stage of the correction process so that unintentional variations are removed without affecting intentional variations. Accordingly, a first aspect of the present invention provides a computer implemented method of identifying portions or subtexts of a text, the text having a plurality of formatting property values relating to formatting properties of the text, the method comprising: establishing a reference group of formatting property values; and automatically identifying portions of the text having at least one formatting property value which matches a
corresponding formatting property in the reference group, using the formatting property value when determining a match. The formatting property values control the appearance of text and will typically vary throughout the text from character to character, or from paragraph to paragraph, so that different parts of the text will have a different set of formatting properties. Advantageously, by establishing or choosing a reference set of formatting property values the present invention -enables automatic identification or selection of other instances in the text where the same set of formatting property values has been applied. Additional operations may then be performed on the identified text, such as applying a specified style or a different set of formatting properties to it or deleting it, for example. The individual formatting property values themselves are used when determining a match, rather than using other characteristics of the text such as the style, in order to achieve greater reliability, predictability and control over the identification process. The text itself may be electronic or electronically stored, whether in a computer memory on a processor or on a more permanent medium such as a hard drive or floppy disk. In one embodiment, the method further comprises selecting at least one formatting property, and only the formatting property values or values associated with the or each selected formatting property are used when determining a match. Advantageously, this permits the identification of precisely which of the formatting property values in the reference group are to be used during the automatic identification of portions of the text. For example, the user may wish to search for all subtexts in a larger text which are in bold type, but ignore variations in the
italicisation state. This can be achieved by selecting the "bold" formatting property and not selecting the "italics" formatting property. The at least one formatting property is preferably selected manually by a user from a list of formatting properties or by some other means. This allows the user to specify which of the formatting properties are of interest, and which formatting properties may vary across the identified portions of text. In one embodiment, .establishing a reference group of formatting property values comprises manually selecting some of the text and automatically determining the formatting property values of the selected text. Alternatively, establishing a reference group of formatting property values comprises manually selecting a style and automatically determining the formatting property values associated with the selected style. These two embodiments of the present invention provide a user with different ways of establishing the reference group of formatting property values without having to manually input all of the desired formatting properties himself. Instead, the reference group is determined either by taking the formatting property values from the text itself or from the values stored in a specified style. The present invention also provides a computer program for identifying portions of a text, the text having a plurality of formatting property values relating to formatting properties of the text, the computer program comprising: means for establishing a reference group of formatting property values; and means for automatically identifying portions of the text having at least one formatting property value which matches a formatting property value in the reference group using the formatting
property value to determine a match. Said means may be computer code or computer code elements which, when run on a computer causes the computer to carry out the identification process . Another aspect of the present invention provides a computer implemented method of identifying portions of a text, comprising: selecting a plurality of styles; and automatically identifying portions of the text which are in any one of the plurality of selected styles. Advantageously, this aspect of the present invention provides users with another tool for automatically identifying portions of text in a text document by finding instances of text in any of a plurality of specified styles. A user may specify one or more styles manually by selecting them from a list of styles, for example. Once portions of text are identified or selected, the user can perform additional operations on those portions of text. For example, in one preferred embodiment, the method further comprises establishing a destination style, the destination style defining a plurality of formatting property values; and applying at least some of the formatting property values defined by the destination style to the identified text. In this way, the user can reduce variation in the formatting property values applied to text in a document in a definable manner. For example, the destination style may have the desired italicisation characteristics, but the user may not wish to remove variations in holding throughout the identified text. By applying only some of the formatting property values of the destination style, variations in formatting property values may be removed or maintained as desired. Preferably, the user selects at least one formatting property, and the at
least one formatting property value to be applied to the identified text is the or each value associated with the selected property or properties. In this way, the user is provided with direct control over which formatting property values are adjusted. The destination style may be manually selected from a list of styles. Alternatively, the user may select the destination style by selecting some text. The style of the selected text is determined automatically and that style is used as the destination style. In one embodiment a single base style, preferably the destination style, is applied to the identified text. This permits a user to reduce the number of individual styles in a document. However, since it is the base style which is altered, variations in formatting property values may be kept, if desired. The present invention also provides a computer program for identifying portions of a text, comprising: means for selecting a plurality of styles; and means for automatically identifying portions of the text which are in any one of the plurality of selected styles. Another aspect of the present invention provides a computer implemented method of analysing text, the method comprising: automatically applying to the text rules for determining if the formatting of text is acceptable; automatically determining which of the rules are not complied with; and automatically indicating to a user which of the rules are not complied with. This aspect of the present invention provides information to a user about potential or actual irregularities in the formatting of a document. The information provided is particularly useful in that the user is informed which of the rules have been
broken and the user can therefore make corrections as necessary. Preferably, the rules comprise rules of a first type and rules of a second type, and wherein an indication to a user when a rule of the first type is not complied with is more prominent than an indication to a user when a rule of the second type is not complied with. Advantageously, this embodiment splits the rules into two types of different levels of importance and permits a user to immediately identify the importance level of the indicated rule. For example, rules of said first type may be rules for determining whether text contains a major formatting inconsistency and rules of said second type may be rules for determining whether text contains a minor formatting inconsistency. Advantageously, the indication to the user is in the form of a list of rules which have not been complied with so that the user can see a summary of the results of analysing the text. The list preferably has a first part and a second part in which rules of said first type are listed in said first part, and rules of said second type are listed in said second part .- For example, the first part may be positioned above said second part such that said first part is more prominent than said second part . In one embodiment, the method further comprises: selecting a rule; and automatically highlighting to a user text which does not comply with the selected rule. The highlighting may be done by changing or inverting the colour of the relevant text, or by underlining it, or by any other suitable means in order to bring the non-compliant text to the attention of the user.
The present invention also provides a computer program for analysing text comprising: means for automatically applying to the text rules for determining if the formatting of text is acceptable; means for automatically determining which of the rules are not complied with; and means for automatically indicating to a user which rules are not complied with.
A preferred embodiment of the present invention will now be described by way of an example and with reference to the accompanying drawings, in which: Figure 1 is an exemplary screenshot of a blank document in Microsoft Word (TM) ; Figure 2 is an options dialog of one embodiment of the present invention; Figure 3 is a health check control dialog of one embodiment of the present invention; Figure 4 shows the health check processes embodying the present invention in operation; Figure 5 is a document tidying options dialog of one embodiment of the present invention; Figure 6 is a first control dialog in a fix headings process embodying the present invention; Figure 7 is a second control dialog in a fix headings process embodying the present invention; Figure 8 is an advanced control dialog in a fix headings process embodying the present invention; Figure 9 is a third control dialog in a fix headings process embodying the present invention; Figure 10 shows the fix headings processes embodying the present invention in operation;
Figure 11 is a first control dialog in a fix text styles process embodying the present invention; Figure 12 is a second control dialog in a fix text styles process embodying the present invention; Figure 13 is an advanced control dialog in a fix text styles process embodying the present inven ion; Figure 14 is a third control dialog in a fix text styles process embodying the present invention; and Figure 15 shows the fix text styles processes embodying the present invention in operation.
Embodiments of the present invention are typically implemented in a Microsoft Word (TM) environment as an addon package to provide additional "document tidying" functionality to the standard suite of Word functions. A computer program product may be provided to a user on any suitable medium such as a floppy disk, compact disc or computer hard drive, or may be downloaded over a network such as the Internet. A user may install the computer software onto an typical home or business computer system such as an Intel (TM) based PC or any other suitable computer system or apparatus . The computer apparatus preferably comprises a display device such as a display screen, one or more input devices such as a keyboard or mouse, and a processor. However, it will be immediately apparent to the skilled reader that aspects of the present invention may be implemented in many different forms and in combination with many different word processing or text editing packages and the present invention is not limited in this respect. Figure 1 shows an exemplary screenshot 10 of the Microsoft Word (TM) user interface as might be displayed on
a display device of a computer apparatus. The interface includes the buttons and menus typically displayed by Microsoft Word (TM) to allow users to create electronically stored documents. During an installation routine of a computer software product embodying the present invention, additional buttons or controls are placed on a toolbar or otherwise added to the typical Microsoft Word (TM) interface. These buttons are used to access the document analysis and modification functions provided by embodiments the present invention and include a document information button 12, a health check button 14, a save backup button 16, and a tidy document button 18. A DocTidy (TM) drop-down menu 19 is provided in a menu bar at the top of the screen 10 as an alternative way of accessing the document tidying functions. Clicking on the document information button 12 brings up. a document information dialog 20, shown in Figure 2. The document information dialog 20 preferably provides information about the current document such as the location 21 of the document on disk, a counter 22 for the number of paragraphs and words in the document, and a section box 24 listing the sections in the document. The document information dialog 20 also includes a group of radio buttons 26, and a close button 28. The radio buttons 26 permit a user to select how much of the document is to be processed during the analysis and correction methods to be described hereafter. A user selects one of the three radio buttons to select whether the current page 26a, a selected section 26b, or. the whole document 26c is to be processed. For a document containing more than one section, a user selects the selected section button 26b and the desired section from the section box 24. In the example shown in Figure 2, a user has
selected to work with the whole document by selecting the whole document radio button 26c. Once a user has selected the desired button, he clicks on the close button 28 to save his selection and close the document information dialog 20. Clicking on the health check button 14 brings up a health check dialog 30, shown in Figure 3. Using the controls provided by the health check dialog 30, a user can initiate an automatic analysis of the formatting of the portion of the document selected using the document information dialog 20. Figure 4 shows the health check dialog 30 in use. The health check dialog 30 preferably contains two observation boxes 31a and 31b, a manage observations button 32, a more on highlighted observation button 34, an information display area 36, a text styles allowed selector 38, a display observation count check box 40, a stop for each problem check box 42, a start health check button 44, a paragraphs inspected progress bar 46, a reset to start button 48 and a close button 50. If the start health check button 44 is clicked, the health check automatic analysis process is initiated. The process retrieves global values associated with each formatting property and other document characteristics for use in later comparisons. The analysis itself proceeds on a paragraph by paragraph basis through the portion of the document selected by a user in the document information dialog 20. The values associated with at least some of the formatting properties of the paragraph under consideration are requested from the word processing package or computer memory. The values associated with other characteristics of the paragraph, such as a style identifier, and values indicating whether the paragraph is a bulleted paragraph or is part of an automatically numbered list are also
requested. Rules for assessing whether or not a paragraph contains formatting inconsistencies are applied to the returned values . A preferred embodiment of the present invention includes the following rules:
1. Alignment not consistent
The rule compares the value associated with the alignment property of the paragraph with the corresponding value defined globally for the document. If the two values do not match, an observation is made that the alignment is not consistent .
2. Bullets not consistent
The rule is applied if the returned values indicate that the paragraph is a bulleted paragraph. If this is the first bulleted paragraph identified during the analysis, then the values associated with the bullet type and other bullet properties are stored in memory. For any subsequently identified bulleted paragraph, the rule compares the stored values with the corresponding values associated with the newly identified bullet. If the two sets of values do not match, an observation is made that the bullets are not consistent .
3. Font sizes not consistent
The rule compares the value associated with the font size property for the paragraph with the corresponding value defined globally for the document. If the two values do not match, an observation is made that the font sizes are not consistent.
4. Heading font sizes inconsistent
The rule is applied if the style identifier indicates that the paragraph is in a heading style. The rule compares the value associated with the font size property for the paragraph with the corresponding value defined globally for that style of heading. If the two values do not match, an observation is made that the heading font sizes are not consistent .
5. Lists not numbered automatically The rule determines if the paragraph starts with a number or Roman numeral followed by a delimiter. If the determination is positive, an observation is made that the document contains a list which is not numbered automatically.
6. Lists numbered out of sequence
The rule is applied if the returned values indicate that the paragraph is part of an automatically numbered list. The rule determines if the previous paragraph was part of an automatically numbered list and, if the determination is positive, determines if the paragraph being assessed contains a numbering restart request. If this second determination is also positive, an observation is made that the document potentially contains a list which has been numbered out of sequence .
7. More styles in use than expected
The rule is applied if the style identifier indicates that the paragraph is in a plain text or body text style (ie not a heading style) . If the plain text style is different from any previously identified styles, the rule increments a counter and compares the counter with the number set by a user using the text styles allowed selector 38. If the
counter is greater than the set number, an observation is made that there are more styles in use than expected.
8. Prolonged subscript text The rule is applied if the returned values indicate that the paragraph contains characters in subscript . The rule compares the number of characters in the paragraph in subscript with a predetermined value, preferably ten. If the number of subscript characters is greater than the predetermined value, an observation is made that there is prolonged use of subscript text .
9. Prolonged superscript text
The rule is applied if the returned values indicate that the paragraph contains characters in superscript . The rule compares the number of characters in the paragraph in superscript with a predetermined value, preferably ten. If the number of superscript characters is greater than the predetermined value, an observation is made that there is prolonged use of superscript text.
10. Styles don't exist in template
The rule is applied if the document is based on a template. The rule compares the style identifier for the paragraph with the or each style identifier defined in the template. If no match is found, an observation is made that the style does not exist in the template.
11. Styles don't match template The rule is applied if the document is based on a template. The rule compares the style identifier for the paragraph with the or each style identifier defined in the template.
If a match is found, then the rule compares at least some of the values for the formatting properties and other paragraph characteristics with the corresponding values defined for that style. If any of the compared values do not match, an observation is made that the style in use does not match the style as defined in the template. The formatting properties or characteristics used in the comparison are preferably: font size, bold state, italicisation state, alignment amount, line spacing, style name, and list template.
12. Indentation not consistent
The rule compares the value for the indentation amount for the paragraph with the corresponding value defined globally for the document. If the values do not match, an observation is made that the indentation is not consistent. Preferably, the rule compares both the first line indent amount and the left indent amount for the paragraph with the globally defined values.
13. Bullets in plain text style
The rule is applied if the returned values indicate that the paragraph is a bulleted paragraph. The rule determines if the style identifier for the paragraph identifies a style which has been defined globally to be a bulleted list style. If the determination is negative, an observation is made that bullets are being used in a plain text style.
14. Mix of fonts in paragraph
The rule determines if the value returned for the font name for the paragraph indicates that more than one font is being used in the paragraph. Commonly, this value is an error
value. If the determination is positive, an observation is made that more than one font is being used in the paragraph.
15. Mix of font sizes in paragraph The rule determines if the value returned for the font size for the paragraph indicates that more than one font size is being used in the paragraph. Commonly, this value is an error value. If the determination is positive, an observation is made that more than one font size is being used in the paragraph. 16. Check heading style usage is expected The rule determines from the returned style identifier for the paragraph if the paragraph is in a heading style. If the determination is positive, an observation is made that heading styles are in use.
17. Text boxes in use
The rule determines from the returned values if a text box has been identified. If the determination is positive, an observation is made that text boxes are in use.
18. Mixed underlining in paragraph
The rule determines if the value returned for the underlining state for the paragraph indicates that part of the text in that paragraph in underlines. Commonly, this value is an error value. If the determination is positive, an observation is made that only some of the text in the paragraph is underlined.
19. Mixed italics in paragraph
The rule determines if the value returned for the italicisation state for the paragraph indicates that part of the text in the paragraph is in italics. Commonly this value is an error value. If the determination is positive, an observation is made that only some of the text in the paragraph is in italics.
20. Mixed holding in paragraph
The rule determines if the value returned for the bold state for the paragraph indicates that part of the text in the paragraph is in bold. Commonly, this value is an error value. If the determination is positive, an observation is made that only some of the text in the paragraph is in bold. Each rule is associated with an importance level of either high or low. If an observation is made in accordance with a rule, the observation is added to the appropriate top or bottom observation box 31a or 31b depending on the importance level. Observations which may be as a consequence of serious formatting errors or inconsistencies are displayed in the top box 31a, while low level observations which may be as a consequence of user preference are displayed in the bottom box 31b. For example, rule 20 "Mixed holding in paragraph" is of low importance since the observation may be of interest to a user, but is less likely to represent a major formatting inconsistency than other observations; a user may have intentionally placed some of the text in a paragraph in bold. By selecting an observation in one of the observation boxes 31a, 31b, as shown in figure 4, and clicking the more on highlighted observation button 34, an additional dialog is displayed explaining the observation in more detail. The
information display area 36 is used to present a brief summary or explanation of a selected observation to a user. Furthermore, the analysis process preferably highlights a continuous portion of text 52 in the document where the selected observation has been made. Additional control buttons may be provided permitting the user to move back and forth through the document highlighting discrete portions of text where the selected observation has been made. Clicking on the manage observations button 32 brings up a new dialog containing a list of possible observations which have not been found in the document . The text styles allowed selector 38 permits a user to select the number of body text styles allowed in the analysed portion of the document, as discussed in connection with rule 7 "More styles in use than expected". If the display observation count check box 40 is checked, a counter 54 indicating the number of observations is displayed. The counter 54 provides two values, the first indicating the number of high level observations, and the second indicating the number of low level observations. If a particular observation is selected, as shown in Figure 4, the counter 54 provides values indicating the total number of observations of that type that have been made in the analysed portion of the document. If the stop for each problem check box 42 is unchecked, a list of all the observations is provided to a user once the analysis process is completed for the selected portion of the document. Alternatively, if the stop for each problem check box 42 is checked, the analysis process is interrupted each time an observation is made. This permits a user to review the observations one at a time. Furthermore, as shown in Figure 4, if the stop for each problem check box 42 is
checked, the start health check button 44 changes to a continue health check button 44a in the event that an observation is made and the analysis interrupted. Clicking on the continue health check button 44a continues the analysis process. As the analysis process progresses, the paragraphs inspected progress bar 46 fills up to indicate to a. user how much of the selected portion of the document has been analysed. Clicking on the reset to start button 48 either while the analysis is progressing or once the analysis is complete removes all observations from the observation boxes 31a, 31b and resets the counter 54. A user may wish to do this if he has corrected an observed formatting error and wishes to analyse the document again, or if he wishes to use different analysis settings. Clicking the close button 50 at any time closes the health check dialog 30. Returning to the main display of Figure 1, clicking on the save backup button 16 saves a backup copy of the document to disk. Preferably the backup copy is saved with the same file name as the original, but with the file name augmented with a predetermined extension such as "_DTWCopy" to allow easy identification of the backup. A user is advised to save a backup copy of the document before initiating the document tidying processes described below. Clicking on the tidy document button 18 brings up a tidy document dialog 60 , shown in Figure 5. The tidy document dialog 60 has a fix headings button 62, a fix text styles button 64, and a close button 66. Clicking on the fix headings button 62 initiates a fix headings process.
Clicking on the fix text styles button 64 initiates a fix
text styles process. Clicking on the close button 64 closes the tidy document dialog 60. Embodiments of the present invention provide two document tidying processes: fix headings, and fix text styles. Generally speaking, fixing headings involves identifying text having specified formatting properties and applying a heading style to the identified text. Fixing text styles involves specifying a plurality of styles, identifying text in any of those styles and applying a single style to the identified text, thereby reducing the number of styles in use. More specifically, to fix headings a user specifies a set of values associated with different formatting properties and a destination heading style. Text in the document which has the specified values for each formatting property is automatically identified by the fix heading process. A user is given an opportunity to review the identified text before the fix headings process automatically applies the destination heading style to the identified text. The fix headings process is initiated by clicking on the fix headings button 62 in the tidy document dialog. This brings up a select text dialog 70, shown in Figure 6. The select text dialog 70 contains an information area 72 providing instructions or help to a user, a cancel button 74, an advanced button 76, and a next button 78. While the select text dialog 70 is displayed, a user selects a set -of formatting properties values which are common to the text which to which the destination heading style is to be applied. This may be done by directly selecting a portion of text in the document which has the desired formatting property values. The portion of text is
selected by highlighting it using an input device such as a mouse. The values associated with each of the formatting properties of the selected text are saved to memory for use in the fix headings process. Alternatively, clicking on the advanced button 76 permits a user to select a style from a list of styles. The formatting property values associated with that style are stored in memory for use in the fix headings process. Once the desired formatting property values have been selected, a user clicks on the next button to close the select text dialog 70 and bring up a define headings dialog 80, shown in Figure 7. Alternatively, clicking on the cancel button 74 closes the select text dialog 70, returning a user to the tidy document dialog 60. The define headings dialog 80 contains a heading style selector 82, an active settings counter 84, a manage settings button 86, a style detail display area 88, a back button 90, an advanced button 92 and a next button 94. The style detail display area 88 lists at least some of the formatting property values which have been stored in memory. In the example shown in Figure 7, the font name property has a value of "Arial", the font size property has a value of "16", the bold state property has a value of "on", the capitalisation state property has a value of "mixed", the alignment property has a value of "left", and the underlining state property has a value of "off". Values for other formatting properties are also preferably stored in memory, but are not displayed in the style detail display area 88 for the sake of simplicity. Clicking the advanced button 92 brings up a formatting property selection dialog 100, shown in Figure 8. The formatting property selection dialog 100 contains a group of
formatting property checkboxes 102, a cancel button 104 and a close button 106. The formatting property selection dialog 100 permits a user to select which formatting properties are taken into consideration by the fix headings process when identifying the text to which the destination heading style is to be applied. If a particular formatting property checkbox is checked, the fix headings process compares the value stored in memory associated with that formatting property with the corresponding value for a portion of text in the document. If the values match for all of the checked formatting properties, that portion of text is identified as being text to which the destination heading style is to be applied. If the formatting property checkbox is unchecked, that formatting property is ignored when evaluating a portion of text. In the example shown in Figure 8, the font size, bolding and underling formatting property checkboxes are checked, while the italics, alignment, font name, capitalization, indentation and outline level formatting property checkboxes are unchecked. With reference to the formatting property values listed in the style detail display area shown in Figure 7, the fix headings process will therefore identify all text which has a value of "16" for the font size formatting property, a value of "on" for the bold state formatting property, and a value of "off" for the underline state formatting property, irrespective of the values for the other properties. Once a user has checked and/or unchecked the desired boxes, clicking the close button 106 saves the settings and closes the formatting property selection dialog 100.
Alternatively, clicking on the cancel button 104 closes the
formatting property selection dialog 100 without saving any changes a user may have made. A user selects the desired destination heading style using the heading style selector 82. Each available destination heading style is associated with a different colour and the name of the heading style is printed in the heading style selector 82 in that colour. Preferably a user is permitted to select from any of nine different destination heading styles. Once a user has selected a destination heading style, he may click on the back button 90 to close the define headings dialog 80 and brings up the select text dialog 70 of Figure 6. From here, a user can select a different set of formatting property values, in the same way as previously, click the next button 78 to bring up the define headings dialog 80, and select a destination heading style for the new set of formatting property values. The fix headings process remembers each set of formatting property values and the associated destination heading style selected by a user. Preferably a user can select up to nine different sets of formatting property values and an associated destination heading style. The active settings counter 84 indicates the number of sets of formatting property values that have been stored in memory. Clicking on the manage settings button 86 brings up a list of all of the stored formatting property values and the associated destination heading styles which have been selected by a user. Once a user has selected the desired number of sets of formatting properties, clicking on the next button 94 in the define heading dialog 80 closes the define headings dialog 80 and brings up a review heading changes dialog 110, shown in Figure 9.
The review heading changes dialog 110 contains an information area 111 displaying instructions or help to a user, a key button 112, a colour button 114, an uncolour button 116, a progress bar 118, a back button 120, an advanced button 122, and a finish button 124. Clicking the colour button 114 runs a text identification process using the settings specified by a user in the previous dialogs to identify the text to which the destination heading style or styles are to be applied. The identified text in the document is coloured with the colour associated with the destination heading style so that a user can quickly establish which text has been identified and is due to be altered. As the identification process runs, the progress bar 118 fills up to indicate to a user how much of the selected portion of the document has been processed. An example of a coloured document lib is shown in Figure 10. Identified text 126 is displayed in a different colour from the other text in the document lib. Clicking on the key button 112 brings up an information dialog listing the different destination heading styles and their associated colours for easy reference by a user. Clicking on the uncolour button 116 after a document has been coloured removes the colouring from the identified text 126. A user can then use the back button 120 to return to previous dialogs and alter the fix headings settings, if desired. Clicking on the advanced button 122 brings up the property selection dialog 100 of Figure 8. Conveniently, this permits a user to adjust the settings in the property selection dialog 100 without returning to the define headings dialog 80.
Once a user has reviewed the coloured document lib, clicking on the finish button 124 applies the appropriate destination heading styles to the identified text. The review heading changes dialog 110 then closes and the fix headings process ends . The fix text styles process will now be described. To fix text styles a user specifies at least one starting style and a destination style. Text in the document which is in any of the specified starting styles is automatically identified by the fix text styles process. A user is given an opportunity to review the identified text before the fix text styles process automatically applies the destination style to the identified text. The fix text styles process is initiated by clicking on the fix text styles button 64 in the tidy document dialog
60. This brings up a select text dialog 130, shown in Figure 11. The select text dialog 130 contains an information area 132 providing instructions or help to a user, a cancel button 134, an advanced button 136, and a next button 138. While the select text dialog 130 is displayed, a user selects a destination style which is to be applied to the subsequently identified text. This may be done by directly selecting a portion of text in .the document which has the desired formatting property values. The portion of text is selected by highlighting it using an input device such as a mouse. The style associated the selected text is saved to memory for use in the fix text styles process. Alternatively, clicking on the advanced button 136 permits a user to select a style from a list of styles. The selected style is stored in memory for use in the fix text styles process .
Once the destination style has been selected, a user clicks on the next button 138 to close the select text dialog 130 and bring up a styles to change dialog 140, shown in Figure 12. Alternatively, clicking on the cancel button 134 closes the select text dialog 130, returning a user to the tidy document dialog 60. The styles to change dialog 140 contains a style list box 142, an add styles button 144, a remove styles button 146, a back button 148, an advanced button 150 and a next button 152. The style list box 142 lists the starting styles. Text in any of the starting styles is to be identified by the fix text styles process and the destination style is to be applied to the identified text. Clicking on the add styles button 144 brings up a new dialog which permits a user to select a style to add to the list in the style list box 142. Selecting a style in the style list box 142 and clicking the remove styles button 146 removes the selected styles from the style list box 142. Clicking the advanced button 150 brings up a formatting property selection dialog 160, shown in Figure 130. The formatting property selection dialog 160 contains a group of formatting property checkboxes 162, and a close button 164. The formatting property selection dialog 160 permits a user to select formatting properties which are to remain unchanged when the destination style is applied to the identified text. If a particular formatting property checkbox is checked, the value associated with that formatting property is changed to the corresponding value for the destination style when the destination style is applied to the identified text. If a formatting property checkbox is unchecked, the value associated with that
formatting property is not changed when the destination style is applied to the identified text. In the example shown in Figure 13, the font name, font size, underline, italics, alignment, colour and superscript & subscript checkboxes are checked, while the bolding checkbox is unchecked. The fix text styles process will therefore not alter the value associated with the bold formatting property in the identified text when applying the destination style to the identified text. Once a user has checked and/or unchecked the desired boxes, clicking the close button 164 saves the settings and closes the formatting property selection dialog 160, returning a user to the styles to change dialog 140. If a user wishes to change the destination style, he may click on the back button 148 to close the styles to change dialog 140 and brings up the select text dialog 130 of Figure 11. Once a user has selected the desired destination style and one or more starting styles, clicking on the next button 152 in the styles to change dialog 140 closes the styles to change dialog 140 and brings up a review style changes dialog 170, shown in Figure 14. The review style changes dialog 170 contains an information area 171 displaying instructions or help to a user, a colour button 172, an uncolour button 174, a progress bar 176, a back button 178, a cancel button 180, and a finish button 182. Clicking the colour button 172 runs a text identification process to identify text in any of the starting styles specified by a user in the previous dialogs.
The identified text in the document is coloured so that a user can quickly establish which text has been identified
and is due to be altered. As the identification process runs, the progress bar 176 fills up to indicate to a user how much of the selected portion of the document has been processed. An example of a coloured document lie is shown in Figure 15. Identified text 184 is displayed in a different colour from the other text in the document lie. Clicking on the uncolour button 174 after a document has been coloured removes the colouring from the identified text 184. A user can then use the back button 178 to return to previous dialogs and alter the fix text styles settings, if desired. Clicking on the cancel button 122 cancel the fix text styles process and returns a user to the tidy document dialog 60. Once a user has reviewed the coloured document lie, clicking on the finish button 182 applies the destination style to the identified text, but without altering any values associated with formatting properties which were unchecked in the formatting property selection dialog 160. Looked at another way, the formatting property values of the identified text are altered to match the corresponding formatting property values associated with the destination style, but without altering any values associated with formatting properties which were unchecked in the formatting property selection dialog 160. Although the identified text as modified may therefore have variations in individual formatting property values, the modified text is nevertheless all in the same base style. Once the text styles have been fixed, the review style changes dialog 170 closes and the fix text styles process ends. A preferred embodiment of the present invention has been described. However, a skilled person will recognise
that individual processes forming this preferred embodiment may be implemented separately or in combination. Individual steps, such as the text identification and colouring steps, may find utility in areas of word processing other than text formatting. For example, text identification may simply provide useful information to a user, or may be used as a starting step for performing other operations on the identified text. Accordingly, the present invention is not limited by the specific applications described above.