paged.IDML Reference
Frames & paths

Frames & paths

The IDML page-item family — text frames, rectangles, ovals, lines, polygons and groups — and the skeleton of placement, outline and paint they all share.

Tier: IntermediateIntermediateIIexplanation

Everything visible on an IDML page is a page item: one of a small family of elements that share one skeleton.

In short A page item is the element that puts something on a page: body copy, a photo, a tinted panel, a rule, a logo. The family is small: TextFrame, Rectangle, Oval, GraphicLine, Polygon and Group. Page items are children of a Spread, of a Group, or of a frame they were pasted into. Each one has a Self id, an ItemTransform that places it in its parent, a PathGeometry outline, and paint and style attributes. Learn the skeleton once and every member reads the same way.

One family, two jobs

  • Frames that hold text. A TextFrame names a story in ParentStory, and the story's text flows into the frame's outline.
  • Frames that hold graphics, or nothing. A Rectangle, Oval, GraphicLine or Polygon is a vector shape. With a fill it is a panel; with a placed <Image> (or EPS, PDF) inside it is a picture frame; with neither it is an outline.

The element name tells the current role, and ContentType (TextType, GraphicType, Unassigned) says the same thing as an attribute.

The members

ElementWhat it is
TextFrameA frame bound to a story by ParentStory.
RectangleThe workhorse: panels, picture frames, empty boxes.
OvalAn ellipse, drawn from its four-anchor path.
GraphicLineA two-point open path: a rule, with optional line ends.
PolygonAny other outline: stars, curves, compound shapes, pen paths.
GroupA container whose members move, and can be made transparent, as one.

The shared skeleton

Strip any member down and the same parts remain:

  • a Self id, by which threading, groups and overrides refer to it;
  • an ItemTransform that places it in its parent: the spread, a group, or a host frame;
  • a PathGeometry in <Properties> that gives its outline, in its own space;
  • paint: FillColor, FillTint, StrokeColor, StrokeWeight, StrokeType and more;
  • an AppliedObjectStyle that supplies whatever the item leaves unset;
  • ItemLayer, the layer it is on;
  • Visible, Locked and Name: an item can be hidden on its own, independently of its layer; locked against editing; and given a name ($ID/ means none). Scripts and plugins can attach key/value metadata as <Properties><Label>.

Frames inside frames

A Rectangle, Oval or Polygon can hold another page item as a child element. InDesign writes this for Paste Into, and every placed image is the same shape: an <Image> inside its frame. The child's ItemTransform is relative to the host, and the host's outline clips the child. Supported · untested

Where to go next

  • Page-item types: the attributes of each member.
  • Text frames: TextFramePreference, with columns, insets, vertical justification, the first baseline and auto-sizing.
  • Groups: membership, composed transforms, group transparency and layers.
  • Placed pictures: images & graphics.

Frequently asked questions

What is a page item in IDML? Any element that puts content on a page: TextFrame, Rectangle, Oval, GraphicLine, Polygon or Group. Each carries its own placement, outline and paint.

What is the difference between a text frame and a graphic frame? A TextFrame names a story in ParentStory and holds its text. A graphic frame is a shape that is filled, holds a placed image, or is empty.

Can a page item be hidden without hiding its layer? Yes. Visible="false" on the item hides that item alone. A hidden layer hides every item on it.

Where do page items live in the package? In Spreads/Spread_*.xml and MasterSpreads/MasterSpread_*.xml, as children of the spread, of a group, or of a frame. Anchored objects live in the story instead.

On this page