Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
IMPROVING READABILITY OF TEXT
Document Type and Number:
WIPO Patent Application WO/2014/041365
Kind Code:
A1
Abstract:
A formatted text product comprises text formatted so that the majority of pairs of adjacent lines of text have been modified such that one of the last word or words (304a, 305a, 306a) of the first line of a pair of adjacent lines is repeated as the first word or words (304b, 305b, 306b) of the second line of the pair of adjacent lines. A computer system and software therefore are described that provide the ability to convert a source text into such a formatted text product.

Inventors:
BADDELEY TIMOTHY WILLIAM GERALD (GB)
FLINT MICHAEL WAYNE (GB)
DAVIES NEIL WILLIAM (GB)
HUTTON SIMON JOHN (GB)
BAYLISS KIMBERLEY DAWN (GB)
TAYLOR JAMES RICHARD (GB)
MCINTOSH JESS (GB)
Application Number:
PCT/GB2013/052405
Publication Date:
March 20, 2014
Filing Date:
September 13, 2013
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
PURPLE SECURE SYSTEMS LTD (GB)
BADDELEY TIMOTHY WILLIAM GERALD (GB)
International Classes:
G06F17/21; G06F40/189
Domestic Patent References:
WO2004023330A22004-03-18
Foreign References:
US3611593A1971-10-12
US20070030502A12007-02-08
US20110231755A12011-09-22
US3611593A1971-10-12
Attorney, Agent or Firm:
PEARSON, James Ginn (20 Red Lion StreetLondon, Greater London WC1R 4PQ, GB)
Download PDF:
Claims:
Claims

1. A formatted text product comprising text formatted so that the majority of pairs of adjacent lines of text have been modified such that one of the last word or words of the first line of a pair of adjacent lines is repeated as the first word or words of the second line of the pair of adjacent lines.

2. A formatted text product according to claim 1, wherein the text product is an electronic data product.

3. A formatted text product according to claim 2, wherein the text product is displayed within a web-page.

4. A formatted text product according to any preceding claim wherein substantially all pairs of adjacent lines within a paragraph of text have been modified such that one of the last word or words of the first line of a pair of adjacent lines is repeated as the first word or words of the second line of the pair of adjacent lines.

5. A formatted text product according to any preceding claim wherein the first word or words of the second line of the pair of adjacent lines that are repeated from the first line of the pair of adjacent lines are formatted differently from the bulk formatting of an adjacent line.

6. A formatted text product according to any preceding claim wherein both the last word or words of the first line of the pair of adjacent lines and the repeated first word or words of the second line of the pair of adjacent lines are formatted in the same way but differently from the bulk formatting of an adjacent line.

7. A method of converting text comprising a multiplicity of sentences into a formatted text data product for display on a display area having an available line width, the method comprising the following steps: providing a computer having a memory and a processor,

inputting into the memory of the computer, data representing the source text to be converted, the source text comprising a series of words,

the computer using one or more software modules to perform the following sub- steps:

(a) identifying words in the source text,

(b) creating as part of the formatted text data product a first line of words, in dependence on the available line width of the display area, by populating the line with a first sequence of words forming part of the series of words from the source text,

(c) identifying the last word or words of the first line of words of the formatted text data product,

(d) creating as part of the formatted text data product a second line of words after the first line of words, in dependence on the available line width of the display area, by inserting at the start of the second line a copy of the last word or words of the first line of words of the formatted text data product and thereafter populating the second line with a second sequence of words, the second sequence of words immediately following the first sequence of words in the source text, and

(e) repeating step (c) but in respect of the second line of words, and repeating step (d) to create a third line of words after the second line of words, and

outputting the formatted text data product so created.

8. A method according to claim 7, wherein sub-step (e) is repeated mutatis mutandis so as to create a formatted text data product in which the majority of pairs of adjacent lines of text in the formatted text data product are such that one of the last word or words of the first line of a pair of adjacent lines is repeated as the first word or words of the second line of the pair of adjacent lines. 9. A method according to claim 7 or 8, wherein the method is performed within a software application, which has one or more software modules including word-processing functions that allow for manipulation and/or display on-screen of text, and the software module that is utilised to identify the last word or words in a line of words make use of the word-processing functions of the application software.

10. A method according to claim 9, wherein

the software application is an internet browser application,

the word-processing functions include the display offset information that is provided by the browser in respect of tagged elements of text, and

the last word or words in a line of words are identified by means of comparing the vertical offset value in respect of successive tagged text elements.

11. A method according to claim 9, wherein

the software application is a word processing package,

the word-processing functions include the ability to select the last word on a line of a page, and the last word or words in a line of words are identified by the method by means of using this word-processing function.

12. A computer system for converting a source text comprising a multiplicity of sentences into a formatted text data product, the computer system comprising one or more software modules including:

(a) a module for identifying words within a text data product,

(b) a module for identifying the last word or words of a given line of words in a text data product,

(c) a module for creating a formatted text data product comprising multiple lines of words, the lines having a given line width, such that, for the majority of pairs of adjacent lines of text, the last word or words of the first line of a pair of adjacent lines is repeated as the first word or words of the second line of the pair of adjacent lines, and

(d) a module for outputting a formatted text data product, wherein the software modules are so configured as to perform the method of any of claims 7 to 11.

13. A computer software product for programming a computer to create the computer system of claim 12. 14. A computer software product according to claim 13, wherein the computer software product includes at least a module for creating a formatted text data product comprising multiple lines of words, the lines having a given line width, such that, for the majority of pairs of adjacent lines of text, the last word or words of the first line of a pair of adjacent lines is repeated as the first word or words of the second line of the pair of adjacent lines.

15. A method of improving the ease of reading a literary work comprising a multiplicity of sentences each sentence comprising a multiplicity of words, wherein the method includes a step of creating a text product from the literary work by repeating one of the last word or words of the first line of a pair of adjacent lines as the first word or words of the second line of the pair of adjacent lines, for at least the majority of pairs of adjacent lines of text.

Description:
Improving readability of text

Background of the Invention The present invention concerns improving the readability of text, an improved text product, and a computer system and method for creating such a text product. More particularly, but not exclusively, this invention concerns computer software for converting a source text into a new text product (for example in the form of a data file) which may improve readability of the text for certain readers. The invention also concerns a novel formatted text product, a method of converting text comprising a multiplicity of sentences into a formatted text data product, a computer system for converting a source text comprising a multiplicity of sentences into a formatted text data product, a computer software product for programming a computer to create such a computer system, and a method of improving the ease of reading a literary work.

