Example #1
0
 /**
  * Write row style
  *
  * @param string $type
  */
 private function writeFirstRow(\PhpOffice\PhpWord\Style\Table $style, $type)
 {
     $this->xmlWriter->startElement('w:tblStylePr');
     $this->xmlWriter->writeAttribute('w:type', $type);
     $this->xmlWriter->startElement('w:tcPr');
     if (!is_null($style->getShading())) {
         $styleWriter = new Shading($this->xmlWriter, $style->getShading());
         $styleWriter->write();
     }
     // Borders
     $brdSz = $style->getBorderSize();
     $brdCol = $style->getBorderColor();
     $hasBorders = false;
     for ($i = 0; $i < 6; $i++) {
         if (!is_null($brdSz[$i])) {
             $hasBorders = true;
         }
     }
     if ($hasBorders) {
         $mbWriter = new MarginBorder($this->xmlWriter);
         $mbWriter->setSizes($brdSz);
         $mbWriter->setColors($brdCol);
         $this->xmlWriter->startElement('w:tcBorders');
         $mbWriter->write();
         $this->xmlWriter->endElement();
         // w:tcBorders
     }
     $this->xmlWriter->endElement();
     // w:tcPr
     $this->xmlWriter->endElement();
     // w:tblStylePr
 }
Example #2
0
 /**
  * Write border.
  *
  * @param \PhpOffice\PhpWord\Shared\XMLWriter $xmlWriter
  * @param \PhpOffice\PhpWord\Style\Table $style
  * @return void
  */
 private function writeBorder(XMLWriter $xmlWriter, TableStyle $style)
 {
     if ($style->hasBorder()) {
         $xmlWriter->startElement('w:tblBorders');
         $styleWriter = new MarginBorder($xmlWriter);
         $styleWriter->setSizes($style->getBorderSize());
         $styleWriter->setColors($style->getBorderColor());
         $styleWriter->write();
         $xmlWriter->endElement();
         // w:tblBorders
     }
 }
Example #3
0
 /**
  * Set style value for various special value types
  */
 public function testSetStyleValue()
 {
     $object = new Table();
     $object->setStyleValue('borderSize', 120);
     $object->setStyleValue('cellMargin', 240);
     $object->setStyleValue('borderColor', '999999');
     $this->assertEquals(array(120, 120, 120, 120, 120, 120), $object->getBorderSize());
     $this->assertEquals(array(240, 240, 240, 240), $object->getCellMargin());
     $this->assertEquals(array('999999', '999999', '999999', '999999', '999999', '999999'), $object->getBorderColor());
 }