ID:               21189
 Comment by:       dcrignon at adequasys dot com
 Reported By:      pvy at novosoft dot ru
 Status:           No Feedback
 Bug Type:         GD related
 Operating System: windows 2000/sp3
 PHP Version:      4.3.0RC4
 New Comment:

I have the same kinf of problem under IIS5, W2K SP4, PHP 4.3.3

After multiple display, I've got this error on all GD images:

imagettfbbox(): Could not set character size

The first problem is that I usally have broken GD images. But if I do a
right-click + Show image, it comes back.
And I don't know the reason of this problem...

Thanks for your help

We are also having problem under Apache/PHP4.3.3 under W2K...

So, is GD2 really stable ?

Thanks,

David

Here is my script :

<?
require("./../configuration/configuration.php");
$largeur_txt = 6;
$taille_txt = 7;

$fontfile = "c:\WINNT\FONTS\arial.ttf";

Header("Content-type: image/png");
$matrice = "./../images/".$couleur ."_" .$style .".png";
$lg_matrice_cote = 12;
$lg_matrice_centre = 10;

$string = stripslashes($text);

If (strlen($string) >= 2) {
        // size, angle, font file, text
        $tab = imagettfbbox($taille_txt,0,$fontfile,$string);
        $largeur_txt = $tab[2];
}

$lg = $largeur_txt + 26;
$ht = 17;
                
$lg_dst_milieu = $largeur_txt + 2;
$x_dst_d = $lg_dst_milieu + $lg_matrice_cote - 1;

$x_src_d = $lg_matrice_cote + $lg_matrice_centre;

$im_dst = imagecreate($lg,$ht);
$im_src = imagecreatefrompng($matrice);

imagecopyresized($im_dst, $im_src, 0, 0, 0, 0, $lg_matrice_cote, $ht,
$lg_matrice_cote, $ht);

imagecopyresized($im_dst, $im_src, $lg_matrice_cote, 0,
$lg_matrice_cote, 0, $lg_dst_milieu, $ht, $lg_matrice_centre, $ht);

imagecopyresized($im_dst, $im_src, $x_dst_d, 0, $x_src_d, 0,
$lg_matrice_cote, $ht, $lg_matrice_cote, $ht);

$red = hexdec(substr($couleur_text,0,2));
$green = hexdec(substr($couleur_text,2,2));
$blue = hexdec(substr($couleur_text,4,2));

$couleur = ImageColorAllocate($im_dst, $red, $green, $blue);

if ($style == "l") {
   $px = $lg_matrice_cote + 3;
} else {
   $px = $lg_matrice_cote - 6;
}
if ($style == "b") {
   $py = $taille_txt + 4;
} else {
   $py = $taille_txt + 3;
}

imagettftext($im_dst,$taille_txt,0,$px,$py,$couleur,$fontfile,$string);
Imagepng($im_dst,'',100);
ImageDestroy($im_dst);
?>


Previous Comments:
------------------------------------------------------------------------

[2003-01-27 22:29:49] [EMAIL PROTECTED]

No feedback was provided. The bug is being suspended because
we assume that you are no longer experiencing the problem.
If this is not the case and you are able to provide the
information that was requested earlier, please do so and
change the status of the bug back to "Open". Thank you.



------------------------------------------------------------------------

[2003-01-13 19:26:09] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php4-STABLE-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php4-win32-STABLE-latest.zip



------------------------------------------------------------------------

[2002-12-27 11:36:44] renaud dot boyer at helio-service dot fr

I have problems too, the same OS (Win2k sp3) with php_gd.dll and
php_gd2.dll and php 4.2.3 & php 4.3.0RC4
php installed as an Apache 1.3.24 module
I use the gd only to produce small png, and i get error using
imagettfbbox with this script:

--------
<?php
Header("Content-type: image/png");

$angle = 0;
$font_size = 11;
$font_file="font/arial.ttf";    
$taille=imagettfbbox(1, $angle, $font_file, $text);
$hauteur = 2*$font_size;
$largeur = abs($taille[0]-$taille[4]) + 1.5*$hauteur;

$img = imagecreate($largeur,$hauteur);
                 