Some people, when reading, can experience difficulties with tracking

(sequentially scanning) from one line of text to the next. Such a difficulty is particularly common among people, who suffer from dyslexia, which it is reckoned may afflict between 10% and 15% of the population. Some people when reading comprehend one or more words at a time, and others can (particularly when speed-reading or scanning a text) comprehend one or more lines of text at a time. It is thought that, at least for some people, there is a need to hold the last word of a line of text in the working memory and then locate the first word of the following line with which to continue the sense of the sentence. For some people this process is awkward or difficult, and can result in impaired reading fluency. For some people the process of reading lines of text in the correct order is difficult, for example resulting in the person reading the same line of text repeatedly or skipping lines of text, again potentially resulting in impaired reading fluency.

US 3,61 1,593 provides a proposal for improving readability of a text by means of providing indications in the margins of the text at the start of each line, or every other line, to guide the reader's eye from one line to the next. However, the addition of indications, such as bullet points or other marks, in the margins may be a distraction to some readers. Also, the appearance of such special extra markings in the text may make readers suffering from reading difficulties feel patronised or otherwise made to feel different from more able readers. The solution offered by US 3,611,593 is thus rather intrusive.

The present invention seeks to mitigate the above-mentioned problems.

Alternatively or additionally, the present invention seeks to provide a text product which may ease reading of the text by certain readers. Alternatively or additionally, the present invention seeks to provide a method and/or apparatus and/or software which enable the creation of such an improved text product.

Summary of the Invention

The present invention provides, according to a first aspect, a formatted text product comprising text formatted so that the majority of pairs of adjacent lines of text have been modified such that one of the last word or words of the first line of a pair of adjacent lines is repeated as the first word or words of the second line of the pair of adjacent lines.

The present invention is designed to help readers with tracking when the eye moves to locate the following line. This is achieved by means of the pairs of repeated word or words from the end of one line to the beginning of the next which effectively add a link or connection between adjacent lines. It is believed that the repetition of a word at the end of a line at the beginning of the next will assist certain readers in tracking from one line to the next. Advantageously, it is reckoned to be a sufficiently 'soft ' solution that its application will not bother fluent readers, since the brain rapidly ceases to notice any difference between conventional text and this 'connected' text.

The formatted text product may be in the form of printed matter, such as a paper- based publication, for example a book. The formatted text product may be an electronic data product, for example a data file. The text product may be displayed on a portable electronic book reader, such as for example the Kindle™ device sold by Amazon. The text product may be displayed within a web-page, for example within or overlaying a browser window on the display device of a computer system. The electronic data product could be stored on physical media, such as the memory of a computer, a hard drive, memory stick or other memory device, or a data disc (such as a CD-ROM, DVD or the like). The text product may be displayed on an electronic display device, for example associated with a computer. The computer may be a tablet computer, smart phone, desk- based PC, laptop, or similar computing apparatus. The text product may be displayed in a distinct part of the display separate from the source text which may also be displayed, optionally at the same time, on the same, on the same device. The text product may be displayed so that it overlays, partially or wholly, or otherwise masks or hides (at least partially), the display of the source text. For example, the text product may be displayed in a window, pop-up, or similar. Such a window, pop-up, or similar object may have the appearance, to the user, of a lens which transform the source text via the lens into the formatted text product.

The formatted text product may be such that substantially all pairs of adjacent lines within a paragraph of text have been modified such that one of the last word or words of the first line of a pair of adjacent lines is repeated as the first word or words of the second line of the pair of adjacent lines. The formatted text product may comprise multiple paragraphs of text. For example, there may be three or more paragraphs of text. There may be ten or more paragraphs of text. The formatted text product may be such that the majority of pairs of adjacent lines of text, and more preferably substantially all pairs of adjacent lines, within the majority of, and more preferably substantially all of, the paragraphs of text have been modified such that one of the last word or words of the first line of a pair of adjacent lines is repeated as the first word or words of the second line of the pair of adjacent lines. There are preferably at least five lines of text. There may be at least ten lines of text, for example split across one or more paragraphs. There may be more than 25 lines of text.

The first word or words of the second line of the pair of adjacent lines that are repeated from the first line of the pair of adjacent lines may be formatted differently from the bulk formatting of an adjacent line. For example, the first word or words of the second line may be positioned within a left-hand margin spatially separated from the portions of the text product not comprising the repeated words at the beginning of lines.

An embodiment of the invention may therefore have an appearance as set out below (where the letters "A" and "B" each represent words in a line, the letter B in this case being the repeated word and appearing in the left-hand margin, the number of lines in the paragraph being variable of course):

AAAAAAAAAAAAAAAAAAAAA B AAAAAAAAAAAAAAAAAAAAAAAA B AAAAAAAAAAAAAAAAAAAAAAAA B AAAAAAAAAAAAAAAAAAAAAAAA B AAAAAAAA

The first word or words of the second line may be in a different colour from the bulk formatting of an adjacent line. An embodiment of the invention may therefore have an appearance as set out below, where the letter "A" represents a word having a first colour - or format - and the letter "B" represents a word having a second different colour - or format - with all adjacent pairs of lines in the text being such that the word represented by the last letter (in this case always represented by the letter "A") on the first line of the pair is repeated on the next line of the pair (in this case always represented by the letter "B"):

AAAAAAAAAAAAAAAAAAAAA BAAAAAAAAAAAAAAAAAAAAAAA BAAAAAAAAAAAAAAAAAAAAAAA BAAAAAAAAAAAAAAAAAAAAAAA BAAAAAAAAAAA

The text may be formatted such that, for example, when reading from one line to the next, the last word or words on one line may be one colour (or format), the first (repeated) word(s) on the next line may be the same colour (or format), optionally with subsequent words on that next line being a different colour (or format). It may for example be that both the last word or words of the first line of the pair of adjacent lines and the repeated first word or words of the second line of the pair of adjacent lines are formatted in the same way but differently from the bulk formatting of an adjacent line. An embodiment of the invention may therefore have an appearance as set out below, where the letter "A" represents a word having a first colour - or format - and the letter "B" represents a word having a second different colour - or format - with all adjacent pairs of lines in the text being such that the word represented by the last letter (in this case always represented by the letter "B") on the first line of the pair is repeated on the next line of the pair (in this case also always represented by the letter "B"):

AAAAAAAAAAAAAAAAAAAAB BAAAAAAAAAAAAAAAAAAAAAAB BAAAAAAAAAAAAAAAAAAAAAAB BAAAAAAAAAAAAAAAAAAAAAAB BAAAAAAAAAAA

