码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • php生成二维码合成文字、背景图并保存本地图片


    目录

    1、实现效果,二维码二维码合成文字、背景图

    2、下载并引入qrcode

    3、创建static文件夹下载字体和背景图到这

    4、创建test2.php,合成代码


     

    1、实现效果,二维码二维码合成文字、背景图

    2、下载并引入qrcode
    1、到phpqrcpde官网下载类库,官网地址:http://phpqrcode.sourceforge.net/
    2、引入phpqrcode文件夹下面phpqrcode.php"
    
    include "phpqrcode/phpqrcode.php";
    3、创建static文件夹下载字体和背景图到这

    创建img1和img2保存生成后合成图片

    4、创建test2.php,合成代码
    1. include "phpqrcode/phpqrcode.php";
    2. $name=date("YmdHis");//图片名称
    3. $value = "http:/localhost.com/pay/shop?name=".$name;//二维码地址
    4. $errorCorrectionLevel = 'H';//纠错级别:L、M、Q、H
    5. $matrixPointSize = 27;//二维码点的大小:1到10(最大27)
    6. $path=dirname(__FILE__);
    7. $filename=$path.'/img1/'.$name.'.png';
    8. $filename2=$path.'/img2/'.$name.'.png';
    9. $logo=$path.'/static/bj.png';
    10. $fonts=$path.'/static/arialbd.ttf';
    11. if (!file_exists($filename)) {
    12. $object = new \QRcode();
    13. $object->png($value, $filename, $errorCorrectionLevel, $matrixPointSize, 0);
    14. $dest = imagecreatefrompng($logo);
    15. imagesavealpha($dest, true);//这里很重要
    16. $src = imagecreatefrompng($filename);
    17. imagecopymerge($dest, $src, 700, 1220, 0, 0, imagesx($src), imagesy($src), 100); //new
    18. $red = imagecolorallocate($dest, 255, 0, 0);
    19. imagefttext($dest, 100, 0, 650, 2400, $red, $fonts, $name); //new
    20. imagePng($dest, $filename2);
    21. imagedestroy($dest);
    22. imagedestroy($src);
    23. }
    24. $generatedImageUrl = "http://localhost/code/img2/".$name.'.png';
    25. $width = 300; // 设置宽度为300像素
    26. $height = 300; // 设置高度为200像素
    27. echo "$generatedImageUrl\" alt=\"二维码图片\" width=\"$width\" height=\"$height\">";
    1. 首先,通过include语句引入了phpqrcode.php文件,该文件是PHP QR Code库的核心文件。
    2. 接着,使用date函数生成一个唯一的文件名,用于保存生成的二维码图片。
    3. 使用$value变量存储二维码的内容,这里是一个示例URL。
    4. 定义了纠错级别和二维码点的大小。
    5. 使用dirname(__FILE__)获取当前文件所在路径,并将其保存在$path变量中。
    6. 根据路径和文件名生成完整的保存路径。
    7. 检查是否已存在同名的二维码图片,如果不存在,则进行以下操作:
      • 使用new \QRcode()创建一个QRcode对象。
      • 调用对象的png方法生成二维码图片。
      • 使用imagecreatefrompng函数创建一个透明背景的画布。
      • 使用imagecreatefrompng函数创建一个二维码图片。
      • 使用imagecopymerge函数将二维码图片合并到背景画布中。
      • 使用imagecolorallocate函数创建一个红色的颜色。
      • 使用imagefttext函数在背景画布上添加文字。
      • 使用imagePng函数将合并后的图片保存到指定路径。
      • 使用imagedestroy函数销毁画布资源。
    8. 设置生成的图片的URL地址。
    9. 设置图片的宽度和高度。
    10. 最后,使用echo语句将带有宽度、高度和URL的标签输出到页面上。 请确保你已经正确安装了PHP QR Code库,并且提供了正确的文件路径和URL地址。
  • 相关阅读:
    一本通2026;阶乘和
    嵌入式Linux应用开发-驱动大全-第一章同步与互斥②
    【Tomcat】Apache发布两个新版本Tomcat修复多个Bug
    Vue 2与Vue 3生命周期钩子的对比分析
    笛卡尔树【模板】
    Ansible Automation Platform - 功能构成
    2023软件测试的4个技术等级,你在哪个级别?
    vim命令
    实现不同局域网文件共享的解决方案:使用Python自带HTTP服务和端口映射
    【开发环境】安装 Hadoop 运行环境 ( 下载 Hadoop | 解压 Hadoop | 设置 Hadoop 环境变量 | 配置 Hadoop 环境脚本 | 安装 winutils )
  • 原文地址:https://blog.csdn.net/weixin_39934453/article/details/133070866
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号