Frankly, your bug reporting sucks. This should have been a one-line
explanation with a simple example instead of that diatribe you posted and
followed up with this one. So, in other words the bug, or lack of feature
is:
Since libgd supports multiple alternate font paths separated by spaces,
it is not possible to use individual font paths with spaces in them.
Example:
$path = 'c:\test folder\arial.ttf';
imagettftext($image, 12, 0, 50, 50, $color, $path, "Hello");
If the Boutell folks fix this we will integrate their fix in our bundled
library, but otherwise I doubt you will find much interest from anybody
here. Or better yet, fix it yourself and submit a patch. It is obvious
from looking at the code that it is just doing a simple strtok on the
separator without any further logic. The relevant code is:
ext/gd/libgd/gdft.c:
fontlist = gdEstrdup(a->fontlist);
/*
* Must use gd_strtok_r else pointer corrupted by strtok in nested loop.
*/
for (name = gd_strtok_r (fontlist, LISTSEPARATOR, &strtok_ptr); name; name =
gd_strtok_r (0, LISTSEPARATOR, &strtok_ptr)) {
-Rasmus
On Fri, 2 Jan 2004, choinet wrote:
> Hello internals,
> I am dealing with a rather annoying and very prolonged
> problem here concerning a few of the GD functions that
> use external fonts. I had originally posted the
> problem as a bug report under #26635 under the false
> assumption that PHP 4.3.4 simply had a problem with
> relative pathnames to the fonts. However, after long
> correspondence and troubleshooting on my part, I found
> that there was a different problem behind the original
> issue that was causing the problem. I posted this at
> http://bugs.php.net/bug.php?id=26764�with the
> assumption that it would be fixed.
> �
> However, all I received was a rather nasty reply
> telling me to quit reporting the problem. With that
> being said, I apologize if I came across as
> unnecessarily rude, but the developer was really
> pushing my buttons. Since I have, on numerous
> occasions, tried to clarify the problem and prove its
> existence and have met very little help or action, I
> am mailing the developer's list (emailing the bug
> fixers doesn't help, and no one else has developer
> access to the runtime source code).
> �
> The bug (or problem, if you will) that I reported is
> almost surely legitimate; it has been mentioned twice
> in the imagettftext() pages concerning spaces in
> pathnames, and has been verified by a moderator at
> phpbuilder.net (Weedpacket), and I have shown
> repeatedly in my examples and situations that such a
> thing exists. I even looked at the source code for the
> GD extension, and I clearly see
>
> /*
> * The character (space) used to separate alternate
> fonts in the
> * fontlist parameter to gdImageStringFT.
> */
> #define LISTSEPARATOR " "
>
> on line 84 of /gd/libgd/gdft.c. This may not be the
> deciding line of code that determines the separator
> between alternate fonts, but I have checked spaces as
> you can see in the bug report, and such a thing works.
> Therefore, the only explanation for such pathnames
> working in that fashion is if what I am claiming is
> true.
> �
> If you people�care to test it out, the code in the
> aforementioned report will almost surely replicate the
> problem, both on 4.3.4 and the latest STABLE CVS. If
> this cannot be worked out in PHP or must be relegated
> to the folks at boutell to handle, then at the very
> least, please tell me, for it would certainly be much
> more informative than denying the existence of this
> problem. Thanks.
>
>
> __________________________________
> Do you Yahoo!?
> Find out what made the Top Yahoo! Searches of 2003
> http://search.yahoo.com/top2003
>
> --
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: http://www.php.net/unsub.php
>
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php