2012-12-03 57 views
0

我有一個包含寬度爲30列的textarea的窗體。這個textarea和其他一些文本應該通過FPDF以.pdf的形式顯示。 textarea的顯示是這樣的:在.pdf中顯示textareas的問題

$text=$row->fehlerbeschreibung; 
$text=str_replace(array("\r\n", "\n", "\r"),"",$text); 
$pdf->MultiCell(0,6,$text); 

你看,我想忽略其發生的換行符由於30周的cols寬度。 但是,無論何時按Enter鍵創建換行符,都應該顯示換行符。 換行符編碼有什麼區別可以避免這個問題?或者你知道另一種方式?

回答

0

換行符按下時,才能創建輸入所以你應該通過

$array = explode("\n",$string); 

然後通過這樣的陣列循環剛剛拆分;

foreach($array as $key => $item) { 
$pdf->MultiCell(0,6,$item); 
$pdf->Ln(); 
} 
0

考慮你的textarea字段是歷史。所以,你可以做的是:

$lengthofhistory = strlen($_SESSION['history']); 
$pdf- >SetFont('Helvetica','',10); $start = 0; $space = 0; 
for($i=0;$i<=$lengthofhistory;$i++) 
{ 
$char = substr($_SESSION['history'], $i, 1); 
if($char == ' ') { $space = $space + 1; 
if($space == 18) { $substring = substr($_SESSION['history'],$start,$i- $start); 
$pdf->Cell(0,5,$substring,0,1,'L'); $start = $i+1; $space = 0; } } 
} 
$substring = substr($_SESSION['history'],$start,$lengthofcomplaints-$start); 
$pdf->Cell(0,5,$substring,0,1,'L'); 
1

簡單地用多節

例子:

$this->MultiCell(60,5,$Variable);