_elementCollection = array(); // Set paragraph style if (is_array($styleParagraph)) { $this->_styleParagraph = new PHPWord_Style_Paragraph(); foreach ($styleParagraph as $key => $value) { if (substr($key, 0, 1) != '_') { $key = '_' . $key; } $this->_styleParagraph->setStyleValue($key, $value); } } else { $this->_styleParagraph = $styleParagraph; } } /** * Add a Text Element * * @var string $text * @var mixed $styleFont * @return PHPWord_Section_Text */ public function addText($text = null, $styleFont = null) { if (!PHPWord_Shared_String::IsUTF8($text)) { $text = utf8_encode($text); } $text = new PHPWord_Section_Text($text, $styleFont); $this->_elementCollection[] = $text; return $text; } /** * Add a Link Element * * @param string $linkSrc * @param string $linkName * @param mixed $styleFont * @return PHPWord_Section_Link */ public function addLink($linkSrc, $linkName = null, $styleFont = null) { $linkSrc = utf8_encode($linkSrc); if (!is_null($linkName)) { $linkName = utf8_encode($linkName); } $link = new PHPWord_Section_Link($linkSrc, $linkName, $styleFont); $rID = PHPWord_Media::addSectionLinkElement($linkSrc); $link->setRelationId($rID); $this->_elementCollection[] = $link; return $link; } /** * Add a Image Element * * @param string $imageSrc * @param mixed $styleFont * @return PHPWord_Section_Image */ public function addImage($imageSrc, $style = null) { $image = new PHPWord_Section_Image($imageSrc, $style); if (!is_null($image->getSource())) { $rID = PHPWord_Media::addSectionMediaElement($imageSrc, 'image'); $image->setRelationId($rID); $this->_elementCollection[] = $image; return $image; } else { trigger_error('Source does not exist or unsupported image type.'); } } /** * Add a Text Break * * @param int $count */ public function addTextBreak($count = 1) { for ($i=1; $i<=$count; $i++) { $this->_elementCollection[] = new PHPWord_Section_TextBreak(); } } /** * Create a new Footnote Element * * @param string $text * @return PHPWord_Section_Footnote */ public function createFootnote($styleParagraph = null) { $footnote = new PHPWord_Section_Footnote($styleParagraph); $refID = PHPWord_Footnote::addFootnoteElement($footnote); $footnote->setReferenceId($refID); $this->_elementCollection[] = $footnote; return $footnote; } /** * Get TextRun content * * @return string */ public function getElements() { return $this->_elementCollection; } /** * Get Paragraph style * * @return PHPWord_Style_Paragraph */ public function getParagraphStyle() { return $this->_styleParagraph; } }