コード例 #1
0
 /**
  */
 public function testUpdate()
 {
     $style1 = new FillStyle();
     $style2 = new FillStyle('green', 0.6);
     $style1->update($style2);
     $this->assertSame(0.6, $style1->getOpacity());
     $this->assertNotNull($style1->getColor());
     $this->assertSame('green', $style1->getColor()->__toString());
     // test independence of style1 and style2
     $style1->setOpacity(0.3);
     $this->assertSame(0.3, $style1->getOpacity());
     $this->assertSame(0.6, $style2->getOpacity());
 }
コード例 #2
0
 /**
  * @param ZendPage $page
  * @param FillStyle $fillStyle
  * @param float|null $opacity
  */
 private function setFillStyle(ZendPage $page, FillStyle $fillStyle, $opacity = null)
 {
     $page->setFillColor($this->getZendColor($fillStyle->getColor()));
     if ($opacity !== null) {
         $page->setAlpha($opacity * $fillStyle->getOpacity());
     }
 }
コード例 #3
0
 /**
  * @param SimpleXMLElement $element
  * @param FillStyle $fillStyle
  */
 private function addFillStyle(SimpleXMLElement $element, FillStyle $fillStyle)
 {
     if ($fillStyle->isVisible()) {
         $element->addAttribute("fill", $fillStyle->getColor());
         $element->addAttribute("fill-opacity", $fillStyle->getOpacity());
         $element->addAttribute("fill-rule", "evenodd");
     } else {
         $element->addAttribute("fill", "none");
     }
 }