Exemplo n.º 1
0
 public function draw()
 {
     $currentX = $this->startingX;
     $currentY = $this->startingY;
     $remainingHeight = $this->height;
     foreach ($this->group as $textItem) {
         $multicell = new OOPHPDF_MultiCell($this->pdf);
         $multicell->setWidth($this->width)->setLn(2);
         foreach ($textItem as $textPropName => $textPropVal) {
             $funcName = str_replace(' ', '', ucwords(trim($textPropName)));
             if (method_exists($multicell, 'set' . $funcName)) {
                 call_user_func_array(array($multicell, 'set' . $funcName), array($textPropVal));
             }
         }
         if ($multicell->getHeightAuto() > $remainingHeight) {
             $multicell->setHeight($remainingHeight);
         }
         $multicell->drawAtPosition($currentX, $currentY);
         $currentX = $this->startingX;
         $currentY = $this->pdf->getY() + $this->spacing;
         $remainingHeight = $this->startingY + $this->height - $currentY;
         if ($remainingHeight <= 0) {
             return $this;
         }
     }
     return $this;
 }