コード例 #1
0
ファイル: ReportPdfImage.php プロジェクト: tronsmit/webtrees
 /**
  * PDF image renderer
  *
  * @param ReportTcpdf $renderer
  */
 public function render($renderer)
 {
     global $lastpicbottom, $lastpicpage, $lastpicleft, $lastpicright;
     // Check for a pagebreak first
     if ($renderer->checkPageBreakPDF($this->height + 5)) {
         $this->y = $renderer->GetY();
     }
     $curx = $renderer->GetX();
     // If current position (left)set "."
     if ($this->x == ".") {
         $this->x = $renderer->GetX();
     } else {
         $this->x = $renderer->addMarginX($this->x);
         $renderer->SetX($curx);
     }
     if ($this->y == ".") {
         //-- first check for a collision with the last picture
         if (isset($lastpicbottom)) {
             if ($renderer->PageNo() == $lastpicpage && $lastpicbottom >= $renderer->GetY() && $this->x >= $lastpicleft && $this->x <= $lastpicright) {
                 $renderer->SetY($lastpicbottom + 5);
             }
         }
         $this->y = $renderer->GetY();
     } else {
         $renderer->SetY($this->y);
     }
     if ($renderer->getRTL()) {
         $renderer->Image($this->file, $renderer->getPageWidth() - $this->x, $this->y, $this->width, $this->height, "", "", $this->line, false, 72, $this->align);
     } else {
         $renderer->Image($this->file, $this->x, $this->y, $this->width, $this->height, "", "", $this->line, false, 72, $this->align);
     }
     $lastpicpage = $renderer->PageNo();
     $renderer->lastpicpage = $renderer->getPage();
     $lastpicleft = $this->x;
     $lastpicright = $this->x + $this->width;
     $lastpicbottom = $this->y + $this->height;
     // Setup for the next line
     if ($this->line == "N") {
         $renderer->SetY($lastpicbottom);
     }
 }
コード例 #2
0
 /**
  * Write the Footnote text
  * Uses style name "footnote" by default
  *
  * @param ReportTcpdf $pdf
  */
 public function renderFootnote($pdf)
 {
     if ($pdf->getCurrentStyle() != $this->styleName) {
         $pdf->setCurrentStyle($this->styleName);
     }
     $temptext = str_replace("#PAGENUM#", $pdf->PageNo(), $this->text);
     // Set the link to this y/page position
     $pdf->SetLink($this->addlink, -1, -1);
     // Print first the source number
     // working
     if ($pdf->getRTL()) {
         $pdf->writeHTML("<span> ." . $this->num . "</span>", false, false, false, false, "");
     } else {
         $temptext = "<span>" . $this->num . ". </span>" . $temptext;
     }
     // underline «title» part of Source item
     $temptext = str_replace(array('«', '»'), array('<u>', '</u>'), $temptext);
     $pdf->writeHTML($temptext, true, false, true, false, '');
 }