$bleu = imagecolorallocate($img, 57, 50, 139    
$coul_texte = imagecolorallocate($img, 255, 255, 255);  

//text alignement...
if...
//returns $x_text and $y_text

imagettftext($img, $font_size, $angle, $x_text, $y_text, $coul_texte,
$font_file, $text);
        
imagepng($img);
imagedestroy($img);
?>
---------

the results :

- php 4.2.3 with php_gd.dll
99% CPU used and a lot of ram, forced to stop apache service
nothing appears in the php error log.

- php 4.2.3 with php_gd2.dll
"Unable to find font" warning, with a relative link to the font or with
an absolute link.
no image is drawn.

- php 4.3.0RC4 with php_gd.dll
99% CPU used and a lot of ram, forced to stop apache service
nothing appears in the php error log.

- php 4.3.0RC4 with php_gd2.dll
"Could not set character size" warning... Don't know why... And the
strange thing is that sometimes the image is drawn, and sometimes not.

the script worked before on php 4.2.1, gd2, apache 1.3.?.

------------------------------------------------------------------------

[2002-12-26 17:20:50] [EMAIL PROTECTED]

Small note, TTF library is not thread safe, meaning that in Win32
enviroment it may not operate well.

------------------------------------------------------------------------

[2002-12-26 04:55:12] pvy at novosoft dot ru

Hello!
I made crash tests using WebRoller software.
I set to 10 requests my PHP code from 50 virtual clients
simultaneously, and run 40 iterations.
I test php with php_gd.dll and php_gd2.dll.
in second case apache generates error on windows console (GPF)
I use next code:
<?php
    error_reporting(E_ALL);
        $img="tab100x25.png";
        header("content-Type: image/png");
        $text ="qwe";
    $textlen = strlen($text);
        $im = ImageCreateFromPng($img);
        $tab_color = ImageColorAllocate($im, 255, 255, 255);
        $txt_color = ImageColorAllocate($im, 0,0,0);
        $itSize=GetImageSize($img);
        $t_size = 11;
    ImageFill($im, 9 , 17, $tab_color);

        ImageTTFText($im, $t_size, 0, 10, 10, $txt_color,
                "arial.ttf", $text);

        ImagePng($im);
        ImageDestroy($im);
?>


after crash test my system was frosen,apache haves 99% CPU and a lot of
memory.
As next, I comment string  with ImageTTFText function and test it
again.
Apache lives!
Below I will provide output from WebRollers test results:

Results from WebRoller with TTF function:
--- Start statistics ---

--- Basic statistics ---

Min:    50.00   20.00   30.00   50.00   70.00   60.00   30.00   30.00   
Avg:    514.82  602.53  785.38  827.82  378.96  238.82  200.40  199.07  
Max:    3270.00 4990.00 6350.00 7550.00 3410.00 2680.00 510.00  560.00  

--- Network traffic details ---

Total bytes sent     :    124242
Total bytes received :    347208
Average input speed  :      1152 bytes/sec

--- Summary times ---

Virtual Clients statistics:
Count   Time    AR/S    AT/R
100     1322442 0.08    13224.42
110     1290436 0.09    11731.24
101     1320349 0.08    13072.76
101     1320809 0.08    13077.32
114     1260793 0.09    11059.59
110     1262395 0.09    11476.32
99      1234395 0.08    12468.64
101     1293280 0.08    12804.75
101     1320759 0.08    13076.82
111     1263257 0.09    11380.69

Total work time:        1337293
Total requests made:    1048

Total average time per request: 1198.4126
Total average requests per second:      0.8344

--- Errors report ---

Total 425 errors!!!
Net :6
T/O :419


--- HTTP response codes details ---

Code    Count
200     629

--- End statistics ---

Results from WebRoller without TTF function:
--- Start statistics ---
--- Basic statistics ---

Min:    60.00   110.00  90.00   100.00  100.00  100.00  50.00   40.00   
Avg:    188.26  189.40  189.84  189.44  190.40  188.78  187.64  187.96  
Max:    240.00  280.00  310.00  330.00  290.00  260.00  270.00  280.00  

--- Network traffic details ---

Total bytes sent     :    475530
Average output speed : 475530000 bytes/sec
Total bytes received :   1844000
Average input speed  :      2382 bytes/sec

--- Summary times ---

Virtual Clients statistics:
Count   Time    AR/S    AT/R
400     78002   5.13    195.01
400     78052   5.12    195.13
400     77862   5.14    194.66
400     78162   5.12    195.41
400     78262   5.11    195.66
400     78202   5.11    195.51
400     78122   5.12    195.31
400     78202   5.11    195.51
400     78232   5.11    195.58
400     77942   5.13    194.85

Total work time:        78342
Total requests made:    4000

Total average time per request: 19.5948
Total average requests per second:      51.0341

--- HTTP response codes details ---

Code    Count
200     4000
--- End statistics ---



------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=21189&edit=1

Reply via email to