The text may be formatted such that, for example, when reading from one line to the next, the last word or words on one line may be one colour (or format), the first (repeated) word(s) on the next line may be the same colour (or format), with subsequent words on that next line being the same colour (or format). The subsequent words on that next line may be the same colour (or format) as the first (repeated) word(s), for example up until but not including the last word(s) on that line, if such last word(s) are repeated on the line thereafter. Thus, the preceding words on a given line (before the last word(s) that are repeated on said one line) may be a different colour from said last word(s) on said given line which are repeated on the next. An embodiment of the invention may therefore have an appearance as set out below, where similar to above the letters "A" represents a word having a first colour - or format - and the letter "B" represents a word having a second different colour - or format - with all adjacent pairs of lines in the text being such that the word represented by the last letter (whether "A" or "B") on one line is repeated as the first word on the next line: AAAAAAAAAAAAAAAAAAAAB

BBBBBBBBBBBBBBBBBBBBBBBBBA AAAAAAAAAAAAAAAAAAAAAAAB BBBBBBBBBBBBBBBBBBBBBBBBBA AAAAAAAAAAA

The text may be formatted such that, for example, when reading from one line to the next, the last word or words on one line may be one colour (or format), the first

(repeated) word(s) on the next line may be the same colour (or format), with subsequent words on that next line being a different colour (or format). The subsequent words on that next line may be the same colour (or format) as the last word(s) on that line. An embodiment of the invention may therefore have an appearance as set out below (again, the letters "A" and "B" representing words of different colours/formats):

AAAAAAAAAAAAAAAAAAAAA ABBBBBBBBBBBBBBBBBBBBBBBBB BAAAAAAAAAAAAAAAAAAAAAAA ABBBBBBBBBBBBBBBBBBBBBBBBB BAAAAAAAAAAA

It will be seen from above that the text may be formatted such that the last word or words on the first line (which are repeated on the second line) may be in a different colour from the bulk formatting of an adjacent line.

It may be the case that more than two different colours (formats) are used in a way to connect the last word on one line and the repeated word on the next. One colour (format) may be reserved for the bulk formatting, with two or more other colours/formats being used to indicate only the repeated words. An embodiment of the invention may therefore have an appearance as set out below (in a similar manner to the preceding illustrations, the letters "A", "B" and "C" representing words of different

colours/formats):

AAAAAAAAAAAAAAAAAAAAB BAAAAAAAAAAAAAAAAAAAAAAC CAAAAAAAAAAAAAAAAAAAAAAB BAAAAAAAAAAAAAAAAAAAAAAC CAAAAAAAAAAA

An embodiment of the invention may use three or more different colours for the repeated words, and therefore for example have an appearance as set out below (in a similar manner to the preceding illustrations, the letters "A", "B", "C" and "D" representing words of different colours/formats):

AAAAAAAAAAAAAAAAAAAAB BAAAAAAAAAAAAAAAAAAAAAAC CAAAAAAAAAAAAAAAAAAAAAAD DAAAAAAAAAAAAAAAAAAAAAAB BAAAAAAAAAAA

The bulk formatting used in one line may be the same as one only of the first (repeated) word(s) and the last (repeated) word(s) on that line. Alternative embodiments of the invention may therefore have an appearance as set out in the two illustrative examples below (in a similar manner to the preceding illustrations, the letters "A", "B" and "C" representing words of different colours/formats): AAAAAAAAAAAAAAAAAAAAB

BBBBBBBBBBBBBBBBBBBBBBBBBC CCCCCCCCCCCCCCCCCCCCCCCCCA AAAAAAAAAAAAAAAAAAAAAAAB BBBBBBBBBBBB

AAAAAAAAAAAAAAAAAAAAA ABBBBBBBBBBBBBBBBBBBBBBBBB BCCCCCCCCCCCCCCCCCCCCCCCCC CAAAAAAAAAAAAAAAAAAAAAAA ABBBBBBBBBBBB

In all of the above diagrams showing how formatting/colour may be used to further assist the reader it will be appreciated that the number of lines in the paragraph may be different from the five lines shown.

According to a second aspect of the invention there is provided a method of converting text comprising a multiplicity of sentences into a formatted text data product for display on a display area having an available line width, wherein the method includes modifying the text such that for the majority of pairs of adjacent lines of text one of the last word or words of the first line of a pair of adjacent lines is repeated as the first word or words of the second line of the pair of adjacent lines. The method may include outputting the formatted text data product so created, for example by displaying the text on a display screen, by printing the text, and/or by saving the text for subsequent use. The step of outputting of the formatted text data product may be in the form of outputting a data file, for example in the form of an electronic data product.

The method may include providing a source text to be converted, the source text comprising a series of words. The method may include identifying words in a source text, and in particular, identifying the last word or words in a line. It will be understood that, in the context of the present invention, each of the "words" so identified when performing the step of identifying the words, may consist of a series of characters, for example including punctuation, and not necessarily being in the form of words that would normally be found in a conventional dictionary. For example, a "word" may simply be defined as the series of characters between a space and the end of a line or the next space. There may therefore be no analysis of the word so identified, and the step of identifying a word may for example simply comprise detecting the start and end of a word, without requiring knowledge of the content of the word so "identified".

The method may include identifying lines of words in a text, for example to allow identification of the last word or words in a line. The method may include identifying the last line of words in a paragraph. The step of identifying a line of words in a text, may distinguish between a line which only contains a web-link and/or images and a lines of words. A line which comprises only one word, not being a web-link, may be treated as not being a line of words. A line which includes formatting of a certain type (for example being a row, or cell, in a table, the row or cell comprising only one line of text) may be identified as not being a line of words (or being a line of words but not one that is to be processed so as to produce connected text - such as a repeated word in an adjacent line). The one or more lines of text so identified may be stored as data in a different way such that the data includes additional line information allowing a different means for subsequently identifying separate lines in the text. The step of identifying lines of words in a text may include dividing a string of words, for example without any information concerning line width, into a set of lines of words. Dividing a string of words into a set of lines of words may include using page width information and character spacing information.

The method may include creating as part of the formatted text data product a first line of words, in dependence on the available line width of a display area, by populating the line with a first sequence of words forming part of the series of words from the source text. The method may include a step of inserting, at the start of a line of words in the formatted text data product, a copy of the last word or words of the preceding line of words. Such a step may be repeated a multiplicity of times. The method may use a computer to perform one or more of the steps of the method. As such, there may be a step of providing a computer having a memory and a processor. One or more software modules may be provided to carry out steps of the method. The method may comprise inputting into the memory of the computer, data representing the source text to be converted. The computer may for example use one or more software modules to perform the following sub-steps:

