2011-01-10 3 views
2

Я хотел бы добавить «imagebox» поле, в котором содержится изображение и культуры, превышающие значение изображения, которое находится за пределами этого окна. что-то вроде этого: alt texttcpdf imagebox и обрезка

Я не уверен, как это сделать, если это возможно.

ответ

2

Вы можете обрезать изображение с помощью php, сохранить его как файл temp_file, передать его в tcpfd, а затем удалить его после выполнения рендеринга pdf. Другой вариант - использовать html/css для размещения элемента html над изображением, но, как мы все знаем, tcpdf не слишком много знает о css, поэтому я не знаю, будет ли он работать.

+0

Спасибо! Я нашел imagecopyresampled ведьму, я думаю, решит мою проблему. – eldamar

4

Фактически вы можете сделать это с помощью Clipping. Ниже линия будет показывать фотографию 200x300:

$pdf->Image('photo.JPG', 100, 100, 200, 300, '', true, '', false, 300); 

Чтобы отсекать его вам нужно:

$pdf->StartTransform(); 
$pdf->Rect(100, 100, 200, 300, 'CNZ'); //Clipping mask (CNZ style makes your day) 
$pdf->Image('photo.JPG', 50, 50, 300, 400, '', true, '', false, 300); 
//this would actually cut off a 50 units a in each direction. 
$pdf->StopTransform(); 
+0

Ничего себе, спасибо. Добавлю, что вы можете даже обрезать повернутые изображения '$ pdf-> StartTransform(); $ pdf-> Повернуть (15, $ centerXmm, $ centerYmm); $ pdf-> Rect (0, 0, 150, 300, 'CNZ'); $ pdf-> Изображение ('@'.$ imgdata, $ imageLeftMM, $ imageTopMM, $ imageWidthMM, $ imageHeightMM); $ pdf-> StopTransform(); ' –

Смежные вопросы