An MLTE file contains text data that uses tag-data pairs to describe the file's contents. Your application can parse an MLTE file by locating the tags and using the tag information to interpret the data associated with that tag. When you write a parser function, you should not assume that the tags occur in a particular sequence, except for the
utxt
tag, which occurs first and defines the file as an MLTE file.
The
utxt
tag is followed by the total length of the tagged data in bytes (that is, everything in the file except the 4-byte word and the caret position). The next block of data contains the file's contents. Text data is represented by characters that are the actual text. Other data (graphics, movies, and sound) embedded in the text data are represented by a single character that indicates the type of data. The actual data for graphics, movies, and sound is included as part of the run information. Note that MLTE does not alter data for embedded objects. It copies the data into the file as is and has no knowledge of the data's format. For example, if the data contains a sound object that is represented by data in the Audio Interchange File Format, your application must know how to interpret AIFF.
In addition to information about each style run information, an MLTE file contains ruler data and cursor position (or selection) data. There is currently no tag for the cursor position data, but this data follows the ruler data, and is currently the last 12 bytes of data in the file.