(a) identifying words in the source text,

(b) providing as part of the formatted text data product a first line of words, in dependence on the available line width of the display area, the first sequence of words forming part of the series of words from the source text (for example, by creating as part of the formatted text data product a first line of words, in dependence on the available line width of the display area, by populating the line with a first sequence of words forming part of the series of words from the source text),

(c) identifying the last word or words of the first line of words of the formatted text data product,

(d) creating as part of the formatted text data product a second line of words after the first line of words, in dependence on the available line width of the display area, by inserting at the start of the second line a copy of the last word or words of the first line of words of the formatted text data product, the second line being provided with a second sequence of words immediately following the first sequence of words in the source text (for example by populating the second line with said second sequence of words)..

The method may include (as step (e) for example) repeating step (c) but in respect of the second line of words, and repeating step (d) to create a third line of words after the second line of words. The steps (a) to (d) are preferably carried out in that order.

The source text, when provided as a text data product, may be converted into the formatted text data product (for example so that after the method is performed the source text so provided only survives as the resultant formatted text data product). The source text may thus be progressively edited/changed during performance of the method.

Alternatively, the formatted text data product may be separate from the data representing the source text. The step of populating the line with a first sequence of words forming part of the series of words from the source text may simply be performed by manipulating the source text. Thus, the step of providing or creating, for example, a line of words, in dependence on the available line width of the display area, by providing, or populating, the line with a sequence of words may be performed simply by using, and adjusting as necessary, the source text. Alternatively, the step of populating the line with a first sequence of words forming part of the series of words from the source text, may be performed by creating a new data product (for example the formatted text data product) separate from, but at least partially copied from, the source text.

The above steps (c) and (d) are preferably repeated (as step (e) for example) mutatis mutandis so as to create a formatted text data product in which the majority of pairs of adjacent lines of text in the formatted text data product are such that one of the last word or words of the first line of a pair of adjacent lines is repeated as the first word or words of the second line of the pair of adjacent lines.

The method may be performed within a software application, for example a third party software application, which performs other functions and/or has one or more software modules. Such a software application will for the sake of convenience be referred to as a host software application. The method may be performed within a software application, which is provided with, or has access to, one or more software modules, for example library functions. Such one or more modules may include word- processing functions that allow for manipulation and/or display on-screen of text. The software module that is utilised to identify the last word or words in a line of words may advantageously make use of such word-processing functions. Using such functions may allow for the software module(s) that provide the text conversion functions of the present invention to be small in size (i.e. the code required to provide the functionality of the present invention may be provided in a relatively small size of file - fewer bytes). The step of inserting at the start of a line (for example "the second line") a (duplicate) copy a word or words may require formatting of the subsequent lines of text (for example in order to accommodate the extra inserted word in the available line width, which may require shifting one or more words from the end of a line to the start of the next and so on). Preferably such a function is provided by a software module of the host software application. Such a function may be useful when the method creates a copy of the source text, and then manipulates that copy of the source text to produce the formatted text data product, (or when the method simply works by directly manipulating the source text to produce the formatted text data product), rather than creating a new formatted text data product line by line from the source text.

The host software application may in some embodiments be a bespoke software implementation of the present invention. In such a case, the host software application may make use of library functions. One such library function may be one that enables the last word on a line of text to be readily identified and/or copied. Another such library function may be the ability to readjust lines of text to accommodate the insertion of a word or words at the beginning of an earlier line.

The host software application may be in the form of an internet browser application. The host software application may be in the form of a word processing package. The word-processing functions may allow for information, for example information concerning the relative position of a word, to be extracted in relation to words or group of words. For example, information that may be extracted may enable the software to ascertain whether a word is located at the end of a line or not. The information that may be extracted may comprise display offset information that concerns the position relative to a display area of a word or words. In the case, where the host software application is in the form of an internet browser and word or words in the text are provided as tagged elements, the last word or words in a line of words may advantageously be identified by means of comparing a vertical offset value in respect of successive tagged text elements. The word-processing functions may include the ability to select the last word on a line of a page, for example in the case where the host software application is in the form of a word processing package, and the last word or words in a line of words may be identified by the method by means of using this word-processing function. It will be understood that the word-processing functions provided may include functions different from those found in conventional word-processing packages, especially when the host software application is not a word-processing package. Such word-processing functions may for example include those functions that reposition subsequent words, when new text is inserted, in order to fit the lines of text into the available line width.

The way in which the method takes account of the available line width of a display area may be effected implicitly. For example, in the case where the method is performed within a word-processing package or a browser, the word-processing package or browser, as appropriate, may in any case ensure that a line of words is contained within the available line width and shift text at the end of one line to the beginning of the next as appropriate. Text may be automatically resized to be accommodated within the available width on a line.

The method may produce a formatted text data product in the form of a data file.

Such a data file may for example contain data representing the formatted text. A modified method of the second aspect of the invention may be provided in the form of a method of providing a data file, the data file containing data representing formatted text for display on a display area having an available line width, the method comprising the following steps:

providing a computer having a memory and a processor,

inputting into the memory of the computer, data representing a source text to be converted, the source text comprising multiplicity of sentences,

the computer using one or more software modules to perform the following sub- steps:

(a) identifying words in the source text,

(b) determining a first line of words, in dependence on the available line width of the display area, by populating the line with a first sequence of words forming part of the series of words from the source text,

(c) identifying the last word or words of the first line of words,

(d) determining a second line of words after the first line of words, in dependence on the available line width of the display area, by inserting at the start of the second line a copy of the last word or words of the first line of words of the formatted text data product and thereafter populating the second line with a second sequence of words, the second sequence of words immediately following the first sequence of words in the source text, and (e) repeating step (c) but in respect of the second line of words, and repeating step (d) to determine a third line of words after the second line of words, creating a data file representing formatted text consisting of the first, second and third determined lines of text (for example in order, one after the other, and possibly concatenated with intervening line breaks), and

outputting the created data file.

According to a third aspect of the invention there is also provided a computer system for converting a source text comprising a multiplicity of sentences into a formatted text data product in accordance with the first aspect of the invention or the second aspect of the invention. The computer system may comprise a module for identifying words within a text data product. The computer system may comprise a module for identifying the last word or words of a given line of words in a text data product. The computer system may comprise a module for creating a formatted text data product comprising multiple lines of words, the lines having a given line width, such that, for the majority of pairs of adjacent lines of text, the last word or words of the first line of a pair of adjacent lines is repeated as the first word or words of the second line of the pair of adjacent lines. The computer system may comprise a module for outputting a formatted text data product.

