|  |  | 14.4 The Ipe style sheet format

## 14.4 The Ipe style sheet format

Style sheets can either be embedded in an Ipe document, or reside in a separate file. Separate files can start with the optional `<?xml>` tag.

The style sheet itself consists of the single element `<ipestyle>`. It takes the optional attribute `name`, which only serves to identify the style sheet informally.

The contents of the style sheet element can consist of the following elements: `template`, `color`, `dashstyle`, `linewidth`, `textsize`, `marksize`, `arrowsize`, `grid`, `angle`, `media`.

The `template` element takes a required attribute `name`, which identifies the template and must be unique in the style sheet. Its contents is a single Ipe object.

All other elements have empty contents and two required attributes, `name` and `value`. `name` defines a symbolic name, `value` an absolute value. The symbolic name must start with a letter 'a' to 'z' or 'A' to 'Z'. The value for the `color` and `dashstyle` elements must be a legal absolute value for the Ipe object attributes of the same name. The value for `linewidth`, `textsize`, `marksize`, `arrowsize`, `grid`, and `angle` must be single real number. The value for `media` must be two integers (width and height in Postscript points, i.e. 1/72 inch), separated by white space.

Note that the symbolic names for `grid`, `angle`, and `media` cannot actually be used by objects in the document--they are only used to fill the grid size, angular snap angle, and page size selectors in the user interface with values.

|  |  | 14.4 The Ipe style sheet format