Подтвердить что ты не робот

Вставка изображения с PHP и FPDF

Я пытаюсь вставить изображение, но не хочу указывать координаты x и y. Возможно ли это?

$pdf->Image($image1, 5, 70, 33.78);

Я хочу иметь возможность указать размер (33.78), но не x и y, чтобы он перемещался в зависимости от содержимого.

$pdf->Write( 70, $reportTitle );
$pdf->Ln( 45 );
$pdf->SetFont( 'Arial', '', 12 );
$pdf->Write( 6, $reportSubtitle );

/**
  Create product 1
**/
$pdf->Ln( 10 );
$pdf->SetFont( 'Arial', '', 12 );
$pdf->Write( 6, $prod1title );
$pdf->Ln( 30 );
$pdf->SetFont( 'Arial', '', 10 );
$pdf->Write( 5, $prod1sub );
$pdf->Ln( 30 );
$pdf->Image($image1, 5, 70, 33.78);

Вышеупомянутый код я использую. Если $reportSubtitle - две или три строки, он подталкивает $prod1title и $$ prod1sub вниз и неизбежно под фиксированным изображением. Нет ли способа заставить изображение действовать так, как название продукта и субтитры, и быть нажатым, пока еще объявляете размер?

4b9b3361

Ответ 1

Я понял это, и это действительно довольно прямо.

Задайте свою переменную:

$image1 = "img/products/image1.jpg";

Затем переместите ячейку, поместите ее, а не устанавливайте, где находится изображение, используйте созданную выше переменную со следующим:

$this->Cell( 40, 40, $pdf->Image($image1, $pdf->GetX(), $pdf->GetY(), 33.78), 0, 0, 'L', false );

Теперь ячейка будет перемещаться вверх и вниз с содержимым, если другие ячейки вокруг нее перемещаются.

Надеюсь, это поможет другим в одной лодке.

Ответ 2

Вы можете использовать $pdf->GetX() и $pdf->GetY(), чтобы получить текущие cooridnates и использовать их для вставки изображения.

$pdf->Image($image1, 5, $pdf->GetY(), 33.78);

или даже

$pdf->Image($image1, 5, null, 33.78);

(хотя в первом случае вы можете добавить число, чтобы создать немного пробела)

$pdf->Image($image1, 5, $pdf->GetY() + 5, 33.78);

Ответ 3

$image="img_name.jpg";
$pdf =new FPDF();
$pdf-> AddPage();
$pdf-> SetFont("Arial","B",10);
$pdf-> Image('profileimage/'.$image,100,15,35,35);

Ответ 4

Вы не можете рассматривать PDF как HTML-документ. Изображения не могут "плавать" внутри документа и обтекать их, или течь окружающим текстом. FPDF позволяет встраивать html в текстовый блок, но только потому, что он анализирует теги и заменяет <i> и <b> и т.д. Эквивалентными командами Postscript. Это не достаточно умно, чтобы динамически разместить изображение.

Другими словами, вы должны указать координаты (и если вы этого не сделаете, текущие координаты местоположения будут использоваться в любом случае).