downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

PDF_save> <PDF_resume_page
[edit] Last updated: Fri, 26 Apr 2013

view this page in

PDF_rotate

(PHP 4, PECL pdflib >= 1.0.0)

PDF_rotateRotate coordinate system

Description

bool PDF_rotate ( resource $p , float $phi )

Rotates the coordinate system. Returns TRUE on success or FALSE on failure.



PDF_save> <PDF_resume_page
[edit] Last updated: Fri, 26 Apr 2013
 
add a note add a note User Contributed Notes PDF_rotate - [3 notes]
up
0
notrub225 at yahoo dot com
5 years ago
Many of the functions used in the post below are deprecated. Here is the modern Object Oriented version that is almost the same line by line and uses the PDFlib() class:

<?php
    $pdf
= new PDFlib();
   
$pdf->begin_document("","");
   
$pdf->set_info("Creator","images.php");
   
$pdf->set_info("Title","Horizontal and Vertical Example");
   
// Width of 612, and length of 792 make US Letter Size
    // Dimensions are reversed for Landscape Mode
   
$pdf->begin_page_ext(792,612,'');

   
$font = $pdf->load_font("Helvetica-Oblique", "iso8859-1", "");
   
$pdf->setfont($font, 18);
   
$pdf->show_xy("This is horizontal text",50, 300);
   
$pdf->rotate(90); /* rotate coordinates */
   
$pdf->show_xy("vertical text",300, -400);
  
   
$pdf->rotate(-90); /* rotate coordinates */;
   
$pdf->show_xy("This is horizontal text",50, 400);

   
$pdf->end_page_ext("");
   
$pdf->end_document("");
   
$buf = $pdf->get_buffer();
   
$len = strlen($buf);
   
Header("Content-type: application/pdf");
   
Header("Content-Length: $len");
   
Header("Content-Disposition: inline; filename=images.pdf");
    echo
$buf;
   
$pdf->delete();
?>
up
0
gman at speakeasy dot net
10 years ago
Thanks for your help, this is a clean working example ...
<?php
    $pdf
= pdf_new();
   
pdf_open_file($pdf);
   
pdf_set_info($pdf,"Creator","images.php");
   
pdf_set_info($pdf,"Title","Horizontal and Vertical Example");
   
// Width of 612, and length of 792 make US Letter Size
    // Dimensions are reversed for Landscape Mode
   
pdf_begin_page($pdf,792,612);

   
pdf_set_font($pdf, "Helvetica-Oblique", 18, "host");
   
pdf_show_xy($pdf, "This is horizontal text",50, 300);
   
pdf_rotate($pdf, 90); /* rotate coordinates */
   
pdf_show_xy($pdf,"vertical text",300, -400);
   
   
pdf_rotate($pdf, -90); /* rotate coordinates */;
   
pdf_show_xy($pdf, "This is horizontal text",50, 400);

   
pdf_end_page($pdf);
   
pdf_close($pdf);
   
$buf = pdf_get_buffer($pdf);
   
$len = strlen($buf);
   
Header("Content-type: application/pdf");
   
Header("Content-Length: $len");
   
Header("Content-Disposition: inline; filename=images.pdf");
    echo
$buf;
   
pdf_delete($pdf);
?>
up
0
bml137 at myglo dot net
10 years ago
When you rotate, remember that you are rotating the coordinate system.  So if you are rotating 90 degrees with the origin at (0,0) (bottom-left corner on PDFs) in the clockwise direction, then the pivot appears to be on the top-left of the PDF.  For instance, if you put a sheet of paper on the table in vertical position, then rotate it clockwise 90 degrees by pivoting from the bottom-left corner, the pivot (or origin) will now be in the top-left corner of the horizontal paper.  As you can see, you now have room show text in the +x, -y directions, not +x, +y.

 
show source | credits | stats | sitemap | contact | advertising | mirror sites