Fields allow calculated text, such as a page number, file name, or time and date, to be inserted into a text object and updated when required. Fields are designed to go into printer headers. As far as the content of a text object is concerned, fields are just a sequence of characters. The field data is maintained as a separate part of a plain text object’s data. The CTextField class provides the base for fields.

The field system is extensible: the MTextFieldFactory field factory allows new field types to be added to those already provided.