
02-05-2007
|
|
|
Re: [PHP] Calculate string width using some font.
setcookie wrote:
> pdf_stringwidth() may help you
>
> regards fra*
>
>
>
Yea I saw that too but you know, pdflib is not free.
>>>> Hey list! :)
>>>>
>>>>
>>> my name's not list but what the heck:
>>>
>>> take a look at these function, they should light the way:
>>>
>>> http://php.net/manual/en/function.imageftbbox.php
>>> http://php.net/manual/en/function.imagepsbbox.php
>>> http://php.net/manual/en/function.imagettfbbox.php
>>> http://php.net/imageloadfont
>>>
>>> everything is pixels.
>>>
>>> there is no dpi - your screen & printer has a certain dpi and that
>>>
> determine
>
>>> how big the image displays on either.
>>>
>>> okay not much help - I had brain freeze half thru.
>>>
>>>
>>>
>> K, np, Ill try use imagettfbbox() function instead.
>>
>> Thx.
>>
>>>> I've got a problem trying to calculate a string width using an X font
>>>> with some Y font size to use in an svg-to-pdf conversion.
>>>>
>>>> This is what I try to do:
>>>> 1. Create a dummy image.
>>>> 2. Set the text there using font X and the font size Y (it seems that
>>>> when I create the image it renders it at 72dpi so I need to reduce it
>>>>
> at
>
>>>> 300dpi)
>>>>
>>>> I'm not sure what the imagettftext() function returns, are those
>>>>
> values
>
>>>> measured in pixels ?
>>>>
>>>>
>>> yes.
>>>
>>>
>>>
>>>> I read in some page that the proportion to reduce
>>>> the image at 300dpi is reduce the size to 24% of its original size.
>>>>
>>>> http://www.printingforless.com/resolution.html
>>>>
>>>> That's the code:
>>>>
>>>> ***
>>>>
>>>> // Create dummy image.
>>>> $rsc_image = imagecreate( 1, 1 );
>>>>
>>>> // Set image.
>>>> $arr_ftx = imagettftext( $rsc_image, $int_font_size, 0, 0, 0, -1,
>>>> "./fonts/{$str_font_file}", $str_variable_value );
>>>> // Destroy dummy image.
>>>> imagedestroy( $rsc_image );
>>>>
>>>> // Set structure of widths.
>>>> // TODO: Magik numbers.
>>>> $arr_variable_pixels[$str_variable_index] = ( ( $arr_ftx[2] * 24 ) /
>>>>
> 100 );
>
>>>> ***
>>>>
>>>> Thx for any help.
>>>>
>>>>
>>>>
>>>
>>>
>
>
|