源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

通过文字传递创建的图形按钮

  • 时间:2020-11-16 13:29 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:通过文字传递创建的图形按钮
通过文字传递创建的图形按钮,详细说明请看文内英文说明 <?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     ?>         
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部