According to a fourth aspect of the invention there is also provided a computer software product for programming a computer to create the computer system of the third aspect of the invention. Such a computer software product may include at least a module for creating a formatted text data product comprising multiple lines of words, the lines having a given line width, such that, for the majority of pairs of adjacent lines of text, the last word or words of the first line of a pair of adjacent lines is repeated as the first word or words of the second line of the pair of adjacent lines. The computer system may for example already have one or more software application(s) already installed thereon, for example a host application as described above, providing one, and preferably all, of the following functions:

(i) identifying words within a text data product,

(ii) identifying the last word or words of a given line of words in a text data product, (iii) selecting, copying and pasting words,

(iv) outputting a formatted text data product, and

(v) readjusting subsequent lines of text to accommodate the insertion of a word or words at the beginning of an earlier line.

The host application may also provide a function in which individual lines of text may be identified and distinguished from each other.

According to a fifth aspect of the invention there is also provided a method of improving the ease of reading a literary work comprising a multiplicity of sentences each sentence comprising a multiplicity of words, wherein the method includes a step of creating a text product from the literary work by repeating one of the last word or words of the first line of a pair of adjacent lines as the first word or words of the second line of the pair of adjacent lines, for at least the majority of pairs of adjacent lines of text.

It will of course be appreciated that features described in relation to one aspect of the present invention may be incorporated into other aspects of the present invention. For example, the method of the invention may incorporate any of the features described with reference to the apparatus of the invention and vice versa.

Description of the Drawings Embodiments of the present invention will now be described by way of example only with reference to the accompanying schematic drawings of which:

Figure 1 shows a paragraph of text;

Figure 2 shows the paragraph of text of Figure 1 processed by a method according to a first embodiment of the invention;

Figure 3 a shows a paragraph of text;

Figure 3b shows the paragraph of text of Figure 3a processed by a method according to a second embodiment of the invention;

Figure 4 shows a flow-chart for a macro according to a third embodiment of the

invention for converting text within a word-processing package; Figure 5 shows a flow-chart for a web-browser plug-in according to a fourth embodiment of the invention for converting text within a web-page;

Figure 6a shows tagged html text prior to conversion by the browser plug-in of the fourth embodiment;

Figure 6b shows how the text of Figure 6a is displayed to the user in the web browser; Figure 7a shows tagged html text after conversion by the browser plug-in of the fourth embodiment;

Figure 7b shows how the text of Figure 7a is displayed to the user in the web browser; Figure 8 shows a flow-chart for a computer-implemented method according to a fifth embodiment of the invention for converting text;

Figure 9 shows the paragraph of text of Figure 1 processed by a method according to a sixth embodiment of the invention;

Figure 10 shows the paragraph of text of Figure 1 processed by a method according to a seventh embodiment of the invention; and

Figure 1 1 shows the paragraph of text of Figure 1 processed by a method according to an eighth embodiment of the invention.

Detailed Description The first embodiment of the invention relates to a system for converting printed text so that the last word of each line (apart from the last line in the paragraph) also appears as the first word of the following line. The system is preferably implemented in a computer programmed with appropriate software. Figure 1 shows some sentences of printed text in a paragraph. Figure 2 shows the text of Figure 2 modified so that the last word of each line also appears as the first word of the following line. The repeated words are in the same font, colour and general style as the words of the primary text (the original text in Figure 1) so that the repeated words are not isolated or otherwise distinguished form the primary text. The repeated words can however assist readers with tracking when the eye moves to locate the following line. In this embodiment, the implementation of this concept is reckoned to be a sufficiently 'soft ' solution that its application will not bother fluent readers, since the brain rapidly ceases to notice any difference between conventional text and this 'connected' text. (The term "connected text" will be used in relation to the drawings as text that has been converted from a source text - or primary text - to produce a text in which the last word or words in each of one or more lines of the text are repeated as the first word or words on the next line.)

It will be noted that the connected text is displayed/printed in landscape, not portrait, in Figure 2. Certain embodiments of the invention have particular application to a text printed in landscape, which would normally present difficulties with tracking, as the eye of the reader has further to travel (laterally) to the next line, and the reader is more prone to losing his/her place in the text. An advantage of landscape display /printing, which embodiments of this invention would render more practicable, is that there is less tracking to do, since there are fewer line breaks in a text, by virtue of the text being broader.

Occasionally the system encounters a 'compound-word-element' as the last words at the end of a line within a paragraph. A 'compound-word-element' denotes a group of words like 'brother in law', where the group forms a commonly used unit of words and where to break the group up would create an obstacle to fluency and understanding. Here the group of words is repeated as if it were one word. In order to achieve this function the system that is used to convert a source text into a connected text has access to a dictionary of such compound word elements, so as to ascertain whether the last two or three words on a line belong to a compound-word-element. In a development of the afore-mentioned feature the system may also ensure that a compound-word-element is not split across two lines in the connected text, if there is insufficient room at the end of the line for the compound-word-element, by pushing the compound-word-element and the preceding word onto the second of the two lines and repeating said preceding word at the end of the first line.

Figures 3a and 3b relate to a second embodiment, as a related variation of the first embodiment. Figure 3a shows a source text 92, before having been formatted according to the second embodiment. In this second embodiment, the last word on each line (apart from the last line in the paragraph) of the primary text 92 (the text from Figure 3 a) is repeated as an isolated word 94 in the left hand margin in the following line. The word

94 is isolated so that its inclusion can be seen to be additional to the primary text 92 and present to aid tracking. The repeated word 94 can be displayed in such a way that its isolation from the primary text 92 is clear. In Figure 3b, this is achieved by indenting the primary text 92 with a sufficiently large margin so as to accommodate most if not all of the repeated words 94 in the left hand margin and leave a gap between the repeated word 94 and the following text on the same line. The repeated words 94 are left justified in the left hand margin. The repeated word 94 could also be displayed in a different colour, shade, style of font. In this case, the repeated word 94 is italicised. It will be clear that the vertical line 96 separating the repeated word and the primary text is merely to illustrate the position of the left hand margin and would normally not be displayed or visible to the user.

