<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style>
p {margin:0px;padding:0px;font-size:17px;line-height:6px;font-family:Arial}
b {color:#fff};
</style>
<?php$s = '*';
$n = '<b>*</b>';$sum = 70; // 设定画布大小
$line = (int)($sum/2);for ($i=0; $i<$sum; ++$i)
{
    echo '<p>';
    for ($ii=0; $ii<$sum; $ii++)
    {
       echo ( $ii == $line - $i || 
$ii == $line + $i || 
$ii == $i - $line || 
$ii == $line - $i + $sum || 
$ii == $i || 
$ii == $sum - $i ||  $ii == (int)($line/2) || 
$ii == $line + (int)($line/2) ||  ($ii < $line + (int)($line/2) && $ii> (int)($line/2) && $i == $line + (int)($line/2)) || 
($ii < $line + (int)($line/2) && $ii> (int)($line/2) && $i == (int)($line/2)) ||  $i == 0 || 
$i == $sum-1 ||  $ii == 0 || 
$ii == $sum-1 ||  $i == (int)($line) || 
$ii == (int)($line) || 
false
)  ? $s: $n;
    }
    echo '</p>';
}
?>
想画一个星星出来一直画不出来啊。。
有能耐的画个国国旗出来哦。
$s与$n是黑白互换。
画不出来的随便画些玩意吧。有画就有分打。

解决方案 »

  1.   

    99.99999999的人是不会用php去画图的,而且还是这种星星,擦不过我见过用flash代码画图(虽然基本不会有人这么做),,代码没几句,,换成php的话也一样,。。
      

  2.   

    发个刚学PHP的时候学写的画图脚本
    <?php
    $im=imagecreate(500,500);//设定画布
    $bgcolor=imagecolorallocate($im,0,0,0);//设置背景颜色
    $lineColor=imagecolorallocate($im,255,255,255);//设定笔刷颜色
    for($degree=0;$degree<360;$degree=$degree+72)
    {
    $PoxX[]=ceil(200*cos(deg2rad($degree-18))+250);//200决定直径,250决定圆心的位置,18主要是让五角星看起来是正的
    $PoxY[]=ceil(200*sin(deg2rad($degree-18))+250); //首先获取5个顶点的坐标(X,Y)
    }
    for($t=0;$t<sizeof($PoxX);$t++)
    {
    if($t<3)
    {
    imageline($im,$PoxX[$t],$PoxY[$t],$PoxX[$t+2],$PoxY[$t+2],$lineColor);
    }
    else
    {
    imageline($im,$PoxX[$t],$PoxY[$t],$PoxX[$t-3],$PoxY[$t-3],$lineColor);
    }
    }
    imagepng($im);
    header("Content-type:image/png");
    imagedestroy($im);
    ?>
    无法上传图片、、、、效果大家自己看
      

  3.   

    再发一个画正弦曲线的。曾经在phpchina上发过。<?php
    $w=970;
    $h=600;//定义画布长宽
    $im=imagecreate($w,$h);
    $bgcolor=imagecolorallocate($im,0,0,0);//定义背景颜色
    $xcolor=imagecolorallocate($im,255,255,255);//定义坐标轴的颜色
    $yarray=imageline($im,10,10,20,0,$xcolor);
    $yarray1=imageline($im,20,0,30,10,$xcolor);//y轴方向
    $ybiaozhi=imagestring($im,5,25,15,"Y",$xcolor);//y
    $xarray=imageline($im,940,290,950,300,$xcolor);
    $xarray1=imageline($im,940,310,950,300,$xcolor);//x轴方向
    $xbiaozhi=imagestring($im,5,935,310,"X",$xcolor);//x
    $x=imageline($im,0,300,950,300,$xcolor);//X轴
    $y=imageline($im,20,0,20,600,$xcolor);//Y轴
    imagestring($im,2,10,285,0,$xcolor);//标注原点
    $yellow=imagecolorallocate($im,244,244,0);//曲线的颜色//开始绘制曲线
    for($x=20,$n=1;$x<=900;$x=$x+0.01,$n++){
    $y=sin((20-$x)*0.02)*100+300;
    imagesetpixel($im,$x,$y,$yellow);//
    }
    header("Content-type:image/jpeg");
    imagejpeg($im);
    imagedestroy($im);
    ?>
      

  4.   

    哈哈,画点阵图呢,坐标公式都没记得几个,来几个圈圈凑凑热闹。<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <style>
    p {margin:0px;padding:0px;font-size:15px;line-height:6px;font-family:Arial}
    b {color:#fff};
    </style>
    <?php
    $s = "<font color=%s>*</font>";
    $n = "<b>*</b>";        
    $r = 10;
    $cx = 20;
    $cy = 30;
    for($x = 0;$x < 101 ;$x++)
    {
            echo "<p>";
            $nx  = $x - $cx;
            for($y = 0 ;$y < 101 ; $y++)
            {
                    $ny     = $y - $xy;
                    $color  = 'black';
                    echo ( 
                               (pow(30 - $x,2) + pow(24 - $y ,2) == pow($r,2) && $color = 'skyblue')        
                            || pow(30 - $x,2) + pow(46 - $y ,2) == pow($r,2)
                            || (pow(30 - $x,2) + pow(68 - $y ,2) == pow($r,2) && $color = 'red')    
                            || (pow(40 - $x,2) + pow(34 - $y ,2) == pow($r,2) && $color = 'orange') 
                            || (pow(40 - $x,2) + pow(56 - $y ,2) == pow($r,2) && $color = 'green')  
                            || false                                                                                                                                                    
                    )       
                    ? sprintf($s,$color) : $n;
            }
            echo "</p>";
    }?>
      

  5.   

    再来个好玩的♡形线
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>笛卡尔心形线</title><style>
    div{ position:absolute; border:none; background-color:#FF0000; height:2px; width:2px;}</style>
    </head><body>
     
    <?php
    $a=50;
    for($i=1;$i<1000;$i++)
    {
    $y=200-ceil($a*(2*cos($i)-cos(2*$i)));
    $x=400+ceil($a*(2*sin($i)-sin(2*$i)));
    echo "<div style='left:{$x}px;top:{$y}px'></div>";
    }?>
     
    </body>
    </html>
      

  6.   

    用gd库就没意思了。楼主这可是ascii艺术。不过直接这么画的话只能画一些直线图形。画个啥好呢
      

  7.   

    什么都能画,只要你给出函数表达式
    y=f(x)每行画出符合 y == (int)f(x) 或 y == round( f(x) )