setPhpWord($phpWord); $this->parts = array('Header', 'Document'); foreach ($this->parts as $partName) { $partClass = get_class($this) . '\\Part\\' . $partName; if (class_exists($partClass)) { /** @var \PhpOffice\PhpWord\Writer\RTF\Part\AbstractPart $part Type hint */ $part = new $partClass(); $part->setParentWriter($this); $this->writerParts[strtolower($partName)] = $part; } } } /** * Save content to file. * * @param string $filename * @throws \PhpOffice\PhpWord\Exception\Exception */ public function save($filename = null) { $this->writeFile($this->openFile($filename), $this->getContent()); } /** * Get content * * @return string * @since 0.11.0 */ private function getContent() { $content = ''; $content .= '{'; $content .= '\rtf1' . PHP_EOL; $content .= $this->getWriterPart('Header')->write(); $content .= $this->getWriterPart('Document')->write(); $content .= '}'; return $content; } /** * Get font table. * * @return array */ public function getFontTable() { return $this->getWriterPart('Header')->getFontTable(); } /** * Get color table. * * @return array */ public function getColorTable() { return $this->getWriterPart('Header')->getColorTable(); } /** * Get last paragraph style. * * @return mixed */ public function getLastParagraphStyle() { return $this->lastParagraphStyle; } /** * Set last paragraph style. * * @param mixed $value */ public function setLastParagraphStyle($value = '') { $this->lastParagraphStyle = $value; } }