Bug #17666 Updated: TTF-Fonts does not work

From: Date: Tue, 09 Jul 2002 16:47:56 +0000
Subject: Bug #17666 Updated: TTF-Fonts does not work
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-13627@lists.php.net to get a copy of this message
ID: 17666 Updated by: ulf@ecora.de Reported By: ulf@ecora.de Status: Closed Bug Type: GD related Operating System: WinXP/Suse Linux PHP Version: 4.2.0 New Comment: I believe this bug is not fixed. Script E:\try\test\test.php Font E:\try\gd\font.ttf putenv("GDFONTPATH=E:\try\gd\"); imagettftext($im, 20, 0, 10, 5, $grey, 'font.ttf', 'beep'); Apache.exe tried to open E:\try\gd\e:\try\test\font.ttf.ttf putenv("GDFONTPATH="); imagettftext($im, 20, 0, 10, 5, $grey, 'font.ttf', 'beep'); Apache.exe tried to open C:\winnt\fonts\e:\try\test\font.ttf.ttf But my WinXP is in c:\XP. This hardcoded Path (C:\winnt\) is a bad idea. Previous Comments: ------------------------------------------------------------------------ [2002-06-22 12:43:22] mfischer@php.net This bug has been fixed in CVS. You can grab a snapshot of the CVS version at http://snaps.php.net/. In case this was a documentation problem, the fix will show up soon at http://www.php.net/manual/. In case this was a PHP.net website problem, the change will show up on the PHP.net site and on the mirror sites. Thank you for the report, and for helping us make PHP better. You have to set the GDFONTPATH environment variable before yuo call the ttftext function, e.g. putenv("GDFONTPATH=..."); but chances may be that it doesn't work with the gd version 4.2.0 is linked against. However this is fixed in http://snaps.php.net/win32/php4-win32-latest.zip , so closing. ------------------------------------------------------------------------ [2002-06-22 11:55:23] ulf@ecora.de @mfischer: I made a test with file_monitor on WinXP. TestScript: <?PHP $im = imagecreate(420,315); $grey = imagecolorallocate($im, 60, 60, 60); imagettftext($im, 80, 0, 20, 50, $grey, 'font.ttf', 'test'); ?> Path of the Testscript: E:\try\test.php4 The php.exe tried to open the fontfile (E:\try\font.ttf) on the following location: 17:44:45 php.exe FASTIO_QUERY_OPEN E:\usr\share\fonts\truetype\E:\try\font.ttf.ttf FAILURE I have not so much experience, but everywhere in the GD- or in the FreeType-code must be this fixed path:\usr\share\fonts\truetype\ ------------------------------------------------------------------------ [2002-06-09 10:46:57] sniper@php.net I just had same kind of problem on Linux. And the reason was that the user my apache runs as did not have read access to the fonts. So you might wanna check that too. ------------------------------------------------------------------------ [2002-06-09 09:13:17] rasmus@php.net Try it without the .ttf extension. ------------------------------------------------------------------------ [2002-06-09 09:12:23] mfischer@php.net To fix it for you, try to run the affecting php script through the cgi from the command line and use strace to see which file it is really trying to access, e.g. strace -e trace=open php-cgi -f script.php Try to avoid the imagejpeg() call so you don't clutter your terminal with binary data. ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/17666 -- Edit this bug report at http://bugs.php.net/?id=17666&edit=1

« previous php.bugs (#13627) next »