论坛动态签名图片制作
1
1607
2017年10月12日
曾在某些论坛看到过有人使用这种动态签名,开始我也在用,可后来想着还是自己做一个比较好玩,自由DIY。
传送
对于我这种啥都是半吊子的人想了一会,原理采用PHP文字水印生成。那么话不多说
首先确定你制作什么样式,我就仿照这个尺寸的记事本自己做了一个,需要的东西是处理过的记事本图片,字体文件,以下是代码
<?php
date_default_timezone_set('PRC'); //时区设置
error_reporting(0);
@header("content-Type: text/html; charset=utf-8");
//以下是用来统计你在论坛别人视奸你的次数及IP,用txt记录。
$counter_file = ("counter.txt");//手动建立counter.txt文件用来记录访问次数
$visits = file($counter_file);
$visits[0]++;
$fp = fopen($counter_file,"w");
fputs($fp,"$visits[0]");
fclose($fp);
$num=$visits[0].'次';
if(getenv('HTTP_CLIENT_IP')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR')) {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR')) {
$onlineip = getenv('REMOTE_ADDR');
} else {
$onlineip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
}
$ip=$onlineip;
//用于记录访问信息,可删
//统计这个来干嘛,有病_(:з」∠)_
logResult($ip);
function logResult($word='') {
$fp = fopen("log.txt","a");//手动建立log.txt文件用来记录论坛访问者的访问IP及时间
flock($fp, LOCK_EX) ;
fwrite($fp,"记录时间:".strftime("%Y.%m.%d %H:%M:%S",time()).",IP:".$word."\n");
flock($fp, LOCK_UN);
fclose($fp);
}//可删
$str = explode(',',$onlineip);//滤掉代理IP
$content=file_get_contents("http://ip.taobao.com/service/getIpInfo.php?ip=$str[0]");
$json=json_decode($content);
$add=$json->{'data'}->{'country'}.$json->{'data'}->{'area'}.$json->{'data'}->{'region'}.$json->{'data'}->{'city'}.$json->{'data'}->{'county'}.$json->{'data'}->{'isp'};
header("Content-type: image/jpeg");
$im = @imagecreatefromjpeg('img.jpg');//模板图片
$font = 'sweet.ttf'; //文字字体
$green = imagecolorallocate($im, 16, 138, 33);//颜色
$red = imagecolorallocate($im, 255, 0, 0);
$black = imagecolorallocate($im, 0, 0, 0);
$blue = imagecolorallocate($im, 48, 129, 188);
switch (strftime("%w",time()))//星期
{
case 0:
$week=' 日曜日';
break;
case 1:
$week=' 月曜日';
break;
case 2:
$week=' 火曜日';
break;
case 3:
$week=' 水曜日';
break;
case 4:
$week=' 木曜日';
break;
case 5:
$week=' 金曜日';
break;
case 6:
$week=' 土曜日';
break;
default:
NULL;
}
//操作系统和UA
$agent = strtolower($_SERVER['HTTP_USER_AGENT']);
$xp = (strpos($agent, 'windows nt 5.1')) ? true : false;
$win7 = (strpos($agent, 'windows nt 6.1')) ? true : false;
$win8 = (strpos($agent, 'windows nt 6.2')) ? true : false;
$win8_1 = (strpos($agent, 'windows nt 6.3')) ? true : false;
$win10 = (strpos($agent, 'windows nt 10.0')) ? true : false;
$vista = (strpos($agent, 'windows nt 6.0')) ? true : false;
$pc = (strpos($agent, 'windows')) ? true : false;
$ipad = (strpos($agent, 'ipad')) ? true : false;
$iphone = (strpos($agent, 'iphone')) ? true : false;
$android = (strpos($agent, 'android')) ? true : false;
$ubuntu = (strpos($agent, 'ubuntu')) ? true : false;
$linux = (strpos($agent, 'linux')) ? true : false;
$mac = (strpos($agent, 'mac')) ? true : false;
$unix = (strpos($agent, 'unix')) ? true : false;
$symbian = (strpos($agent, 'symbian')) ? true : false;
$nokia = (strpos($agent, 'nokia')) ? true : false;
if($xp)$os='Windows XP'; else
if($win7)$os='Windows 7'; else
if($win8)$os='Windows 8'; else
if($win8_1)$os='Windows 8.1'; else
if($win10)$os='Windows 10'; else
if($vista)$os='Windows Vista'; else
if($pc)$os='Windows'; else
if($android)$os='Android'; else
if($ubuntu)$os='Ubuntu'; else
if($linux)$os='Linux'; else
if($ipad)$os='iPad'; else
if($iphone)$os='iPhone'; else
if($mac)$os='Mac OS X'; else
if($unix)$os='Unix'; else
if($symbian)$os='Nokia SymbianOS'; else
if($nokia)$os='Nokia'; else
$os='其它操作';
$ie = (strpos($agent, 'msie')) ? true : false;
$firefox = (strpos($agent, 'firefox')) ? true : false;
$maxthon = (strpos($agent, 'maxthon')) ? true : false;
$uc = (strpos($agent, 'ucbrowser')||strpos($agent, 'ubrowser')) ? true : false;
$yyw = (strpos($agent, '115browser')) ? true : false;
$baidu = (strpos($agent, 'baidubrowser')||strpos($agent, 'bidubrowser')) ? true : false;
$metasr = (strpos($agent, 'metasr')) ? true : false;
$wang = (strpos($agent, '2345explorer')) ? true : false;
$jia = (strpos($agent, '2345chrome')) ? true : false;
$lb = (strpos($agent, 'lbbrowser')) ? true : false;
$mm = (strpos($agent, 'micromessenger')) ? true : false;
$qq = (strpos($agent, 'qq')) ? true : false;
$miui = (strpos($agent, 'miuibrowser')) ? true : false;
$chrome = (strpos($agent, 'chrome')) ? true : false;
$safari = (strpos($agent, 'safari')) ? true : false;
$opera = (strpos($agent, 'opr')||strpos($agent, 'opera')||strpos($agent, 'presto')) ? true : false;
$trident = (strpos($agent, 'trident/7.0')) ? true : false;
if($ie)$ua='IE'; else
if($firefox)$ua='蓝大人'; else
if($maxthon)$ua='傲游'; else
if($uc)$ua='UC'; else
if($yyw)$ua='115'; else
if($baidu)$ua='百度'; else
if($metasr)$ua='搜狗'; else
if($wang)$ua='2345王牌'; else
if($jia)$ua='2345加速'; else
if($lb)$ua='猎豹安全'; else
if($mm)$ua='微信'; else
if($qq)$ua='QQ'; else
if($miui)$ua='Miui'; else
if($opera)$ua='欧朋'; else
if($chrome )$ua='Chrome'; else
if($safari)$ua='Apple Safari'; else
if($trident)$ua='IE11'; else
$ua='其它';
//写图文字和图片
$text1 = '欢迎来自'.$add.'的朋友';
$text2 = '今天是公元'.strftime("%Y年%m月%d日",time()).$week;
$text3 = '您的IP是'.$ip;
$text4 = '您使用'.$os.'系统和'.$ua.'浏览器';
$text5 = '目前我在H萌已经被视奸了';
$text6 = '看你一副RBQ的样子= ̄ω ̄=';
$text7 = 'thkira.com';
$respects='☆こんにちは~☆';//日常问候
$bili = imagecreatefrompng('bili.png');
$sizel = getimagesize('bili.png');
$hmoe = imagecreatefrompng('hmoe.png');
$sizeh = getimagesize('hmoe.png');
$miku = imagecreatefrompng('miku.png');
$sizem = getimagesize('miku.png');
$srcw=imagesx($im);
//int im, int size, int angle, int x, int y, int col, string fontfile, string text
//resource dst_im, resource src_im, int dst_x, int dst_y, int src_x, int src_y, int src_w, int src_h
imagettftext($im, 14, 0, 15, 70, $black, $font, $text1);
imagettftext($im, 14, 0, 15, 90, $black, $font, $text2);
imagettftext($im, 14, 0, 15, 110, $black, $font, $text3);
imagettftext($im, 14, 0, 15, 130, $black, $font, $text4);
imagettftext($im, 14, 0, 15, 150, $black, $font, $text5);
imagettftext($im, 14, 0, 250, 150, $red, $font, $num);
imagettftext($im, 14, 0, 15, 170, $green, $font, $text6);
imagettftext($im, 14, 0, 410, 200, $black, $font, $text7);
if(strftime("%m",time())==06&&strftime("%d",time())==26){$respects='哔哩哔哩生日快乐';imagecopy($im,$bili,400,96,0,0,$sizel[0],$sizel[1]);}//哔哩哔哩生日
if(strftime("%m",time())==06&&strftime("%d",time())==15){$respects='☆H萌生日快乐☆';imagecopy($im,$hmoe,400,96,0,0,$sizeh[0],$sizeh[1]);}//H萌生日
if(strftime("%m",time())==08&&strftime("%d",time())==31){$respects='☆MIKU酱生日快乐';imagecopy($im,$miku,400,96,0,0,$sizem[0],$sizem[1]);}//miku生日
imagettftext($im, 25, 30, 290, 200, $blue, $font, $respects);
imagepng($im);
imagedestroy($im);
?>
这个主题简介啊