I'm starting in the FPDF report library and need help to generate a report in that format.
Create a rotation.php file:
<?php
require_once("fpdf/fpdf.php");
class PDF_Rotate extends FPDF
{
var $angle=0;
function Rotate($angle, $x=-1, $y=-1)
{
if($x==-1)
$x=$this->x;
if($y==-1)
$y=$this->y;
if($this->angle!=0)
$this->_out('Q');
$this->angle=$angle;
if($angle!=0)
{
$angle*=M_PI/180;
$c=cos($angle);
$s=sin($angle);
$cx=$x*$this->k;
$cy=($this->h-$y)*$this->k;
$this->_out(sprintf('q %.5f %.5f %.5f %.5f %.2f %.2f cm 1 0 0 1 %.2f %.2f cm', $c, $s, -$s, $c, $cx, $cy, -$cx, -$cy));
}
}
function _endpage()
{
if($this->angle!=0)
{
$this->angle=0;
$this->_out('Q');
}
parent::_endpage();
}
}
class PDF extends PDF_Rotate
{
function RotatedText($x, $y, $txt, $angle)
{
//Text rotated around its origin
$this->Rotate($angle, $x, $y);
$this->Text($x, $y, $txt);
$this->Rotate(0);
}
function RotatedImage($file, $x, $y, $w, $h, $angle)
{
//Image rotated around its upper-left corner
$this->Rotate($angle, $x, $y);
$this->Image($file, $x, $y, $w, $h);
$this->Rotate(0);
}
}
?>
Then at the beginning of your .PHP file:
<?php
define('FPDF_FONTPATH', 'fpdf/font/');
require('rotation.php');
?>
In the line to create the PDF:
$pdf = new PDF("P","mm","A4");
In the row you want to rotate the text:
$pdf->RotatedText(100, 60, 'Rotacionar 90 graus', 90);