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

search for in the

PDF_get_apiname> <PDF_fit_textflow
Last updated: Fri, 13 Nov 2009

view this page in

PDF_fit_textline

(PECL pdflib >= 2.0.0)

PDF_fit_textline1 行分のテキストを配置する

説明

bool PDF_fit_textline ( resource $pdfdoc , string $text , float $x , float $y , string $optlist )

1 行分のテキストを、さまざまなオプションに基づいてページ上に配置します。 成功した場合に TRUE を、失敗した場合に FALSE を返します。



PDF_get_apiname> <PDF_fit_textflow
Last updated: Fri, 13 Nov 2009
 
add a note add a note User Contributed Notes
PDF_fit_textline
scott at dont want spam dot com
13-Jul-2009 07:49
One point about using the PDF_show_boxed function.

It does not support Unicode. So if you need that support you will need to use this function or the text flow functions.
eslindsey at gmail dot com
25-Mar-2009 11:17
For right now, if you are using PDFlib Lite, you can still use the legacy (depreciated) PDF_show_boxed or $p->show_boxed functions to create a text area. This seems to be a good (if not as full-featured) alternative to the textflow functions, and definitely a whole lot easier than trying to write your own text wrapping/hyphenation solution.
Chris at postal-code dot com
28-Nov-2006 06:47
A patch to the code below to handle an array bounds error that arises:

<?php
$nextText
= "";
if ( (
count( $tmpTxt ) - 1 ) >= ( $i + 1 ) )
{
$nextText = $tmpTxt[ $i+1 ]; }
               
if ( (
strlen( $str ) + strlen( $nextText ) ) > $cols )
?>
rcable at workforceconnections dot biz
12-Jul-2006 09:49
Here is a function I created in order to allow me to do textblocks on pdflib lite.  Hope this helps someone else, cause all the stuff I've found on php.net has helped me.
$p is your pdf resource
$text is the string to put in the box
$cols is the number col characters before a carriage return
$xcrd,$ycrd is lower left of first line.

This will accept \n as a newline/carriage return and use it to skip to next line.  It is not setup to hyphenate words, but someday I'll build one, or buy the full pdf package. ;)

function text_block($p,$text,$cols,$xcrd,$ycrd)
{
$font_size=12;  //font size, used to space lines on y axis
$tmplines = explode("\n",$text);
for($j=0;$j<count($tmplines);$j++)
    {
    $tmptxt = explode(" ",$tmplines[$j]);
    $str="";
    for($i=0;$i<count($tmptxt);$i++)
        {
        if($str=="") $str=sprintf("%s",$tmptxt[$i]);
        else    $str=sprintf("%s %s",$str,$tmptxt[$i]);
        if((strlen($str) + strlen($tmptxt[$i+1])) > $cols)
            {
            pdf_fit_textline($p,$str,$xcrd,$ycrd,"");
            $str="";
            $ycrd-=$font_size;
            }
        }
    pdf_fit_textline($p,$str,$xcrd,$ycrd,"");
    $ycrd-=$font_size;
    }
return $ycrd;
}

PDF_get_apiname> <PDF_fit_textflow
Last updated: Fri, 13 Nov 2009
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites