diff --git a/application/api/controller/v2/User.php b/application/api/controller/v2/User.php index 9da4798..33765a6 100644 --- a/application/api/controller/v2/User.php +++ b/application/api/controller/v2/User.php @@ -1261,43 +1261,43 @@ class User extends Api if (!file_exists($dir)){ mkdir($dir,0777,true); } - + // 用户小程序码 $qrcode = $dir.'/qrcode_'.$user['id'].'.png'; - if(!file_exists($qrcode)){ + if(!file_exists($qrcode) || imagesx(imagecreatefromjpeg(ROOT_PATH.'public/'.$qrcode)) != 338){ $response = Wechat::miniProgram()->app_code->getUnlimit($user['id'], [ 'page' => 'pages/indexone/indexone', - 'width' => 280, //最小宽度280 + 'width' => 338, //最小宽度280 ]); if ($response instanceof \EasyWeChat\Kernel\Http\StreamResponse) { $response->saveAs($dir, str_replace($dir.'/','',$qrcode)); } // 280不满足,再缩小 - \think\Image::open($qrcode)->thumb(169,169,\think\Image::THUMB_CENTER)->save($qrcode); + // \think\Image::open($qrcode)->thumb(169,169,\think\Image::THUMB_CENTER)->save($qrcode); } //将用户头像保存到本地 $avatar = $dir.'/avatar_'.$user['id'].'.png'; file_put_contents($avatar,file_get_contents($user['avatar'])); - \think\Image::open($avatar)->thumb(64,64,\think\Image::THUMB_CENTER)->save($avatar); + \think\Image::open($avatar)->thumb(128,128,\think\Image::THUMB_CENTER)->save($avatar); createRoundImg($avatar); $path_ttf = ROOT_PATH.'public/assets/fonts/PingFang.ttf'; $filename = $dir.'/'.$user['id'].'.png'; - $image = \think\Image::open(ROOT_PATH.'public/assets/img/miniProgram/user_back.png'); + $image = \think\Image::open(ROOT_PATH.'public/assets/img/miniProgram/user_back_v2.png'); // 昵称居中 $nickname = $user['nickname']; - $size = 12; + $size = 30; $box1 = imagettfbbox($size, 0, $path_ttf, $nickname); $box1_minx = min($box1[0], $box1[2], $box1[4], $box1[6]); $box1_maxx = max($box1[0], $box1[2], $box1[4], $box1[6]); /* 计算文字初始坐标和尺寸 */ $w = $box1_maxx - $box1_minx; $box1_minx += ($image->width() - $w) / 2; - $image->water($avatar,[156,52]) - ->text($nickname,$path_ttf,$size,'#020202',[$box1_minx,131]) - ->water($qrcode,[103,181]) + $image->water($avatar,[312,104]) + ->text($nickname,$path_ttf,$size,'#020202',[$box1_minx,262]) + ->water($qrcode,[206,362]) ->save($filename); $url = request()->domain().'/'.$filename.'?v='.time(); $this->success('成功',compact('url')); diff --git a/public/assets/img/miniProgram/user_back_v2.png b/public/assets/img/miniProgram/user_back_v2.png new file mode 100644 index 0000000..1ae045d Binary files /dev/null and b/public/assets/img/miniProgram/user_back_v2.png differ