예제 #1
0
 public function testCreateProperty()
 {
     $gen = new ezcDocumentOdtStyleTextPropertyGenerator($this->styleConverters);
     $parent = $this->getDomElementFixture();
     $gen->createProperty($parent, array('font-name' => new ezcDocumentPcssStyleStringValue('Font Name')));
     $this->assertPropertyExists(ezcDocumentOdt::NS_ODT_STYLE, 'text-properties', array(array(ezcDocumentOdt::NS_ODT_STYLE, 'font-name')), $parent);
 }
예제 #2
0
 /**
  * Creates the styles with $styleAttributes for the given $odtElement.
  * 
  * @param ezcDocumentOdtStyleInformation $styleInfo 
  * @param DOMElement $odtElement 
  * @param array $styleAttributes 
  * @return void
  */
 public function createStyle(ezcDocumentOdtStyleInformation $styleInfo, DOMElement $odtElement, array $styleAttributes)
 {
     $styleName = $this->getUniqueStyleName($odtElement->localName);
     $style = $styleInfo->automaticStyleSection->appendChild($styleInfo->automaticStyleSection->ownerDocument->createElementNS(ezcDocumentOdt::NS_ODT_STYLE, 'style:style'));
     $style->setAttributeNS(ezcDocumentOdt::NS_ODT_STYLE, 'style:family', 'text');
     $style->setAttributeNS(ezcDocumentOdt::NS_ODT_STYLE, 'style:name', $styleName);
     $odtElement->setAttributeNS(ezcDocumentOdt::NS_ODT_TEXT, 'text:style-name', $styleName);
     $this->textPropertyGenerator->createProperty($style, $styleAttributes);
 }
예제 #3
0
파일: paragraph.php 프로젝트: bmdevel/ezc
 /**
  * Creates the styles with $styleAttributes for the given $odtElement.
  * 
  * @param ezcDocumentOdtStyleInformation $styleInfo 
  * @param DOMElement $odtElement 
  * @param array $styleAttributes 
  */
 public function createStyle(ezcDocumentOdtStyleInformation $styleInfo, DOMElement $odtElement, array $styleAttributes)
 {
     $styleName = $this->getUniqueStyleName($odtElement->localName);
     $style = $styleInfo->automaticStyleSection->appendChild($styleInfo->automaticStyleSection->ownerDocument->createElementNS(ezcDocumentOdt::NS_ODT_STYLE, 'style:style'));
     $style->setAttributeNS(ezcDocumentOdt::NS_ODT_STYLE, 'style:family', 'paragraph');
     $style->setAttributeNS(ezcDocumentOdt::NS_ODT_STYLE, 'style:name', $styleName);
     $odtElement->setAttributeNS(ezcDocumentOdt::NS_ODT_TEXT, 'text:style-name', $styleName);
     // Setting the margins in a list contained paragraph results in
     // overwriting the list margin. Therefore we skip paragraph property
     // generation completely here.
     // @TODO: Does this have any strange effects? Find a nicer solution?
     if ($odtElement->parentNode->localName !== 'list-item') {
         $this->paragraphPropertyGenerator->createProperty($style, $styleAttributes);
     }
     $this->textPropertyGenerator->createProperty($style, $styleAttributes);
 }