调用方法
public function make(){
//第一页
$textArr1 = [];
//图片后缀
$type = 3;
//页数
$page = 1;
//图片
$bigImgPath1 = 'images/parttimejob/part_time_job_1.png';
$ip = new i_parttimejob_Model();
// 乙方real_name
$textArr1['real_name']['text'] = 'aaaaaaa';
$textArr1['real_name']['fontSize'] = 35;
$textArr1['real_name']['left'] = 1300;
$textArr1['real_name']['top'] = 430;
// 身份证idcard
$textArr1['idcard']['text'] = 'bbbbbbbb';
$textArr1['idcard']['fontSize'] = 35;
$textArr1['idcard']['left'] = 1380;
$textArr1['idcard']['top'] = 530;
$this->textInImg($type, $bigImgPath1, $textArr1, $student_id, $page);
//第二页
$page = 2;
//图片
$bigImgPath2 = 'images/parttimejob/part_time_job_2.png';
// 姓名
$textArr2['real_name']['text'] = '11111';
$textArr2['real_name']['fontSize'] = 30;
$textArr2['real_name']['left'] = 530;
$textArr2['real_name']['top'] = 550;
// 性别
$textArr2['sex']['text'] = '0';
$textArr2['sex']['fontSize'] = 30;
$textArr2['sex']['left'] = 1600;
$textArr2['sex']['top'] = 550;
$this->textInImg($type, $bigImgPath2, $textArr2, $student_id, $page);
}
/**
* 图片加文字
*
* $fontSize = 45; //字体大小
* $circleSize = 0; //旋转角度
* $left = 2050; //左边距
* $top = 330; //顶边距
*/
public function textInImg($type, $bigImgPath, $textArr, $s_id, $page) {
//被加字的图片
$img = imagecreatefromstring(file_get_contents($bigImgPath));
//一定要有对应的字体文件
$font = '/var/www/font/MSYH.ttc';
//字体颜色 RGB
$black = imagecolorallocate($img, 0,0,0);
//循环添加要写的字
foreach($textArr as $j){
//字体大小
$fontSize = $j['fontSize'];
//旋转角度
$circleSize = 0;
//左边距
$left = $j['left'];
//顶边距
$top = $j['top'];
// 保存文件 git/jpg/png/bmp
imagefttext($img, $fontSize, $circleSize, $left, $top, $black, $font, $j['text']);
}
list($bgWidth, $bgHight, $type) = getimagesize($bigImgPath);
//保存位置,保存名称
$savePath = tempnam("/images/parttimejob/partContract", "PC".$s_id."_".$page);
switch($type)
{
case 1:
imagegif($img, $savePath);
break;
case 2:
imagejpeg($img, $savePath);
break;
case 3:
imagepng($img, $savePath);
break;
case 6:
imagewbmp($img, $savePath);
break;
}
//将图像输出到浏览器或文件
imagepng($img,"images/parttimejob/partContract"."/PC".$s_id."_".$page.".png");
imagedestroy($img);
return $savePath;
}