PHP通過image外掛在圖片上新增文字
阿新 • • 發佈:2020-12-08
最近有個需求,需要在一張空白證書上面新增人名、微信、編號等資訊,記錄一下
$im = ImageCreate(360,505); //引數為寬度和高度
//底圖
$fn = '../addons/ewei_shopv2/static/images/nationwide.jpg';
$im = ImageCreateFromJpeg($fn);
//字的顏色
$black = ImageColorAllocate($im, 0, 0, 0);
//新增真實姓名
if(empty($data['realname'])){
return false;
}else{
//設定新增的位置、顏色、字型
imagettftext($im,90,0,1000,1600,$black,"../addons/ewei_shopv2/static/fonts/simhei.ttf",$data['realname']);
imagettftext($im,90,0,1005,1600,$black,"../addons/ewei_shopv2/static/fonts/simhei.ttf",$data['realname']);
}
if(empty($data['weixin'])){
return false;
}else{
//新增微訊號
imagettftext($im,60,0,1000,1710, $black,"../addons/ewei_shopv2/static/fonts/msyh.ttf",$data['weixin']);
}
if(empty($data['province'])){
return false;
}else{
//通過地區日期及數字組成編號
$province = array('安徽'=>'AH','澳門'=>'AM','北京'=>'BJ','福建'=>'FJ','甘肅'=>'GS','廣東'=>'GD','廣西'=>'GX','貴州'=>'GZ','海南'=>'HN','河南'=>'HN' ,'河北'=>'HB','黑龍江'=>'HL',
'湖北'=>'HB','湖南'=>'HN','吉林'=>'JL','江蘇'=>'JS','江西'=>'JX','遼寧'=>'LN','陝西'=>'SX','寧夏'=>'NX','青海'=>'QH','山東'=>'SD','山西'=>'SX','內蒙古'=>'NM',
'上海'=>'SH','四川'=>'SC','臺灣'=>'TW','天津'=>'TJ','西藏'=>'XZ','香港'=>'XG','新疆'=>'XJ','雲南'=>'YN','浙江'=>'ZJ','重慶'=>'CQ');
$date = date('ymd');
$num = "22";
$result['num'] = $num = empty($num['num']) ? 1 : $num['num'];
$str = $province[$data['province']].$date.$num;
imagettftext($im,60,0,1200,1360,$black,"../addons/ewei_shopv2/static/fonts/msyh.ttf",$str);
}
if(empty($data['IDcard'])){
return false;
}else{
$firstStr = mb_substr($data['IDcard'], 10, 6, 'utf-8');
$data['IDcard'] = str_replace($firstStr,"******", $data['IDcard']);
imagettftext($im,60,0,1000,1820,$black,"../addons/ewei_shopv2/static/fonts/msyh.ttf",$data['IDcard']);
}
if(empty($data['gender'])){
return false;
}else{
$gender = array('0'=>'女士','1'=>'先生','2'=>'');
$data['gender'] = $gender[$data['gender']];
imagettftext($im,60,0,1400,1600,$black,"../addons/ewei_shopv2/static/fonts/msyh.ttf",'('.$data['gender'].')');
}
//設定日期
imagettftext($im,60,0,750,2500,$black,"../addons/ewei_shopv2/static/fonts/msyh.ttf",date('Y年m月d日'));
imagettftext($im,60,0,1450,2500,$black,"../addons/ewei_shopv2/static/fonts/msyh.ttf",date('Y年m月d日',time()+94694400));
//輸出新增文字後的圖片到指定位置
imagepng($im,'../addons/ewei_shopv2/static/images/'.$str.'.png');
//銷燬
imagedestroy($im);
$result['certificate'] = 'http://'.SITE_URL.'/addons/ewei_shopv2/static/images/'.$str.'.png';
return $result;