2017-10-28 2 views
0

Ich benutze TCPDF und ich muss ein Bild entsprechend den Koordinaten der unteren linken Ecke des Bildes platzieren.tcpdf Bild nach Koordinaten der unteren linken Ecke setzen

TCPDFs Bild() -Methode verwendet die obere linke Ecke als Ankerpunkt, und ich finde keine Möglichkeit, dies zu ändern:

Image($file, $x = '', $y = '', $w = 0, $h = 0, $type = '', $link = '', $align = '', $resize = false, $dpi = 300, $palign = '', $ismask = false, $imgmask = false, $border = 0, $fitbox = false, $hidden = false, $fitonpage = false, $alt = false, $altimgs = array()) 

Was ich tun konnte, ist die y Größe des Bildes zu bestimmen und ziehe die y-Größe des Bildes von meiner gegebenen y-Koordinate der unteren linken Ecke ab. Aber ich weiß auch nicht, wie man die Bildgröße vor dem Platzieren des Bildes bekommt.

Antwort

0

Wenn Sie die y-Koordinate der unteren linken Ecke angegeben haben, führen Sie zuerst die image-Methode mit einem $ y-Wert und die Eigenschaft $ hidden auf true aus. Verwenden Sie dann die Methode getImageRBY(), um die untere y-Koordinate des ausgeblendeten Bildes abzurufen. Ziehen Sie den $ y-Wert von der Koordinate ab, die Sie von getImageRBY() erhalten haben, und Sie erhalten die Höhe des Bildes.

dann die Höhe des Bildes von Ihrem Boden abziehen y-Koordinate und Sie haben die $ y Wert der Bild() -Methode das Bild eingefügt werden muss:

// my bottom left coordinate of the image 
$my_bottom_y_coordinate = 'somevalue'; 

// This is just to calculate the height 
$dummy_y = 'somedummyvalue'; 

// Run the Image function with $hidden set to true, so the image won't be shown. 
$tcpdf->Image($file, $x, $dummy_y, $w, $h, $type, $link, $align, $resize, $dpi, $palign, $ismask, $imgmask, $border, $fitbox, TRUE, $fitonpage, $alt, $altimgs); 

// get the bottom y-coordinate of the dummy image and deduct it from the 
// $dummy_y variable (which was the upper y coordinate of the dummy image) to retrieve the height 
$height = $tcpdf->getImageRBY() - $dummy_y; 

// deduct the height from the given bottom y coordinate you really want to use. This yields the upper y coordinate you need for the image function. 
$y = $my_bottom_y_coordinate - $height; 

// run the Image() method again this time with hidden false so the image is actually placed on the pdf page 
$tcpdf->Image($file, $x, $y, $w, $h, $type, $link, $align, $resize, $dpi, $palign, $ismask, $imgmask, $border, $fitbox, FALSE, $fitonpage, $alt, $altimgs); 
Verwandte Themen