The drawing container contains all per-slide/sheet types of information, including the shapes themselves. With a few exceptions, shapes are stored hierarchically according to how they've been grouped (through use of the Draw/Group command). For normal shapes, there is a special parent group shape called the patriarch that contains all of the top-level shapes (which in turn may contain other shapes). The patriarch is always the first msofbtSpgrContainer in the drawing container.
A few kinds of shapes are stored separately from the patriarch. The background shape, if there is one, is saved in its own msofbtSpContainer after the patriarch and its children. Additionally, if undo information is being saved and there are deleted shapes that could be brought back via Undo, the deleted shapes are saved. Note that there is no patriarch for the deleted shapes, so the top-level deleted shapes are saved separately into the drawing container. (Deleted groups still contain their children, though.)
Record Type | Condition | Comments |
msofbtDg | Always. | Basic drawing information. |
msofbtRegroupItems | Shapes have been ungrouped. | Mappings to reconstitute groups. |
msofbtSpgrContainer | Always. | Patriarch shape, with all non-background non-deleted shapes inside it. |
msofbtSpContainer with fBackground bit set in the FSP (see below). | Application uses a background shape (currently Word and PowerPoint only). | Special shape used as background of the document, e.g. the background texture of a Web page. |
Other msofbtSpContainers and msofbtSpgrContainers | Undo is being saved, and there are deleted shapes in the drawing. | Shapes that have been deleted but that could be brought back via Undo. |
msofbtSolverContainer | There are rules in the drawing. | Rules governing shapes in the drawing. |
msofbtColorScheme | The application uses a color scheme. | Only present in the clipboard format. |