/** * Calculates and returns the height of rows, added by the page break callback. * @return int */ private function _getPageBreakCallbackHeight() { if ($this->pageBreakCallbackHeight !== null) { return $this->pageBreakCallbackHeight; } $table = $this->getTable(); if (!($callback = $table->getPageBreakCallback())) { return $this->pageBreakCallbackHeight = 0; } $table->setRows(array()); $callback($table); $numberOfNewRows = count($table->getRows()); $this->pageBreakCallbackHeight = 0; if ($numberOfNewRows > 0) { $converter = new self($table, $this->cacheDir); $converter->compile(); // merge row heights foreach ($converter->_getRowHeights() as $height) { $this->pageBreakCallbackHeight += $height; } } return $this->pageBreakCallbackHeight; }