_documentProperties = new DocumentProperties(); $this->_defaultFontName = self::DEFAULT_FONT_NAME; $this->_defaultFontSize = self::DEFAULT_FONT_SIZE; } /** * @return PhpOffice\PhpWord\DocumentProperties */ public function getDocumentProperties() { return $this->_documentProperties; } /** * @param PhpOffice\PhpWord\DocumentProperties $documentProperties * @return PhpOffice\PhpWord */ public function setDocumentProperties(DocumentProperties $documentProperties) { $this->_documentProperties = $documentProperties; return $this; } /** * @param PhpOffice\PhpWord\Section\Settings $settings * @return PhpOffice\PhpWord\Section */ public function createSection($settings = null) { $section = new Section(\count($this->_sections) + 1, $settings); $this->_sections[] = $section; return $section; } /** * @return string */ public function getDefaultFontName() { return $this->_defaultFontName; } /** * @param string $fontName */ public function setDefaultFontName($fontName) { $this->_defaultFontName = $fontName; } /** * @return string */ public function getDefaultFontSize() { return $this->_defaultFontSize; } /** * @param int $fontSize */ public function setDefaultFontSize($fontSize) { $this->_defaultFontSize = $fontSize; } /** * Set default paragraph style definition to styles.xml * * @param array $styles Paragraph style definition */ public function setDefaultParagraphStyle($styles) { Style::setDefaultParagraphStyle($styles); } /** * Adds a paragraph style definition to styles.xml * * @param $styleName string * @param $styles array */ public function addParagraphStyle($styleName, $styles) { Style::addParagraphStyle($styleName, $styles); } /** * Adds a font style definition to styles.xml * * @param $styleName string * @param $styles array */ public function addFontStyle($styleName, $styleFont, $styleParagraph = null) { Style::addFontStyle($styleName, $styleFont, $styleParagraph); } /** * Adds a table style definition to styles.xml * * @param $styleName string * @param $styles array */ public function addTableStyle($styleName, $styleTable, $styleFirstRow = null) { Style::addTableStyle($styleName, $styleTable, $styleFirstRow); } /** * Adds a heading style definition to styles.xml * * @param $titleCount int * @param $styles array */ public function addTitleStyle($titleCount, $styleFont, $styleParagraph = null) { Style::addTitleStyle($titleCount, $styleFont, $styleParagraph); } /** * Adds a hyperlink style to styles.xml * * @param $styleName string * @param $styles array */ public function addLinkStyle($styleName, $styles) { Style::addLinkStyle($styleName, $styles); } /** * @return PhpOffice\PhpWord\Section[] */ public function getSections() { return $this->_sections; } /** * @param string $filename Fully qualified filename. * @return PhpOffice\PhpWord\Template * @throws PhpOffice\PhpWord\Exceptions\Exception */ public function loadTemplate($filename) { if (\file_exists($filename)) { return new Template($filename); } else { throw new Exception("Template file {$filename} not found."); } } }