Added support for styling in lines
This commit is contained in:
parent
a53f7ff9c9
commit
4611333ee6
@ -231,14 +231,10 @@ class Segment implements IteratorAggregate, Countable
|
||||
//throw new SegmentException("var $key not found in {$this->getName()}");
|
||||
}
|
||||
|
||||
$value=$this->odf->htmlToUTFAndPreOdf($value);
|
||||
$tag = $this->odf->getConfig('DELIMITER_LEFT') . $key . $this->odf->getConfig('DELIMITER_RIGHT');
|
||||
|
||||
$value = $encode ? htmlspecialchars($value) : $value;
|
||||
$value = ($charset == 'ISO-8859') ? utf8_encode($value) : $value;
|
||||
|
||||
$value=$this->odf->preOdfToOdf($value);
|
||||
|
||||
$this->vars[$this->odf->getConfig('DELIMITER_LEFT') . $key . $this->odf->getConfig('DELIMITER_RIGHT')] = $value;
|
||||
$this->vars[$tag] = $this->odf->convertVarToOdf($value, $encode, $charset);
|
||||
|
||||
return $this;
|
||||
}
|
||||
/**
|
||||
|
||||
@ -141,7 +141,23 @@ class Odf
|
||||
//}
|
||||
}
|
||||
|
||||
$this->vars[$tag] = $this->convertVarToOdf($value, $encode, $charset);
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Replaces html tags in odt tags and returns a compatible string
|
||||
* @param string $key Name of the variable within the template
|
||||
* @param string $value Replacement value
|
||||
* @param bool $encode If true, special XML characters are encoded
|
||||
* @param string $charset Charset
|
||||
* @return string
|
||||
*/
|
||||
public function convertVarToOdf($value, $encode = true, $charset = 'ISO-8859')
|
||||
{
|
||||
$value = ($charset == 'ISO-8859') ? utf8_encode($value) : $value;
|
||||
$convertedValue = $value;
|
||||
|
||||
// Check if the value includes html tags
|
||||
if ($this->_hasHtmlTag($value) === true) {
|
||||
@ -155,7 +171,7 @@ class Odf
|
||||
'<style:style style:name="supText" style:family="text"><style:text-properties style:text-position="super 58%" /></style:style>'
|
||||
);
|
||||
|
||||
$this->vars[$tag] = $this->_replaceHtmlWithOdtTag($this->_getDataFromHtml($value), $customStyles, $fontDeclarations);
|
||||
$convertedValue = $this->_replaceHtmlWithOdtTag($this->_getDataFromHtml($value), $customStyles, $fontDeclarations);
|
||||
|
||||
foreach ($customStyles as $key => $val) {
|
||||
array_push($automaticStyles, '<style:style style:name="customStyle' . $key . '" style:family="text">' . $val . '</style:style>');
|
||||
@ -179,9 +195,9 @@ class Odf
|
||||
}
|
||||
$this->contentXml = str_replace('</office:font-face-decls>', $fonts . '</office:font-face-decls>', $this->contentXml);
|
||||
}
|
||||
else $this->vars[$tag] = preg_replace('/(\r\n|\r|\n)/i', "<text:line-break/>", $value);
|
||||
|
||||
return $this;
|
||||
else $convertedValue = preg_replace('/(\r\n|\r|\n)/i', "<text:line-break/>", $value);
|
||||
|
||||
return $convertedValue;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Loading…
Reference in New Issue
Block a user