daneas

我自己网上开发了个微信投票,其中为了方便选手宣传就生成的图片海报,利于传播不易于被举报,下面给出关键代码片段,技术人员自行研究。

 
                // 0. 确定海报路径 
                $voteimg_n = str_replace(\'.\', \'_bh.\', $voteimg);
                
                // 1. 合并横幅【这里打个标记:如果是自定义了水印图片,那么需要修改位置起点】
                $image = \think\Image::open(\'.\' . $voteimg);
                
                if ($voteimgaction[\'vote_type\'] == 1 && isset($voteimgaction[\'watermark\']) && $voteimgaction[\'firstheight\'] > 0 && $voteimgaction[\'firstwidth\'] > 0) {
                    // 图文海报
                    $image->water(\'.\' . $voteimgaction[\'watermark\'], 1, 100)->save(\'.\' . $voteimg_n);
                } else {
                    // 图文投票
                    $image->water(\'./static/wechat/image/bottom.png\', 8, 70)->save(\'.\' . $voteimg_n);
                }
                
                // 2. 生成口号
                $image = \think\Image::open(\'.\' . $voteimg_n);
                
                if ($voteimgaction[\'vote_type\'] == 1 && isset($voteimgaction[\'watermark\']) && $voteimgaction[\'firstheight\'] > 0 && $voteimgaction[\'firstwidth\'] > 0) {
                    // 图文海报
                    $newstr = \'        我是「\' . $param[\'vote_title\'] . \'」
            \' . $param[\'manifesto\'] . \'
            微信识别二维码关注铜梁视窗,关注铜梁生活 http://www.5atl.com\';
                    $image->text(\'“\' . $newstr, \'./static/fonts/STHeiti-Medium.ttc\', 24, \'#ffffff\', 7, - 60, 0)->save(\'.\' . $voteimg_n);
                } else {
                    // 图文投票
                    $newstr = \'        我是\' . $param[\'itemnum\'] . \'号选手「\' . $param[\'vote_title\'] . \'」
           \' . $param[\'manifesto\'] . \'
           微信识别二维码回复关键词“投票+\' . $param[\'vote_id\'] . \'+\' . $param[\'itemnum\'] . \'”投我一票吧\';
                    $image->text(\'“\' . $newstr, \'./static/fonts/msyh.ttc\', 14, \'#0A8BD6\', 7, - 60, 0)->save(\'.\' . $voteimg_n);
                }
                
                // 3. 将海报赋值到第一个图片
                $voteimg_n = $uploader->uploadtoqiniu($voteimg_n);
                
                if (strstr($param[\'vote_imgs\'], \',\')) {
                    $param[\'vote_imgs\'] = $voteimg_n . \',\' . $param[\'vote_imgs\'];
                } else {
                    $param[\'vote_imgs\'] = $voteimg_n;
                }

  在线体验: 菜单=》便民服务=》微信支持

网站登录http://www.5atl.com 也可以预览效果

 

分类:

技术点:

相关文章: