I am trying to create a PDF from PHP and for legal reason we need to make part of our disclaimer BOLD and the disclaimer needs to be outlined.
My current code uses:
if(isset($_POST['optout']) && $_POST['optout'] == "yes"){ $pdf->Ln(5); $pdf->SetFont('Arial','I',12); $pdf->SetTextColor(128); $pdf->MultiCell(0,4,'This is my disclaimer. THESE WORDS NEED TO BE BOLD. These words do not need to be bold.',1,'C'); }
I am currently using WriteHTML for other parts of the document, and I could easily use that instead of MultiCell, but then how do I create the border?
So I have 2 options..
native FPDF functions
PROS: Give an option for a border
CONS: No easy way to make inline text bold
WriteHTML extension class
PROS: Lets me easily add bold text inline
CONS: Not sure how to create the border
Suggestions?
Advertisement
Answer
You could rewrite a part of the extension but it may be easier for you to use the extension writeHTML, then draw a cell (empty text) with a border over the cell you created with writeHTML. By adjusting your cells properly it should work.
Don’t forget to use SetY then SetX to position your cells.
Example:
if(isset($_POST['optout']) && $_POST['optout'] == "yes"){ $pdf->Ln(5); $pdf->SetFont('Arial','I',12); $pdf->SetTextColor(128); //Your text cell $pdf->SetY($pos_Y); $pdf->SetX($pos_X); $pdf->writeHTML('This is my disclaimer. <b>THESE WORDS NEED TO BE BOLD.</b> These words do not need to be bold.'); //Your bordered cell $pdf->SetY($pos_Y); $pdf->SetX($pos_X); $pdf->Cell($width, $height, '', 1, 0, 'C'); }