New Features and Update Notes
TX Text Control 15.0 provides several new features described in the following table.
Arranging Text in Columns
The text of a document can now be arranged in columns. The number of columns is an attribute of a document section, so that different numbers of columns can be used in the same document. Depending on where a section starts, the number of columns can change everywhere on a page. Further attributes are the widths of the columns and the distance between the columns that can individually be changed. In an automatic mode the width of the columns are calculated from the page width, which is the default setting. An end-user can use an additional tab of the Page Setup dialog box to make column settings and the TX TextControl ruler bar shows the columns' widths and the distances between the columns. The SHIFT-CTRL-RETURN keyboard key combination inserts a break character which forces that text is continued in the next column. The SectionFormat class has been extended with several properties to alter columns programatically.
Structured Numbered Lists
TX Text Control supports now structured numbered lists. A structured list displays for each level its list number and additionally the list numbers of the higher levels. The text in front and behind the list number is also displayed for all higher levels. The text in front and behind the list number can now be longer than one character. The ListFormat.Type property has been extended with the ListType.Structured setting to support such lists. The ListFormat.TextAfterNumber and ListFormat.TextBeforeNumber properties have been added to support text longer than one character in front and behind the list numbers.
Importing Text from PDF Files
TX Text Control can extract the text from PDF files and load it in a TXTextControl document. The StreamType.AdobePDF member can be used with all TextControl.Load methods to import the text. Adobe PDF format is a low-level output format. In most cases in contains only geometrical information about the single characters. A high-level document structure specifying paragraphs, tables, sections and styles is not available. The TXTextControl PDF import filter can either handle each line of text as a single paragraph or it can generate paragraphs from the text flow. Another mode generates a text frame for each block of text. These frames are placed at the same position as in the PDF document. The LoadSettings.PDFImportSettings property can be used to specify the required behavior. These features will be enhanced in future TXTextControl versions.
Programming Paragraphs
To provide a better support for programming paragraphs a Paragraphs collection has been implemented. This collection is seperately available for the main text of the document and for headers and footers and text frames. For each Paragraph all formatting attributes can be programmed with a ParagraphFormat and a ListFormat object. Further properties are available for the first character and the first line of a paragraph, for the number of characters and lines and for the formatting style. A Text property and several Save methods can be used to get the paragraph's contents. The ListNumber and the ListNumberText properties provide further support for numbered lists.
Pasting Data from the Clipboard
TX Text Control provides an interface that enables a programmer to change the default behaviour for pasting data from the clipboard. The new TextControl.GetClipboardFormats method and an additional version of the TextControl.Paste method have been implemented to support this feature.
Page Images
TX Text Control provides an image of a page's contents. The image is either an enhanced metafile or a bitmap in screen resolution. The new Page.GetImage method can be used to get the image.
ASP.NET DocumentViewer
This new cross-browser compatible ASP.NET component is designed to view documents on the web. In combination with the DocumentServer.DocumentController, all file types supported by TX Text Control can be loaded and displayed in this WYSIWYG viewer. Additionally, MS Word compatible form fields can be completed using the DocumentServer.Web.DocumentViewer. Also, snapshots of the currently loaded document can be taken for further processing and the user input can be saved separately as well.