How can I add multiple rows in the same cell - PDF - php

I have a text which contains ±50 words. So I want to add it in the same cell
here is my code:
//header
$this->SetX(30);
$this->Cell(270, 20, "Suggested Improvement ",0, 0, 'C', true);
$this->SetX(300);
$this->Cell(270, 20, "Current Situation ",0, 0, 'C', true);
//data retrieved from DB
$this->Ln(20);
$this->SetTextColor(0);
$this->SetFillColor(19, 68, 160);
$this->SetLineWidth(0.25);
$this->SetX(30.5);
$this->Cell(269, 100,$row1['Suggested Improvement'], 1, 0, 'C', false);
$this->SetX(300);
$this->Cell(269.5, 100,$row1['Current Situation'], 1, 0, 'L', false);
But the problem is that the text is not filled in the cell, it is printed as one line, as it is shown here:
How can I make the text to start from the top right and to be filled in this block only?

Think you are using fpdf for php..
Have a look at MultiCell. There you can youse \n for line-break.
$this->MultiCell(100,8,"Line 1\n Line2");
You have to do the line-break on your own. Its not automaticly added.
Here you can check the witdh with GetStringWidth and add some line-breaks.

Related

FPDF Cell with custom border

I wanted to show data with custom position. the currency is align left and the number align right.
So i'm trying to make a cell that looks like 1 cell but it's made of 2 cell .
Here is part of my code
$pdf->Cell(5, 10, ' $ ', 'L', 0, 'L');
$pdf->Cell(45, 10, $r_purchases_t['purchase_total'], 'R', 0, 'R');
It's result is this :
|$ 10,000.00|
Problem : It has no bottom border,how can i make custom cell border just left and bottom side ?
If possible, i want some code like $pdf->Cell(5, 10, ' $ ', 'L'||'B', 0, 'L');
SOLVED,
Apparently you can just combine border using , in border parameter.
So to add left and bottom border of the cell just using this code
$pdf->Cell(5, 10, ' $ ', 'L,B', 0, 'L');
$pdf->Cell(45, 10, ' $ '. $r_purchases_t['purchase_total'], 'L', 0, 'L');
Try This and adjust width of cell accordin to need.

FPDF Cell command draws bottom border through centre of text

I'm trying to add a section title to a PDF page which is underlined so I'm adding a page-width sized Cell and wanting to underline it so I'm doing this:
$pdf->SetFont("Arial", "B", 12);
$pdf->SetXY(5, $y);
$pdf->Cell(195, 0, $qrow['Title'], "B", 1, "L");
However what comes out is more like a "strikethrough" effect where the bottom line of the cell passes through all the text.
Am I doing something obviously wrong?
Since the line height parameter is set to zero, the line is over the text.
Set the height as below, which will fix the problem:
$pdf->Cell(195, 10, $qrow['Title'], "B", 1, "L");

TCPDF Cell text uppercase and color change

I have an TCPDF file where i want to set 1 cell with fill-background color, and to change the text in that cell to Upper-Case and color to white
$pdf->SetFont($pdfFont, 'B', 10);
$pdf->SetFillColor(59,78,135);
$pdf->Cell(50, 6, Lang::trans('supportticketsclient'), 0, 1, 'L', true);
I know i have to add "strtoupper" for uppercase letters but don't know where, and SetTextColor or something similar to it, but when i set that
$pdf->SetTextColor(0,0,0);
My whole pdf color is changed.
you just need to use the same function to change the colour back to the original(or a new colour)
$pdf->SetFont($pdfFont, 'B', 10);
$pdf->SetFillColor(59,78,135);
$pdf->SetTextColor(0,0,0);
$pdf->Cell(50, 6, strtoupper(Lang::trans('supportticketsclient')), 0, 1, 'L', true);
$pdf->SetTextColor(255,255,255);//change back to black
I have the same problem on changing the text in a cell to Upper-Case..
What I did was convert it on my query
$appName = $row['appFname']." ".$row['appMname']. " ".$row['appLname'];
$appNameUPPER = strtoupper($appName);
then I used that variable on my cell
$pdf->Cell(179,26,''.$appNameUPPER.'', 'B','', 'C', '','','','','','B');
then it works! Try converting it on your query~
It's my first time to answer here hope it works on you (^_^)/

Fpdf Send To back Change order of Cell

How to send cell() to the back because it currently show to pdf based on order in the code. This is the example.
$pdf->SetXY(10, 20);
$pdf->SetFillColor(240);
$pdf->Cell(10, 10, '', 0, 1, 'L', true); // Show up 1st: Cell 1
$pdf->SetXY(10, 20);
$pdf-> SetFillColor(100);
$pdf->Cell(10, 10, '', 0, 1, 'L', true); // Show up 2nd: Cell 2
So, how can I set which Cell will come first/send to the back without follow the order?

Inserting Image in PDF using FPDF

I want to create PDF using PHP and for this I am using FPDF. Now I want to add two images at top of PDF (one at left corner and one right). I am using following code for this,
Code:-
function Header () {
$this->Image('logo.png',10,20,33,0,'','http://www.fpdf.org/');
$this->SetFont('Arial', 'B', 20);
$this->SetFillColor(36, 96, 84);
$this->SetTextColor(28,134,238);
$this->Cell(0, 10, "Your Car Comparison Document", 0, 1, 'C', false);
$this->Cell(0, 5, "", 0, 1, 'C', false);
$this->Cell(0, 10, "Thanks for visiting CarConnect.", 0, 1, 'C', false);
$this->Cell(0, 5, "", 0, 1, 'C', false);
}
But when I add image code it will show 404 error on browser else it works properly.
I did the same thing last week. But an annotation:
404 error = page not found; your image or your path probably is wrong.
I used the following code with a image size of 20x10:
$imagenurl = "../imgs/incgaminglabs.png"; // in my case
// 1) left corner in coord x=1 and y=1
$pdf->Cell(0, 0, $pdf->Image($imagenurl, 1,1,20,10), 0, 0, 'C', false,'');
// 2) right corner in coord x=$pdf->GetX() - image width + 1 and y = $pdf->GetY() - image height + 1
$pdf->Cell(0, 0, $pdf->Image($imagenurl, $pdf->GetX()-20+1,$pdf->GetY()-10+1,20,10), 0, 0, 'C', false,'');
I hope it's works for you. Try changing the values.
The HTTP url is not looks proper image url, please use correct images url 'http://www.fpdf.org/logo.png' and the Image method params wrong, please see blow
//Image(string file [, float x [, float y [, float w [, float h [, string type [, mixed link]]]]]])
$this->Image('http://www.fpdf.org/logo.png',10,20,33,0);
$pdf->Image('PATH/logo.png',10,3,50);
Make sure that your img path is correct. Your script might lays in a different folder and gets included. In this case make sure you've choosen the right path.

Categories