FPDF печатает MultiCell() рядом
Я искал googled и нашел этот вопрос очень распространенным, но я не могу найти правильный и прямой ответ. Я использую FPDF, и я хочу генерировать таблицы с помощью MultiCell(), так как мне нужно свойство разрыва строки. Tried Cell(), но он не может прочитать разрыв строки.
$col1="PILOT REMARKS\n\n";
$pdf->MultiCell(189, 10, $col1, 1, 1);
$col2="Pilot Name and Signature\n".$name;
$pdf->MultiCell(63, 10, $col2, 1);
$pdf->Ln(0);
$col3="Date Prepared\n".$date;
$pdf->MultiCell(63, 10, $col3, 1);
Но я не могу сгенерировать его должным образом, потому что MultiCell() суммирует результат. Как я могу добиться того, чтобы MultiCell() печатался смежно друг с другом самым простым и легким способом?
Нашел этот аналогичный вопрос, но он не дает четкого ответа. Любая помощь будет оценена. Заранее спасибо.
Ответы
Ответ 1
Попробуйте сохранить координаты X и Y, а затем установите их после записи
$x = $pdf->GetX();
$y = $pdf->GetY();
$col1="PILOT REMARKS\n\n";
$pdf->MultiCell(189, 10, $col1, 1, 1);
$pdf->SetXY($x + 189, $y);
$col2="Pilot Name and Signature\n".$name;
$pdf->MultiCell(63, 10, $col2, 1);
$pdf->Ln(0);
$col3="Date Prepared\n".$date;
$pdf->MultiCell(63, 10, $col3, 1);
Ответ 2
Просто добавьте в ответ Дэнни. Мне нравится сохранять ширину каждого столбца, а затем использовать это при выполнении метода SetXY.
Пример:
$x = $this->x;
$y = $this->y;
$push_right = 0;
$this->MultiCell($w = 100,3,"Column\r\nNumber 1",1,'C',1);
$push_right += $w;
$this->SetXY($x + $push_right, $y);
$this->MultiCell($w = 60,3,"Column\r\nNumber 2",1,'C',1);
$push_right += $w;
$this->SetXY($x + $push_right, $y);
$this->MultiCell(0,3,"Column 3\r\nFilling in the Rest",1,'C',1);
Ответ 3
Вы можете использовать функцию SetXY (x, y) для установки курсора в pdf.
$pdf->SetXY(x,y);
Установите курсор для печати данных в pdf
Где x - значение оси x, а y - значение оси y
Ответ 4
использовать $pdf->Ln(10);
с $pdf->cell();
Пример:
$pdf->cell(100,10,"your content");
$pdf->Ln(10);