public function format(Node $node, Document $document) { $node->makeAttributesSnapshot(array('height', 'width')); $boundary = $node->getBoundary(); if ($boundary->isClosed()) { return; } $parent = $node->getParent(); list($parentX, $parentY) = $parent->getStartDrawingPoint(); $startX = $node->getMarginLeft() + $parentX; $startY = $parentY - $node->getMarginTop(); $this->setNodesPosition($node, $startX, $startY); $boundary->setNext($startX, $startY); }