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

通过文字传递创建的图形按钮,详细说明请看文内英文说明
<?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)

相关推荐

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

    通过文字传递创建的图形按钮,详细说明请看文内英文说明 <?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

  • Java实现在PPT中创建SmartArt图形的示例代码

    目录 代码编译环境 引入jar包 创建 SmartArt 图形 完整代码 效果图 SmartArt其实就是一个文字的可视化工具,用户可在PowerPoint,Word,Excel中使用该特性创建各种图形图表.SmartArt 图形是信息和观点的视觉表示形式.可以通过从多种不同布局中进行选择来创建 SmartArt 图形,从而快速.轻松.有效地传达信息.简单的来说SmartArt就是PPT内建的逻辑图表,主要用于表达文本之间的逻辑关系,可帮助你快速.轻松.有效的传达信息.本文就将为您介绍如何通过J

  • 轻松学习jQuery插件EasyUI EasyUI创建菜单与按钮

    一.EasyUI创建简单的菜单 菜单(Menu)定义在一些 DIV 标记中,如下所示: <div id="mm" class="easyui-menu" style="width:120px;"> <div onclick="javascript:alert('new')">New</div> <div> <span>Open</span> <div

  • 安卓(Android)动态创建多个按钮并添加监听事件

    1.获取屏幕大小,以合理设定 按钮 大小及位置 DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); int width = dm.widthPixels; int height = dm.heightPixels; 2.自定义layout组件 RelativeLayout layout = new RelativeLayout(this); 3.这里创建1

  • 易语言图形按钮组件切换类型使用讲解

    类型属性 所属对象:图形按钮 : 数据类型:整数型: 可供选择的属性值: 0.按钮 1.选择框 例程 说明 点击图形按钮后,如果图形按钮类型为"按钮"则设置类型为"选择框",如果为"选择框"则设置为按钮. 注意,当为"按钮"型,则图形按钮的"选中"属性不可以使用,如果为"选择框"类型,则图形按钮的"点燃图片"属性不可以使用. 运行结果: 总结 以上就是这篇文章的全部内

  • 易语言图形按钮控件的用法详解

    易语言可以开发些实用的程序,它与软件开发的编程语言一样,可以先从简单的程序开始学习,比如做一个单击图形按钮,弹出提示窗口的程序.那么,易语言图形按钮控件如何用呢?这可以直接用组件工具上的图形按钮控件来做窗口程序的开发,大家按照步骤来做做吧 1.打开一个易语言的程序,鼠标左键单击菜单[程序]>>[新建],在右边工具箱中找到图形按钮控件,如下图所示. 2.鼠标选择好[图形按钮控件]后,在程序窗口上直接绘制出控件,根据窗口的大小,可以改变图形按钮控件的大小,默认图形是空,如下图所示. 3.在[图形按

  • IOS 开发之自定义按钮实现文字图片位置随意定制

    IOS 开发之自定义按钮实现文字图片位置随意定制 可能有些看到这篇文章的朋友会觉得很不屑:"按钮谁不会自定义?还需要看你的?" 也确实,按钮是我们项目中最常见的控件之一,天天在使用.对于不同类型的按钮,我们是否有更加简便的方法来实现需求是我们需要做的.这里我提出自己的两种方法,您可以对你自己平时自定义按钮的方法做一下对比,看看哪种方法更加简单. 多说一句,千万不要觉得知识简单,觉得自己会了,没必要学习.'往往简单的东西存在大智慧'(这个比给满分),知识都是慢慢积累出来的. 按钮是应用中

  • C# / VB.NET 在PPT中创建、编辑PPT SmartArt图形的方法详解

    本文介绍通过C#和VB.NET程序代码来创建和编辑PPT文档中的SmartArt图形.文中将分两个操作示例来演示创建和编辑结果. 使用工具:Spire.Presentation for .NET hotfix 5.9.5 Dll文件引用: 方式1:下载包.下载后,解压,打开Bin文件夹,根据自己用的.NET Framework选择相应的文件夹,如:此示例中使用的是NET4.0,即打开NET4.0文件,找到Spire.Presentation.dll文件.找到dll文件后,在vs程序中添加引用该d

  • python编程PyQt5创建按钮及触发点击事件示例解析

    阅读这篇的前提是已经默认了解了PyQt5的基础框架(超链接点击跳转).我们进一步介绍如何创建按钮和触发点击事件.代码如下: # -*- coding:utf-8 -*- import sys from PyQt5.QtWidgets import QMainWindow, QApplication, QPushButton class MainWindow(QMainWindow): def __init__(self, parent=None): super(MainWindow, self)

  • 使用PHP 5.0创建图形的巧妙方法

    我将图形编辑程序分为两类:一类(是)绘图程序,利用这种程序可以一个像素一个像素(地)绘制图像:另外一类(是)制图程序,这种程序提供了一组对象,例如线.椭圆和矩形,您可以使用这些对象来组合成一幅大图像,例如 JPEG.绘图程序非常适合进行像素级(的)控制.但(是)对于业务图形来说,制图程序(是)比较好(的)方式,因为大部分图形都(是)由矩形.线和椭圆组成(的). PHP 内置(的)制图基本操作与绘图程序非常类似.它们对于绘制图像来说功能非常强大:但(是)如果您希望自己(的)图像(是)一组对象集合时

随机推荐