• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > WordPress纯代码生成文章海报图片实现分享功能

WordPress纯代码生成文章海报图片实现分享功能

作者:站长图库 字体:[增加 减小] 来源:互联网 时间:2022-04-29

站长图库向大家介绍了WordPress,纯代码,生成文章海报图片,分享功能等相关知识,希望对您有所帮助

WordPress纯代码生成文章海报图片实现分享功能,实现这个功能需要依赖于PHP的GD库,没有就不行哟,虚拟主机用户要好好看看是否支持哟。主要使用了PHP的复制图像,文本转图像等函数实现的,下面我们一起来看看实现代码。

$im = imagecreatetruecolor(440, 700) or die("不能初始化新的 GD 图像流");//创建一张空白图像$_bg_color = imagecolorallocate($im, 255,255,255); //创建颜色,返回颜色标识符 imagefill($im, 0, 0, $_bg_color); //初始化图像背景为$_bg_color$bg=imagecreatefromstring(file_get_contents($bigImgPath));//获取网络图片$src_info = getimagesize($bigImgPath);  //得到图片大小$bgsf = imagecreatetruecolor(440, 300);  //创建一个画布imagecopyresampled($bgsf,$bg,0,0,0,0,440,300,$src_info[0],$src_info[1]);//缩放图像imagecopymerge($im,$bgsf,0,0,0,0,440,300,100);//复制合成$_text_color = imagecolorallocate($im, 0,0,0);//文字颜色$fontpath='msyh.ttf';//字体文件路径$im=textcl($im,$_text_color,$str,$fontSize,$fontpath,330,'');//处理多行文字$im=textcl($im,$_text_color,$description,$desfontSize,$fontpath,410,'      ');$qecode=imagecreatefromstring(file_get_contents($ewm));//获取网络图片$ewm_info = getimagesize($ewm); //得到图片大小imagecopymerge($im,$qecode,10,500,0,0,$ewm_info[0],$ewm_info[1],100);//复制合成$dateimg = imagecreatetruecolor(200, 200);  //创建一个画布imagefill($dateimg, 0, 0, $_bg_color); //填充颜色imagettftext($dateimg, $datefontsize, 0,0, 50, $_text_color,$fontpath,$domain);//文字转图片imagettftext($dateimg, $desfontSize, 0,0, 90, $_text_color,$fontpath,'————————————————————————');imagettftext($dateimg, $desfontSize, 0,20, 120, $_text_color,$fontpath,$datestr);imagecopymerge($im,$dateimg,200,520,0,0,200,200,100);//复制合成header("Content-type: image/png"); //以图像类型输出imagepng($im);//展示图像imagedestroy($im); //销毁图像,释放资源

哈哈哈,是不是觉得很好理解?每一行都有注释哟。这里要说两句,有个字体文件,这个大家喜欢什么字体就去下载什么字体就好,字体文件是多平台通用的,不用担心不兼容。还有一个多行文字转图片的问题,我这里把它写成了一个方法,对于标题和描述都可以使用,节省代码。

//自动文字换行计算function textcl($img,$_text_color,$str,$fontSize,$fontpath,$Y,$before){    for ($i=0;$i<mb_strlen($str);$i++) {            $letter[] = mb_substr($str, $i, 1,'utf-8');        }         $content=$before;        foreach ($letter as $l) {            $teststr = $content." ".$l;            $fontBox = imagettfbbox($fontSize, 0, $fontpath, $teststr);            if (($fontBox[2] > 400) && ($content !== "")) {                $content .= "\n";            }        $content .= $l;    }      imagettftext($img, $fontSize, 0, ceil((440 - $fontBox[2]) / 2), $Y, $_text_color, $fontpath, $content );    return $img;}

参数说明

1、图像载体

2、字体颜色

3、字符串内容

4、字体大小

5、字体路径

6、添加在字符串之前(用于首行缩进)

使用方法

准备必须内容,主要有以下内容:

$bigImgPath=’最上面的图片链接’;$str =’标题’;$description=’描述(注意有字数限制,不然会超出图像)’;$ewm=’https://www.daimadog.com/qrcode.php?cont=https://www.daimadog.com/4077.html&rc=L&size=150′; //二维码图像地址,我这里使用的是代码狗博客提供的二维码生成接口$datestr=’时间字符串’;$domain=’域名字符串’;$fontSize=22;//标题字体大小,22磅$desfontSize=14;//描述字体大小$datefontsize=14;//日期字体大小



分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 怎么忽略FTP登录来升级WordPress
  • WordPress控制文章评论最少字数和最大字数
  • WordPress使用钩子进行主题开发时怎么避免死循环
  • WordPress怎么实现评论自动填写QQ邮箱与昵称?
  • WordPress隐藏部分内容,评论后可见
  • WordPress程序打开速度慢的三种解决方法
  • 关于WordPress删除xmlrpc.php防DDOS攻击
  • WordPress建站教程,纯代码实现wordpress防止发布文章出现标题重复,自动检测重复标题文章
  • wordpress打开速度慢最佳解决方案
  • 一文讲解Wordpress插件怎么查找并安装

相关文章

  • 2022-04-29PHP生成唯一ID的四种方法介绍
  • 2022-04-29利用滤镜及图层样式制作简单的积雪字
  • 2022-04-2920款wordpress的SEO插件
  • 2022-04-29手动触发 Lazyload 显示懒加载的图片
  • 2022-04-29Photoshop制作华丽的金色礼品字
  • 2022-04-29广告联盟被屏蔽后显示图片链接广告方法代码
  • 2022-04-29如何解决“您的服务器没有安装这个php扩展”问题
  • 2022-04-29PHP读取文件的两种方式:file_get_contents和fread(附代码实例)
  • 2022-04-29聊聊怎么将小程序项目转为uni-app项目
  • 2022-04-29一键开启网页夜间模式代码

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • PhotoShop制作逼真的补丁文字效果的教程
    • 防止SyntaxHighlighter.js的代码高亮时闪一下的解决方法
    • 宝塔面板批量设置站点404页面的方法(无需站点单独设置)
    • 利用IF判断自定义Phpcms V9列表的图文并茂
    • 帝国CMS结合JS自定义手机端内容分页样式
    • 使用18小时快速搜索引擎排名的后果
    • 百度蜘蛛是怎样来判断文章质量的?
    • vue-router两种模式有什么区别
    • 一个标志的制作过程
    • Photoshop调出美女照片梦幻蓝色调教程

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有