通过文字传递创建的图形按钮,详细说明请看文内英文说明 
<?php Header( "Content-type: image/gif"); // info for the browser 
    /* PHP3 Button generator, (c) 2000 by IzzySoft (izzysoft@buntspecht.de) 
    * License: GPL (and it would be nice to drop me a note that you find it 
    * useful - if you use it. And, of course, I am very interested in 
    * enhancements you made to the script! 
    * 
    * Purpose: generate buttons with text passed by parameter. 
    * 
    * possible parameters to the script: 
    *button- input gif image. Just the part of the filename before the dot. 
    *The specified image file is expected in the same directory 
    *as this script resides in. 
    *font - font to use (1 - 5; 1 is very small, 3 medium, 5 normal size. 
    *The script will automatically use a smaller font if text is 
    *too long for selected size.) Default: 5 
    *text - the text to be put on the button. Will be centered. 
    *textcolor - color for the letters. Default: white. 
    *in this example code only blue, white and black are defined; 
    *but you can add custom colors easily. 
    *width,heigth - width and heigth of the button. Useful only if target 
    *button should have different size than source image. 
    * 
    * Example for usage: 
    * <IMG SRC="button.php3?button=yellow&text=Example"> 
    * will look for yellow.gif and put the string "Example" on it. 
    * 
    * I use to have three buttons I normally generate (one displays selected 
    * item, one is for mouseover(), and one is the default button). The source 
    * images are yellow.gif, white.gif and blue.gif - so my script assumes 
    * blue.gif as default if "button=" not specified - you may wish to change 
    * this below, it's easy ;) 
    */ 
    // ===========================[ check fo 
    //     r parameters and/or set defaults ]=== 
    if (($font == "") || ($font > 5) || ($font < 1)) { $font = 5; } 
    if ($text == "") { $text="Moin!"; }// button text 
    if ($textcolor == "") {// color for the letters 
    switch ($button) { 
    case "yellow": 
    case "white": 
    $textcolor = "black"; 
    break; 
    default: 
    if ($button == "") { $button = "blue"; } 
    $textcolor = "white"; 
    break; 
    } 
    } // textcolor end 
    $im_info = getimagesize("$button.gif"); // button size 
    if ($width == "") { 
    if ($im_info == "") { 
    $buttonwidth = 125; 
    } else { 
    $buttonwidth = "$im_info[0]"; 
    } 
    } else { 
    $buttonwidth = $width; 
    } 
    if ($heigth == "") { 
    if ($im_info == "") { 
    $buttonheigth = 30; 
    } else { 
    $buttonheigth = "$im_info[1]"; 
    } 
    } else { 
    $buttonheigth = $heigth; 
    } 
    $vmidth = ceil($buttonheigth / 2); 
    // ===================================== 
    //     ===[ now lets define some colors ]=== 
     
    $white = "255,255,255"; 
    $black = "0,0,0"; 
    $blue = "0x2c,0c6d,0xaf"; 
    // ===================================== 
    //     =============[ build color array ]=== 
    // now we put the needed color into an a 
    //     rray (if e.g. "$textcolor=white", 
    // the array $textcolor_array represents 
    //     "white") 
    $textcolor_array = explode(",", $$textcolor); 
    // =======================[ calculate po 
    //     sition of the text on the button ]=== 
    do { 
    $textwidth = strlen($text) * imagefontwidth($font); 
    $x = ($buttonwidth - $textwidth) / 2; $x = ceil($x); 
    $y = $vmidth - (imagefontheight($font) / 2); 
    $font--; 
    } while (($x < 0) && ($font > 0)); $font++; 
    // ===================================== 
    //     ======[ now we create the button ]=== 
    if (isset($width) || isset($heigth)) {// size change expected? 
    $ima = imagecreatefromgif("$button.gif");// open input gif 
    $im = imagecreate($buttonwidth,$buttonheigth); // create img in desired size 
    $uglybg = ImageColorAllocate($im,0xf4,0xb2,0xe5); 
    ImageRectangle($im,0,0,$buttonwidth,$buttonheigth,$uglybg); 
    $dummy = imagecopyresized($im,$ima,0,0,0,0,$buttonwidth,$buttonheigth,$im_info[0],$im_info[1]); 
    if ($dummy == "") { 
    ImageDestroy($im); // if it didn't work, create default below instead 
    } else {;} 
    ImageDestroy($ima); 
    ImageColorTransparent($im,$uglybg); 
    } else { 
    $im = imagecreatefromgif("$button.gif");// open input gif 
    } 
    if ($im == "") { $im = imagecreate($buttonwidth,$buttonheigth); // if input gif not found, 
    $rblue = ImageColorAllocate($im, 0x2c,0x6D,0xAF);// create a default box 
    ImageRectangle($im,0,0,200,100,$rblue); 
    } 
    $color = ImageColorAllocate($im, $textcolor_array[0], $textcolor_array[1], $textcolor_array[2]); // allocate the color 
    imagestring($im, $font, $x, $y, "$text", $color); // put the text on it 
    ImageGif($im);// send button to browser 
    ImageDestroy($im);// free the used memory 
    ?>/t