0

請求書発行用のテーブルを含む PDF 生成ページを作成しています。FPDF を使用しています。

最初の列の高さに基づいて、各行のセルの高さを変更しようとしています$column_item_name。この理由は、アイテムの説明を名前と同じフィールドに追加でき、残りの行が破棄されないようにするためです。

コンセプトは理解できたと思います。セルの GetY を変数に設定し、変数を高さとして使用しますが、まだ機能していないため、何かが欠けているようです。残念ながら、ロールバックする必要があったため、試したもののコピーはありません。

テーブルの現在のコード:

//First create each Field Name
//Gray color filling each Field Name box
$pdf->SetFillColor(232,232,232);
//Bold Font for Field Name
$pdf->SetFont('Arial','B',11);
$pdf->SetY($Y_Fields_Name_position);
$pdf->SetX(10);
$pdf->Cell(100,6,'Description',1,0,'L',1);
$pdf->SetX(110);
$pdf->Cell(30,6,'Rate',1,0,'L',1);
$pdf->SetX(140);
$pdf->Cell(30,6,'Quantity',1,0,'R',1);
$pdf->SetX(170);
$pdf->Cell(30,6,'Price',1,0,'R',1);
$pdf->Ln();


//Now show the 4 columns
$pdf->SetFont('Arial','',10);
$pdf->SetY($Y_Table_Position);
$pdf->SetX(10);
$pdf->MultiCell(100,6,$column_item_name,1);
$pdf->SetY($Y_Table_Position);
$pdf->SetX(110);
$pdf->MultiCell(30,6,$column_unit_price,1,'R');
$pdf->SetY($Y_Table_Position);
$pdf->SetX(140);
$pdf->MultiCell(30,6,$column_quantity,1,'R');
$pdf->SetY($Y_Table_Position);
$pdf->SetX(170);
$pdf->MultiCell(30,6,$column_total_price,1,'R');
$pdf->SetX(140);
$pdf->MultiCell(30,6,'Total (exc VAT)',1,'R');
$pdf->SetY($Y_Table_Position + ($number_of_products * 6));
$pdf->SetX(170);
$pdf->MultiCell(30,6,'£ '.$total,1,'R');
$pdf->SetX(140);
$pdf->MultiCell(30,6,$vat3,1,'R');
$pdf->SetY($Y_Table_Position + (($number_of_products + 1) * 6));
$pdf->SetX(170);
$pdf->MultiCell(30,6,'£ '.$vat2,1,'R');
$pdf->SetX(140);
$pdf->MultiCell(30,6,'Total (inc VAT)',1,'R');
$pdf->SetY($Y_Table_Position + (($number_of_products + 2) * 6));
$pdf->SetX(170);
$pdf->MultiCell(30,6,'£ '.$total_inc_vat,1,'R');

アドバイスをいただければ幸いです。

敬具、

n00bstacker

4

1 に答える 1

-4

fpdf.org サイトには、テーブル内の可変高行を処理するスクリプトがいくつかあります。私は、次の場所にある無料の (現在は無料ではない) 本の「テーブル」というタイトルの章に主なメソッドを集めまし

http://basepath.com/PDFbook

一番上の列ではなく、最初の列で行の高さを設定したい場合は、私が提供する RowX 関数の簡単な変形です。

于 2013-01-01T22:25:53.323 に答える