TOCStyle = new TOCStyle(); if (!is_null($tocStyle) && is_array($tocStyle)) { foreach ($tocStyle as $key => $value) { $this->TOCStyle->setStyleValue($key, $value); } } if (!is_null($fontStyle)) { if (is_array($fontStyle)) { $this->fontStyle = new Font(); foreach ($fontStyle as $key => $value) { $this->fontStyle->setStyleValue($key, $value); } } else { $this->fontStyle = $fontStyle; } } $this->minDepth = $minDepth; $this->maxDepth = $maxDepth; } /** * Get all titles * * @return array */ public function getTitles() { if (!$this->phpWord instanceof PhpWord) { return array(); } $titles = $this->phpWord->getTitles()->getItems(); foreach ($titles as $i => $title) { $depth = $title->getDepth(); if ($this->minDepth > $depth) { unset($titles[$i]); } if (($this->maxDepth != 0) && ($this->maxDepth < $depth)) { unset($titles[$i]); } } return $titles; } /** * Get TOC Style * * @return \PhpOffice\PhpWord\Style\TOC */ public function getStyleTOC() { return $this->TOCStyle; } /** * Get Font Style * * @return \PhpOffice\PhpWord\Style\Font */ public function getStyleFont() { return $this->fontStyle; } /** * Set max depth * * @param int $value */ public function setMaxDepth($value) { $this->maxDepth = $value; } /** * Get Max Depth * * @return int Max depth of titles */ public function getMaxDepth() { return $this->maxDepth; } /** * Set min depth * * @param int $value */ public function setMinDepth($value) { $this->minDepth = $value; } /** * Get Min Depth * * @return int Min depth of titles */ public function getMinDepth() { return $this->minDepth; } }