PhpDig.net

What is PhpDig?
PhpDig is a PHP MySQL based
Web Spider & Search Engine.




pdf_concat

Name

pdf_concat — Concatenates a matrix to the current transformation matrix for text and graphics

Synopsis

bool pdf_concat(pdf, a, b, c, d, e, f);
resource pdf: PDF object identifier
double a: Matrix value
double b: Matrix value
double c: Matrix value
double d: Matrix value
double e: Matrix value
double f: Matrix value

Returns

Always TRUE

Description

This is a slightly more low-level version of other the transformation functions including pdf_scale() , pdf_rotate() , and pdf_translate() . This function differs from pdf_setmatrix() as each transformation is added or concatentated to the previous transformation. With pdf_setmatrix() , each transformation was reset after the object was drawn.

When applying several transformations, it is always a good idea to specify them in the correct order so the results are more predictable. The best way to do multiple translations is to first translate, then rotate and finaly scale and skew.

In pdf_concat() , the transformation matrix is specified by six parameters, combinations of which affect the amount of translation that occurs. Different pairs of numbers cause each trnasformation. For an explanation of how each transformation parameter works, see pdf_setmatrix() .

Version

Since version 4.0.5

See also

See also: pdf_setmatrix

Example

Example 927. Display matrix transformations

<?php

// create new document
$pdf = pdf_new();
pdf_open_file($pdf);
pdf_begin_page($pdf, 500, 700);

$font = pdf_findfont($pdf, "Courier", "host", 0);
pdf_setfont($pdf, $font, 50);

// display as normal
pdf_set_text_pos($pdf, 10, 10);
pdf_show($pdf, "Norm");

// translate
pdf_setmatrix($pdf, 1, 0, 0, 1, 100, 100);
pdf_set_text_pos($pdf, 10, 10);
pdf_show($pdf, "Trans");

// rotate
pdf_concat($pdf, 0.7, 0.7, -0.7, 0.7, 0, 0);
pdf_set_text_pos($pdf, 20, 20);
pdf_show($pdf, "Rotate");

// scale
pdf_concat($pdf, 2, 0, 0, 2, 0, 0);
pdf_set_text_pos($pdf, 25, 25);
pdf_show($pdf, "Scale");

// skew
pdf_concat($pdf, 1, 0.58, 0.58, 1, 0, 0);
pdf_set_text_pos($pdf, 20, 20);
pdf_show($pdf, "Skew");

pdf_end_page($pdf);
pdf_close($pdf);

// display the PDF document 
$data = pdf_get_buffer($pdf);
header("Content-type: application/pdf");
header("Content-disposition: inline; filename=test.pdf");
header("Content-length: " . strlen($data));
echo $data;
?>



PHP Functions Essential Reference. Copyright © 2002 by New Riders Publishing (Authors: Zak Greant, Graeme Merrall, Torben Wilson, Brett Michlitsch). This material may be distributed only subject to the terms and conditions set forth in the Open Publication License, v1.0 or later (the latest version is presently available at http://www.opencontent.org/openpub/). The authors of this book have elected not to choose any options under the OPL. This online book was obtained from http://www.fooassociates.com/phpfer/ and is designed to provide information about the PHP programming language, focusing on PHP version 4.0.4 for the most part. The information is provided on an as-is basis, and no warranty or fitness is implied. All persons and entities shall have neither liability nor responsibility to any person or entity with respect to any loss or damage arising from the information contained in this book.

Powered by: vBulletin Version 3.0.7
Copyright ©2000 - 2005, Jelsoft Enterprises Ltd.
Copyright © 2001 - 2005, ThinkDing LLC. All Rights Reserved.