The computer system used to produce the connected text of Figure 2 may be any suitable system that converts text, such that pairs of adjacent lines in the modified text are such that one of the last word or words of a first line of a pair of adjacent lines is repeated as the first word or words of the second line of the pair of adjacent lines. Two particularly advantageous example systems are described below with reference to the third and fourth embodiments of the invention. An advantage that both such

embodiments have in common is that both are add-ons to existing software applications. The add-on in each case utilises inherent functions in the software application, which for example provide the ability to identify the last word or words in a line of words.

Figure 4 shows, according to a third embodiment, a flow chart of a macro (a computer program) that is designed for use within a word processing package, in this case the word processing package produced by Microsoft Corp under the name "Microsoft Office Word". The macro is designed to produce a new document with the same formatting as the source document but converting the text into a connected text format. First (step 10), the macro copies the source document and creates a new file. The macro then performs the same loop of steps in respect of each successive line of text on screen. A check is performed to ensure that the line does not represent the end of the paragraph. This is performed by checking whether the last character (including non-printing characters and characters otherwise not visible to the user) on the line is a carriage return or a new paragraph mark. If the line in question is at the end of a paragraph then the macro proceeds to the next paragraph in the document, or of there are no further paragraphs, the macro ends (box 12).

If the line in question is not the last line of a paragraph, then the text unit at the end of the line is selected (box 14), using the corresponding commands in MS Word (in the same way as if a user with the cursor on the line in question presses the "END" key and then simultaneously presses "SHIFT", "CTRL" and "LEFT ARROW"). In some cases, the text unit selected will be a word, whereas in other cases it will not. For example, the character or characters selected may be one or more punctuation marks. The macro checks whether the text unit is not a word unit and if so, then additionally selects the word unit immediately preceding the text unit (box 16) and intervening space characters. For example, if the two words and comma at the start of this sentence were the last two words on a line, the macro would initially select a single-character text unit consisting of the comma, and the macro would then additionally select the word

"example" so that that the text unit then selected would consist of the following characters: e x a m p l e ,

In the case where the text unit initially selected at the end of a line is simply a word, then that word is selected (box 18). In this embodiment, there is also a step (not shown in Figure 4) of checking that any punctuation at the end of the line is properly selected (because there are some punctuation marks which can inadvertently be skipped over). A compound word (for example, "brother-in-law") is treated as a single word. This is achieved (not shown in Figure 4) as follows. After a word is found (e.g. "law"), the next left unit is checked, if this is a space, then just the word "law" is selected. If it is punctuation (e.g. "-"), check the next unit. If this is text (e.g. "in"), join the two words together as a text-unit (e.g. "in-law"). Repeat until white space is found (e.g. so that the text unit eventually selected is "brother-in-law").

The text that is selected (with or without punctuation) is then copied and used to create a text insert string. The text insert string is created (box 20) by adding a number of normal spaces (i.e. not non -breaking spaces) before the copied text equal to the free space at the end of the line. The text insert string is then added at the end of the line (box 22). The spaces effectively fill the space at the end of the line, ensuring that the first word on the next line (including punctuation, if any is present) is the same as last word on the line before. MS Word then adjusts subsequent lines automatically to ensure that each line of text does not exceed the available width, thus shifting words at the end of one line to the beginning of the next, as appropriate. The process is then repeated for each line of each paragraph (apart from the last lines of each paragraph). By using the existing functions in MS Word both for selecting and copying a word or text unit at the end of a line, and readjusting the positions of words when a duplicate word is inserted, the macro can be of a size that is much less than might otherwise be the case, resulting in a relatively small file-size for the macro.

The macro can include other optional processes, such as changing the font colour and background colour to aid readability. There may also be some extra formatting steps carried out to suit a particular display device. If for example, the text is to be outputted on an electronic reader device, such as Amazon's Kindle™ device, it may be necessary for the text to be displayed with certain pre-set margins and font-size for the repeated words in the connected text to display properly. It may also be necessary to format the start of a paragraph with the use of a single TAB character to be compatible with the default way in which paragraphs are formatted for the device.

Figure 5 shows a flow chart illustrating the operation of an internet browser plug- in, according to a fourth embodiment. The browser in this embodiment is Microsoft's Internet Explorer™, but the principles of operation apply equally to other commonly used browsers, such as for example Mozilla's FireFox™ or Google's Chrome™ browsers. Such browsers are provided with rendering engines that facilitate the arrangement and display of text in a given window-size. If the window is resized, the rendering engine is able to re-display the text appropriately. The plug-in uses html tags to process text to be displayed on screen. Tags are used in html to identify different elements of text, for example to display / format the tagged text in a certain way. Example text-formatting tags and their meanings are set out below: <B> </B> Bold text

<BR> Line break

<EM> </EM> Emphasis

<H1> </Hl> Headings and sub-headings

<H2> </H2>

<H6> </H6>

<I> </I> Italic

<LI> </LI> List item - used with lists

<OL> </OL> Ordered list

<P> </P> Paragraph

<SPAN> </SPAN> Dummy element commonly used with style sheets.

<STRONG> </STRONG> Strong emphasis

<SUB> </SUB> Subscript

<SUP> </SUP> Superscript

<TABLE> </TABLE> Table

<TD> </TD> Table data cell

<TH> </TH> Table header cell

<TITLE> </TITLE> Title

<TR> </TR> Table row

<U> < U>' Underline

<UL> < UL> Unordered list The plug-in processes the paragraphs one-by-one. The start of a paragraph is denoted by the <p> tag and the end with a </p> tag. The plug-in starts (box 30) by converting the text within a paragraph into separately tagged words. Each word is tagged with a <SPAN> tag, the <SPAN> tag being associated with a single identifier in the form of the string "ConnText" so that if text has already been processed by the plug-in it will not be inadvertently processed a second time. Tagging each word in this manner also makes use of the browser's inherent features that enable the relative position of a tagged element on-screen to be determined. In particular (see box 32), the browser effectively automatically calculates a vertical offset parameter for each tagged element, the vertical offset parameter providing information concerning the relative positions vertically down the page/window of the text being displayed on-screen.

