利用php合成图片
php的圖片處理其實也挺方便實用,經常會用到例如圖片合成或者插入文字等功能,下面就說一下php的image類處理圖片是如何使用的吧。
//圖片處理函數function bornshareqrode(){//這是背景圖片的url$bannerimg = ROOT_PATH . '/upload/xcx_saleman_share/red_bag_bg.png';//這是需要插入到背景圖的圖片url$qrodeimg = ROOT_PATH . '/upload/xcx_saleman_share/2a2e719a0f23b0f448ee9a7c150f6b81.png';//用戶信息$hb = Db::table('cs_hborders')->where('hb_id', $hb_id)->find();$user = Db::table('cs_hbusers')->where('user_id', $hb['user_id'])->find();//這是需要插入到背景圖的圖片url$head_img = $user['head_img'];//這是要插入到圖片的文字$tip1 = "長按小程序碼可以查看我的名片,";$tip2 = "即可領取紅包!";$text = $user['nickname'] . "發了一個口令紅包";if ($bannerimg) {//生成中間帶logo的二維碼//這是合成后的圖片保存的路徑$upload_dir = "/upload/xcx_saleman_share/";if (is_file($bannerimg)) {//創建畫布$logo = imagecreatefromstring(file_get_contents($bannerimg));$head_img1 = imagecreatefromstring(file_get_contents($qrodeimg));$head_img2 = imagecreatefromstring(file_get_contents($head_img));//寫入文字$msg = imagecolorallocate($logo, 255, 225, 177);$black = imagecolorallocate($logo, 255, 225, 177);$grey = imagecolorallocate($logo, 255, 225, 177);//寫的文字用到的字體$font = ROOT_PATH . '/statics/font/black_font.ttf'; //將$qrodeimg插入到$bannerimg里imagecopyresampled($logo, $head_img1, 250, 300, 0, 0, 275, 275, imagesx($head_img1), imagesy($head_img1));//將$head_img插入到$bannerimg里imagecopyresampled($logo, $head_img2, 400, 30, 0, 0, 100, 100, imagesx($head_img2), imagesy($head_img2));//在圖片里插入文字($msg,$black,$grey)imagettftext($logo, 24, 0, 280, 180, $msg,$font, $text); imagettftext($logo, 30, 0, 170, 280, $black,$font, $tip1); imagettftext($logo, 30, 0, 330, 340, $grey, $font, $tip2); //生成圖片imagepng($logo, ROOT_PATH . $upload_dir . '97243655qrcode' . '.png');//生成圖片名字$twocode = $upload_dir . '97243655qrcode' . '.png'; //如果存在logo就生成帶logo的}return $twocode;//返回結果圖片url} else {return false;}}總結
- 上一篇: python字典保存为文件_关于pyth
- 下一篇: 微软常见错误代码