endroid/qr-code生成二维码,中文乱码的解决方案
endroid/qr-code version:6.0.3 默认不支持中文;
1、https://fonts.google.com/noto/fonts,从这里下载字体;
2、下载简体中文:Noto Sans Simplified Chinese
3、下载后,把压缩包解压,把`NotoSansSC-Regular.ttf`字体,保存在`endroid/qr-code/assets/`文件夹里;
4、照猫画虎:`endroid/qr-code/src/Label/Font/`里的`OpenSans.php`复制一份,重新命名:`NotoSans.php`;
5、NotoSans.php的代码如下:
<?phpdeclare(strict_types=1);namespace Endroid\QrCode\Label\Font;final readonly class NotoSans implements FontInterface
{public function __construct(private int $size = 16,) {}public function getPath(): string{return __DIR__.'/../../../assets/NotoSansSC-Regular.ttf'; // 路径与字体名称一定要正确;}public function getSize(): int{return $this->size;}
}
6、生成二维码的代码如下:
use Endroid\QrCode\Builder\Builder;
use Endroid\QrCode\Encoding\Encoding;
use Endroid\QrCode\ErrorCorrectionLevel;
use Endroid\QrCode\Label\LabelAlignment;
use Endroid\QrCode\Label\Font\NotoSans; // 和前面我们修改的文件名,保持一致;
use Endroid\QrCode\RoundBlockSizeMode;
use Endroid\QrCode\Writer\PngWriter;public function genQrCode(){$builder = new Builder(writer: new PngWriter(),writerOptions: [],validateResult: false,data: 'https://www.sohu.com/',encoding: new Encoding('UTF-8'),errorCorrectionLevel: ErrorCorrectionLevel::High,size: 300,margin: 10,roundBlockSizeMode: RoundBlockSizeMode::Margin,// logoPath: __DIR__.'/assets/symfony.png',// logoResizeToWidth: 50,// logoPunchoutBackground: true,labelText: '搜狐',labelFont: new NotoSans(20), // 这里也要保持一致;labelAlignment: LabelAlignment::Center);$result = $builder->build();$dataUri = $result->getDataUri();return '<img src="'.$dataUri.'">';}
相关文章:
endroid/qr-code生成二维码,中文乱码的解决方案
endroid/qr-code version:6.0.3 默认不支持中文; 1、https://fonts.google.com/noto/fonts,从这里下载字体; 2、下载简体中文:Noto Sans Simplified Chinese 3、下载后,把压缩包解压,把NotoSansSC-Regul…...
深度和法线纹理
屏幕后期处理效果的基本原理就是当游戏画面渲染完毕后通过获取到该画面的信息进行额外的效果处理 之前的边缘检测、高斯模糊、Bloom、运动模糊等效果都是基于获取当前屏幕图像中的像素信息进行后期处理的 如果仅仅根据像素信息来进行一些效果处理,存在以下问题&…...
监听H5页面在微信浏览器异常退出
参考文章 onBeforeUnmount(() > {unNormalExit(); });//---------------------------异常退出---------------------- function unNormalExit() {enterOrExitRoom({type: 37,roomId: roomId.value,userId: userId.value,nickName: name.value,loginUserType: 2, //0 专家 1…...
Linux 串口编程
目录 前言一、tty体系二、串口硬件基础知识三、Linux下的串口编程3.1 打开串口3.2 从串口读写数据,问题1、2的诞生3.3 关闭串口3.4 串口配置3.4.1 获取/设置串口的参数3.4.2 设置波特率3.4.3 设置控制模式标志3.4.4 设置本地模式标志3.4.5 设置输入模式标志3.4.6 设置输出模式标…...
Adminer源码编译 精简语言中英文和基本使用方法
Adminer是一个小而强悍的基于web的数据库管理工具, 官方默认支持几十种语言,但是对于中国的用户而言只需要有中文和英文就够了,其他语言基本无用。这就需要我们下载Adminer源码自己编译 Adminer.php , 如下图所示 adminer 中英文语言精简版本…...
go 中线程安全map
在 Go 语言中,官方包 sync.Map 确实提供了线程安全的映射数据结构。然而,正如你所提到的,使用 sync.Map 时,有时需要进行类型断言,这可能会让代码显得冗长或不直观。 如果你希望使用一个更加易用的线程安全映射&#…...
eslint 安装与使用-基础教程
中文官网 官方规则解析 规则参考 - ESLint - 插件化的 JavaScript 代码检查工具 eslint ESlint 是一个检查 JS,TS 语法的工具.能够与常用开发工具,例如 VS Code,进行集成并提供错误提示,和可能的修正方法 安装 安装eslint npm init esli…...
自然语言处理的未来愿景
自然语言处理的未来愿景 在这个信息爆炸的时代,计算机如何理解和生成我们日常使用的语言,已经成为一个引人注目的问题。你有没有想过,为什么智能助手能理解你的指令?又或者,为什么社交媒体上的推荐引擎能够精准地推荐你喜爱的内容?这背后,正是自然语言处理(NLP)在发挥…...
等保2.0三级测评华为华三交换机路由器
在使用本博客提供的学习笔记及相关内容时,请注意以下免责声明: 信息准确性:本博客的内容是基于作者的个人理解和经验,尽力确保信息的准确性和时效性,但不保证所有信息都完全正确或最新。 非专业建议:博客中的内容仅供参考,不能替代专业人士的意见和建议。在做出任何重要…...
BA和CS算法中的Levy飞行策略
Levy飞行策略通过模拟自然界中动物的长距离迁徙行为,指导粒子进行更大范围的搜索,有助于算法快速找到全局最优解。它是一种具有独特优势的随机行为策略,模拟随机游走或搜索过程中的步长和方向,其步长的概率分布为重尾分布…...
PHP:实现两张无关联表数据的联合分页处理方案
前言 在现代软件开发中,高效地处理数据是至关重要的环节。尤其是在使用 PHP 进行开发时,常常会遇到各种复杂的数据处理需求。其中,实现两张无关联表数据的联合分页处理就是一个具有挑战性的任务。这种需求在很多实际应用场景中都可能出现&am…...
【单元测试】单元测试介绍
1 单元测试基础 1.单元测试:单元测试又称模块测试,属于白盒测试,是最小单位的测试。模块分为程序模块和功能模块。功能模块指实现了一个完整功能的模块(单元),一个完整的程序单元具备输入、加工和输出三个…...
PyQt事件机制及其应用
一、实例前置 一个小闹钟应用 创建主窗口类 首先我们创建了一个名为AlarmClock的类,它继承自QMainWindow。这个类将包含我们的GUI组件和逻辑。 from Alarm_clock import Ui_MainWindowclass AlarmClock(QMainWindow):def __init__(self):super().__init__()# 初始化…...
厦门凯酷全科技有限公司抖音电商服务的卓越典范
在短视频和直播带货迅速崛起的时代,厦门凯酷全科技有限公司(以下简称“凯酷全科技”)以其专业的服务、创新的精神以及对市场的深刻理解,在抖音电商领域中脱颖而出,成为众多品牌商家信赖的选择。本文将深入探讨凯酷全科…...
vue3水波柱状图 ,实现
效果图 //引用页面 <div style"height: 60px;background-color: #fff;border-radius: 5px;width: 40px;"><WavePercentage:percentage"progress"primary-color"#ffcb7c"secondary-color"#ffcb7c"/></div>import Wa…...
如何在两台 PostgreSQL 服务器之间使用逻辑复制槽进行数据复制
如何在两台 PostgreSQL 服务器之间使用逻辑复制槽进行数据复制 如何在两台 PostgreSQL 服务器之间使用逻辑复制槽进行数据复制环境准备1. 配置主服务器(Publisher)1.1 修改 postgresql.conf1.2 修改 pg_hba.conf1.3 重启 PostgreSQL 服务1.4 创建逻辑复制…...
System.Data.OracleClient 需要 Oracle 客户端软件 version 8.1.7 或更高版本
问题1:“/”应用程序中的服务器错误。 System.Data.OracleClient 需要 Oracle 客户端软件 version 8.1.7 或更高版本。 说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细…...
【机器人】振动分析和控制工具之Bode图
Bode 图完整介绍 Bode 图由两个部分组成: 幅值图 (Magnitude Plot):描述系统对不同频率输入信号的增益大小(幅值响应)。相位图 (Phase Plot):描述系统输出信号相对于输入信号的相位差。 Bode 图的横轴是频率&#x…...
生成:安卓证书uniapp
地址: https://ask.dcloud.net.cn/article/35777 // 使用keytool -genkey命令生成证书: 官网: keytool -genkey -alias testalias -keyalg RSA -keysize 2048 -validity 36500 -keystore test.keystore ----------------------------------…...
酒店/电影推荐系统里面如何应用深度学习如CNN?
【1】酒店推荐系统里面如何应用CNN?具体过程是什么 在酒店推荐系统中应用卷积神经网络(CNN)并不是一个常见的选择,因为 CNN 主要用于处理具有空间结构的数据,如图像、音频和某些类型的序列数据。然而,在某…...
2025届毕业生推荐的六大AI学术助手解析与推荐
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 于内容创作进程里,要减低AI生成文本的可检测比率,得从语义、结构以及…...
革命性Vue3跑马灯组件:下一代智能动态展示解决方案
革命性Vue3跑马灯组件:下一代智能动态展示解决方案 【免费下载链接】vue3-marquee A simple marquee component with ZERO dependencies for Vue 3. 项目地址: https://gitcode.com/gh_mirrors/vu/vue3-marquee Vue3-Marquee是一款零依赖的Vue 3跑马灯组件&a…...
Gemini插件无法访问本地PDF/网页源码?手把手教你绕过Chrome沙箱限制(含Manifest V3兼容性补丁代码)
更多请点击: https://intelliparadigm.com 第一章:Gemini插件本地资源访问受限的本质原因 沙箱隔离机制的强制约束 Gemini 插件运行于 Chromium 扩展沙箱环境中,该环境默认禁用所有 Node.js API(如 fs、 child_process…...
避开这些坑:ADSP-SC589开发中JTAG连接、驱动安装与调试的常见问题解决
ADSP-SC589开发实战:JTAG连接与调试避坑指南 当ADSP-SC589开发板与AD-HP530ICE仿真器首次相遇时,许多开发者会陷入连接失败的困境。不同于普通MCU开发,SHARC系列DSP的JTAG调试存在诸多技术细节,稍有不慎就会导致数小时的无效排查。…...
Avogadro 2:开源分子可视化库的终极技术解析
Avogadro 2:开源分子可视化库的终极技术解析 【免费下载链接】avogadrolibs Avogadro libraries provide 3D rendering, visualization, analysis and data processing useful in computational chemistry, molecular modeling, bioinformatics, materials science,…...
Pearcleaner:macOS终极免费应用清理工具,彻底告别数字残留
Pearcleaner:macOS终极免费应用清理工具,彻底告别数字残留 【免费下载链接】Pearcleaner A free, source-available and fair-code licensed mac app cleaner 项目地址: https://gitcode.com/gh_mirrors/pe/Pearcleaner 你是否曾经在macOS上删除应…...
淘宝淘金币自动脚本:每天15分钟解放双手的终极指南
淘宝淘金币自动脚本:每天15分钟解放双手的终极指南 【免费下载链接】taojinbi 淘宝淘金币自动执行脚本,包含蚂蚁森林收取能量,芭芭农场全任务,解放你的双手 项目地址: https://gitcode.com/gh_mirrors/ta/taojinbi 淘宝淘金…...
形式化验证实战指南:从数学证明到芯片验证工程实践
1. 从一封邀请函说起:为什么我们还在谈论形式化验证?前几天整理旧资料,翻出了一封2011年的邮件,标题是“Youre invited to Jaspers annual user group meeting”。发件人是EE Times的编辑Clive Maxfield,内容是关于Jas…...
BIOSTAR映泰主板重装Win7翻车记:从U盘启动到鼠标失灵,我踩过的坑都在这了
BIOSTAR主板Win7重装实战指南:从启动设置到驱动修复全解析 老张上周给工作室那台老机器重装系统,本以为半小时能搞定的事,硬是折腾了一整天。BIOSTAR TA970主板配上Win7系统,从U盘启动识别失败到安装后鼠标失灵,几乎踩…...
别再只做AB测试了!用Python实战倾向性得分匹配(PSM),搞定业务中的因果推断难题
用Python实战倾向性得分匹配(PSM):超越AB测试的因果推断利器 在数据驱动的决策时代,企业经常面临一个核心问题:如何准确评估策略或干预措施的真实效果?传统AB测试虽然简单直观,但在面对历史数据、观测数据等非随机实验…...