The plug-in compares successive pairs of tagged words (a step represented by box 34) until either the end of the paragraph is reached, which is signified by the tag </P>, or the vertical offset parameters for the pair of tagged words are different, thus indicating that the second word of the pair is on the line of text immediately after the first word of the pair (decision path 36). If the second word of a pair is on a new line, then (box 38) a manual line break <BR> is inserted after the first word of the pair and a copy of the first word (with the <SPAN> tag) is inserted after the line break and before the second word, so that the first word on the new line repeats the last word on the previous line. By virtue of the plug-in running alongside the browser's rendering engine, immediately after the plug-in adds the additional copied (duplicate) word, the rendering engine recalculates the positions of the remaining text (shifting along and moving words that spill over onto new lines, as appropriate). Thus, the vertical offset parameters associated with any words that are pushed onto the next line down are updated as appropriate. Once that is done, the plug-in processes the next line of text, adds another duplicate word, then the rendering engine adjusts the subsequent text, and so on. By using the functionality of the browser's rendering engine, the plug-in can be of a size that is much less than might otherwise be the case, resulting in a relatively small file-size for the plug-in.

This sub process (steps represented by boxes 34 and 38) is repeated for all pairs of words in the paragraph, and then the sub-process is repeated for all paragraphs of text that are to be processed, until the process in completed (box 40). Figures 6a to 7b show how html text is processed and displayed by means of the plug-in of the fourth embodiment. Figure 6a shows some source html text and Figure 6b shows how this text is displayed in a window of the browser. It will be seen that the html text of Figure 6b, includes paragraph tags, <p> and </p> and some text formatting tags. The text formatting tags in this example are underlining of the words "Dyslexia and reading" by means of <u> and </u> tags, emphasising with bold font the text "10% and 15%" with the <b> and < b> tags, and italicising the string " 'tracking' " with the <i> and </i> tags. Figure 7a shows the html text after the plug-in has been executed. It will be noted that each word is tagged with the start and end tags <span style- ' display: inline;" id="ConnText"> and </span>. Inserting ' style- 'display: inline;" ' ensures that any html elements (of many words) in the source text already collectively formatted with the format style="display:block" are not split by the plug-in into separate word elements each being displayed in its own "block" (i.e. each successive word being put on its own line when the many words tagged with one format tag are split into many individually tagged words). The format style- 'display: block" is sometimes used in websites to denote captions or "asides" within a body of text and other content. The formatting and paragraph tags are left intact outside the "ConnText" <span> tags - see for example, the lines of html in Figure 7a, which show the formatting of the text 'tracking', that is: <i> <span style- 'display: inline;" id="ConnText">'tracking'</span> </i>

In the source text shown in Figure 6b, it will be seen that the last word on the first line of the first paragraph (after the title) is "number" and that the first word on the subsequent line is "of. In the Connected Text produced by the plug-in and as shown in Figure 7b, it will be seen that the last word on the first line of the first paragraph (after the title) is "number" but that the first word (a duplicated word) on the subsequent line is also "number" and that the second word on that subsequent line is "of. The corresponding html, as shown in Figure 7a, includes the html code, <span style- 'display: inline;" id="ConnText">number <br>number </span>, which provides the repeated words ("number") separated by a line break (<br>). The duplicated word in this embodiment is provided within the main body of text, and is not positioned within the left-hand margin or otherwise emphasised as being a special duplicated word within the text. Not drawing special attention to the duplicated word(s) can aid in making the embodiment a soft solution (the duplicate word not being specially highlighted, emphasised, or otherwise especially noticeable) to the problem of how to provide a reading aid to assist tracking of text from one line to the next in a body of text.

Figure 8 shows, according to a fifth embodiment, a flow chart of a computer program, for converting a source text into a connected text format. First (step 1 10), the program copies the content, including source text, from the source document and creates a new file into which the source text is inserted (with other content being associated with the text as appropriate). The new file is structured so as to be formatted in a series of lines of text in dependence on character font size, character spacing and display width settings. Each line has a fixed length and is typically populated by one or more works from the source text. The program performs the same loop of steps in respect of each successive line of text in the new document. If the line in question is at the end of a paragraph then the program proceeds to the next paragraph in the document, or of there are no further paragraphs, the program ends (box 112).

The program moves to the first (or next) valid line of text (box 1 14). The program checks whether the text unit at the end of the line is punctuation (or otherwise not a word), and if so, copies the word unit immediately preceding the non-word text (box 1 16) up to and including the text at the end of the line. Otherwise, the program copies the text unit (the word) at the end of the line (box 118).

A line return ("<LR>") is then inserted at the end of the line (box 120) and the copied text unit (comprising the last word on the preceding line) is inserted at the beginning of the next line (box 122). As mentioned above, this line-by-line process is performed paragraph-by-paragraph for the whole document.

Figure 9 shows the source text 2 shown in Figure 1 after having been formatted by a method according to a sixth embodiment. In this sixth embodiment, the last word 204a, 206a on each line (apart from the last line in the paragraph) of the primary text 2 (the text from Figure 1 ) is inserted as a repeated word 204b, 206b on the following line. The repeated words 204b, 206b that are inserted are the first words that appear on the lines concerned. The words on each line after the repeated words 204b, 206b follow immediately with a spacing that matches the rest of the text. The repeated words 204b, 206b are not isolated in a separate column (or margin) as in Figure 3 b, but are provided in-line in the same paragraph as the rest of the text (i.e. with a spatial layout identical to the text product of Figure 2 - the first embodiment). This sixth embodiment differs in that the repeated words 204b, 206b which appear as the first words on a line are presented in a colour (for example) different from the non -repeated words in the text (i.e. the rest of the text). The words that follow each repeated word 204b, 206b on each line are all presented in the same colour (black for example) including the last words 204a, 206a on each line. Two distinct colours are used: blue for any repeated words (at the start of each line concerned) and black for the rest.

Figure 10 shows the source text 2 shown in Figure 1 after having been formatted by a method according to a seventh embodiment. This seventh embodiment is similar to the sixth embodiment describred above, so only the notable differences will now be described. For pairs of adjacent lines in the paragraph, both the last word 304a, 305a, 306a on the first line of the pair and the repeated word 304b, 305b, 306b on the second line of the pair are coloured in the same colour. The colour changes from one pair to the next. Thus, the last word 304a on the first line and the first (repeated) word 304b at the start of the second line are presented in a first colour, namely green. The last word 305a on the second line and the first (repeated) word 305b at the start of the third line are presented in a second colour, namely blue. The last word on the third line and the first (repeated) word at the start of the fourth line (the word "first" in this example) are presented in a third colour, namely red. The colour cycle is then restarted such that the last word 306a on the fourth line and the first (repeated) word 306b (the word "is" in this example) at the start of the fifth line are presented in the first colour (green). The words in the paragraph not being the repeated words 304b, 305b, 306b, or their associated paired last words on the lines, are all presented in the same bulk colour (black for example). Four distinct colours are used: red, green and blue for the repeated words (at the start of each line concerned) and the associated paired last words and black for the rest.

Figure 1 1 shows the source text 2 shown in Figure 1 after having been formatted by a method according to an eighth embodiment. This eighth embodiment is similar to the seventh embodiment described above. In this case, for pairs of adjacent lines in the paragraph, both the last word 404a, 405a, 406a on the first line of the pair and the repeated word 404b, 405b, 406b on the second line of the pair are coloured in the same colour, the colour cycling through three different colours on successive lines (as in the seventh embodiment). In this eighth embodiment, however, the words all preceding a last word 404a, 405a, 406a in the line which is added as a repeated word 404b, 405b, 406b at the start of a following line are in the same colour. Such that the colour of text cycles through three colours, the colour changing when the reader reaches the last word in a line so that the colour of the last word is different from the preceding words on that line but the same as the words immediately following on the next line. In this case three distinct colours are used: red, green and blue.

In a ninth embodiment, not illustrated, very similar to the eighth embodiment, the colour of the text cycles through three different colours on successive lines such that the colour changes after the first (repeated) word on a line. Thus, the colour of the first word is different from the following words on that line but the same as the words immediately preceding it on the previous line.

A tenth embodiment of the invention not illustrated concerns a computer system for converting text comprising a multiplicity of sentences using software to output a formatted text data product in which the text is formatted in a plurality of lines, wherein the software adds extra duplicate words so that the last word or words of each line also appears as the first word or words of the following line. The software may be arranged to output text such that in certain lines the last group of words of a first line also appears as the first group of words of the following line. The software may be arranged to output text such that in certain lines the last single word of each line also appears as the first word in the following line. The formatted text data product may include a left-hand margin and a body of text comprising said multiplicity of sentences positioned to the right of the left-hand margin and the last word or words of a first line also appear as an isolated word or words within the left hand margin of the following line. (It will be appreciated here that the software could instead be arranged to insert an appropriate (calculated) number of spaces after the first (duplicated) word at the beginning of a given line to give the appearance of a left hand margin, to the right of first (duplicated) word, so that the vast majority of words after the first (duplicated) word on each line are left justified in line with each other). The system may further include a display device and wherein the formatted text data product is displayed on the display device. The software may comprise a) a text input module for receiving input text in digital form b) a text processing module that receives: i) the input text in digital form, and ii) output requirement data including font size data and page width data, and process the input text to produce successive lines of text formatted using the font size data and page width data and to determine the last word or words on a line of text, then inserting such word or words on the next line of text, the successive lines of text thus defining the formatted text data product, and c) a text output module which outputs the formatted text data product produced by the text producing module. The text producing module may analyses the last words of each line and determines whether the last words are part of a compound- word-element and if not inserts the last word only on the next line and if so inserts all of the last words that form the compound-word-module onto the next line. The system may include an electronic data base of compound-word-elements to enable the text producing module to determine whether two or more words form a compound-word-element or not. There is also provided a computer software product for use as the software of the computer system of the fourth embodiment. There is also provided a formatted text data product as produced by a computer system according to the fourth embodiment.

Whilst the present invention has been described and illustrated with reference to particular embodiments, it will be appreciated by those of ordinary skill in the art that the invention lends itself to many different variations not specifically illustrated herein. By way of example only, certain possible variations will now be described.

In the macro of the second embodiment, instead of adding an appropriate number of spaces before the copied text for insertion on the next line, a manual line break could instead be added immediately before the copied text.

Other styles of text, such as table or list may be appropriately converted into connected text by the browser plug-in of the third embodiment. Connected text could be provided from scratch without a source text. A source text could be converted into connected text by means of a non-computerised system, for example with the use partly or wholly of human assistance. In the case of an embodiment of the invention which is applied to text displayed within a window on a visual display associated with a computer, for example within an Internet browser window, the software of the embodiment may be configured so that the resizing of the window causes the software to process the text so displayed in the resized window to be re-processed, preferably automatically, thus ensuring that extra duplicate words are added so that the last word or words of each line also appears as the first word or words of the following line, but removing any duplicate words previously added (before resizing of the window) if the resizing of the window causes such previously added duplicate words to be displayed on the same line.

In other embodiments of the invention, compound word elements may be duplicated as a group only if connected by special punctuation (for example non-breaking spaces or hyphens). As such, a dictionary of such compound words need not be required. In such a case, the phrase "brother in law" (the words "brother", "in" and "law" being separated by standard space characters) if it appears at the end of a line of text would not be repeated as a group of words on the next line.

In a variation, the software may simply deem the text in between two space characters, or between a space and a character or other indication indicating the end of a line or paragraph, as a word (even if the "word" so identified includes punctuation, is hyphenated or includes other non text characters).

Other computer implemented versions of the software could be provided, for example as a stand-alone application for converting text files.

The repeated words, when repeated in the margin, could be right justified in the left hand margin, rather than left-justified. The repeated words could be displayed in a different font / colour.

The embodiments could be applied to non-English text and could be applicable to foreign language text. In the case of, for example, Hebrew text, the direction of reading may be from right to left. The last word of text on a line may therefore be the leftmost word, and therefore the duplication of that last word on the next line would therefore appear on the right-hand side of the page. It will therefore be understood that where herein we refer to "right" or "left", the words left and right can be deemed as swapped over when the invention is applied in the context of a language that is written from right to left. Similarly, in any written language where text is read in a vertical direction, the terms "left" and "right" may be replace by "top" and "bottom" as appropriate.

If the source text is not formatted in lines, then the computer program, in view of character spacing, page width (or display width information) divide the text into successive lines. Such lines may be stored as an array in data.

Source text may be converted into a formatted text product with repeated words, by cutting and pasting (electronically for example) words one at a time into a new document or file. Once a line is populated with words and the next word to be added will cause a new line to be required, a line return may be inserted at the end of the line, and the last word on the line copied and pasted as the first word on the next line. The new document may thus be populated line by line, word by word, in this manner.

Where in the foregoing description, integers or elements are mentioned which have known, obvious or foreseeable equivalents, then such equivalents are herein incorporated as if individually set forth. Reference should be made to the claims for determining the true scope of the present invention, which should be construed so as to encompass any such equivalents. It will also be appreciated by the reader that integers or features of the invention that are described as preferable, advantageous, convenient or the like are optional and do not limit the scope of the independent claims. Moreover, it is to be understood that such optional integers or features, whilst of possible benefit in some embodiments of the invention, may not be desirable, and may therefore be absent, in other embodiments.