自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(99)
  • 收藏
  • 关注

原创 C# [Flags]属性

,它意味着这个枚举设计用来支持位运算,以便可以组合多个枚举值。这通常用于表示可以独立打开或关闭的多个选项或标志。在这个例子中,每个枚举值都是2的幂(1, 2, 4, 8等),这样它们就可以通过位运算(如按位或。如果包含,它会输出"The text is bold."。属性非常有用,特别是当你想表示可以组合在一起的多个选项时。然后,你可以使用按位与。这个属性被用于枚举(

2024-04-21 12:52:36 191

原创 PDF格式解析:Contents stream绘制指令解析

这段代码描述了一系列 PDF 绘图指令,它们用于在 PDF 页面中绘制文本和图形。整体来说,这段代码绘制了两行文本,分别是 “HOOOR” 和 “ZRUOG”。

2024-04-08 20:12:27 511

原创 PDF格式解析:Tm指令

这段指令是用于设置当前文本矩阵(Text Matrix)的命令,它会影响接下来绘制的文本的位置和方向。综合起来,这个指令设置了文字的水平和垂直缩放比例,以及在页面上的位置。这些元素会改变 PDF 中文本的位置和方向。是矩阵的四个缩放和旋转元素,

2024-04-08 20:11:45 626

原创 PDF格式解析:使用CID、CMAP定义字符映射

这个CMAP定义片段可能是为了支持某种特定的字体或字符集,它确保当PDF阅读器解析到这些特定的字符代码时,能够正确地映射到相应的字形,从而正确显示文本内容。在完整的PDF文件中,这样的资源定义通常出现在对象的定义部分,并且之后可能会被页面内容或其他对象引用,以确保文本的正确渲染。这行代码的作用是定义一个新的资源,并将之前定义的CMAP对象与该资源名关联起来。这是一个之前已经定义过的名字,代表CMAP对象的名称。在你提供的代码片段中,的资源,并开始定义一个包含12个条目的字典,然后开始一个新的CMAP定义。

2024-04-07 09:51:20 683

原创 PDF格式解析:CID码

在PDF文档中,字符通常使用Unicode编码,但是在文档内部,这些字符可能会被映射到CID码。CID码通常在CID字体文件中定义,并且由CID字体映射表指定Unicode字符到CID的映射关系。在PDF文档中,字符可以直接使用Unicode编码,也可以使用CID码进行标识,这取决于文档的创建方式以及所使用的字体。这段代码是用于定义一个字符映射(Character Mapping)的部分,它将Unicode字符代码映射到CID(Character ID)码,用于在PDF文档中嵌入和显示文本。

2024-04-05 17:17:48 688

原创 PDF格式解析:stream中图形状态保存指令q

设置了一个新的变换矩阵,用于改变后续的绘制操作的坐标系统。之后,如果有其他的图形操作(比如绘制形状、放置文本等),它们将会基于这个新的坐标系统来执行。保存当前状态后,可以在之后的操作中修改这些状态而不影响之前的状态。这使得在PDF内容流中能够方便地创建和管理不同的图形上下文,比如在不同的文本段落或图形对象之间切换时保持各自的状态不变。在PDF内容流中用于保存当前的图形状态,以便之后能够恢复到这个状态,这对于管理复杂的PDF页面内容是非常有用的。用于保存当前的图形状态,紧接着的。在PDF文件内容流中,

2024-04-05 15:54:53 645

原创 Pdf文件格式解析:stream中的变换矩阵指令 1 0 0 -1 0 841.9 cm

中,如果第三位(即第二行第一列的元素)不是0,那么它将表示y坐标的值在变换时会影响到x坐标的值。中,如果第二位(即第一行第二列的元素)不是0,那么它将表示x坐标的值在变换时会影响到y坐标的值。需要注意的是,这个2x2的线性变换部分只描述了旋转和缩放操作,平移操作(即沿x轴和y轴的移动)是由变换矩阵的最后两个数值(在这个例子中是。具体来说,当应用这个变换矩阵到一个坐标点 (x, y) 时,新的y坐标值将是原始y坐标与原始x坐标乘以a的和。在这里,它的值是0,意味着y坐标的值不会影响x坐标的变换。

2024-04-05 15:49:30 1000

原创 c#中DocFx生成API帮助文档

【代码】c#中DocFx生成API帮助文档。

2024-04-01 13:31:45 227

原创 C# 命名空间的两种定义哦写法与区别

虽然 C# 9.0 是与 .NET 5 一起发布的,但随后的 .NET 版本(如 .NET 6 和 .NET 7)也支持 C# 9.0,并且可能还包含对 C# 的进一步更新和改进。.NET 5 是 .NET 的一个跨平台版本,它统一了 .NET Framework、.NET Core 和 Xamarin 等不同 .NET 实现之间的许多功能,并提供了一组统一的 API 和运行时。从 .NET 5 开始,微软采用了每年发布一个新版本的节奏,并引入了 .NET 6、.NET 7 等后续版本。

2024-03-29 05:39:48 531

原创 Mac 创建c#解决方案、类库、控制台程序

【代码】Mac 创建c#解决方案、类库、控制台程序。

2024-03-29 05:19:02 73

原创 Mac系统中使用VSCode安装C#开发环境进行编译调试

2、vscode中在.csproj文件上右键,点击菜单Visual NuGet:Manage Packages,之后就可以像vs中一样使用Nuget管理包。1、安装vscode插件【Visual NuGet】终端重新加载配置文件。

2024-03-28 12:00:55 662

原创 QtCreator“设计”按钮灰色无法点击,如何解决

首选项-> 关于插件 -> 勾选QT Quick下的QML Designer 点击确定安装插件,重启Qt Creator后生效。

2024-02-24 17:05:49 807 1

原创 Qt开发:MAC安装qt、qtcreate(配置桌面应用开发环境)

选择qt版本、CMake Tool、编译器,如果是m1、m2等系列cpu的macbook,切换arm-darwin-generic-mach_o-64bit为默认再开始设置。/opt/homebrew/Cellar/qt/6.6.1就是qt安装路径。添加时选择[qt安装目录]/bin/qmake。

2024-02-23 05:49:49 1369

原创 vue、thinkphp实现腾讯云对象存储COS图片上传

composer安装qcloud-sts-sdk。前端vue2代码,使用vant的文件上传组件。

2024-02-21 09:04:59 693 1

原创 gitee多账号使用

每个工程创建时局部配置下参数,然后就可以正常commit、push。工程文件夹内配置局部参数。

2024-02-08 07:15:11 346

原创 Golang开发:跨域配置

【代码】Golang开发:跨域配置。

2024-02-06 16:45:51 1040

原创 NextJS开发:使用swiper实现轮播图

使用图片作为轮播图,替换组件代码。

2024-02-06 10:00:58 590

原创 Alibaba Cloud Linux安装mysql8

导入公钥后执行yum install mysql-community-server。然后尝试使用navicat测试远程登录。

2024-02-01 12:25:57 873

原创 树莓派ubuntu系统设置ROS2开机自启动

注意一定要添加WorkingDirectory,对应修改为你的工程目录。

2024-02-01 10:08:33 503

原创 SwiftUI中使用手势实现按下和抬起事件的触发

swiftui中使用手势实现按下和抬起事件的触发。

2024-01-31 12:21:44 397

原创 RTMP和RTSP的区别及适用场景

综上所述,RTMP和RTSP在功能、传输方式和应用范围上有所不同,选择使用哪种协议取决于具体的应用需求和场景。

2024-01-28 08:42:06 659

原创 树莓派ubuntu:CSI接口摄像头安装驱动程序及测试

树莓派中使用OV系列摄像头,网上能搜到的文章资源太老了,文章中提到的摄像头配置选项在raspi-config中并不存在。本文重新测试整理树莓派摄像头的驱动安装、配置、测试流程说明。

2024-01-22 16:37:43 833

原创 ROS2中python定时器的使用示例

callback_group: 定时器的回调组,默认值None。timer_period_sec: 定时执行时间间隔(s)clock: 计时器时钟源,默认值None。callback: 回调函数。

2024-01-20 07:57:00 474

原创 ROS2手册的离线编译安装

ROS开发中经常要查询相关API,把文档下载到本地离线使用方便快捷,极大提高开发效率。

2024-01-20 06:37:33 505

原创 解决更新Xcode 15.2后,下载 iOS_17 Simulator失败

打开https://developer.apple.com/download/all/?下载:IOS 17.2 Simulator Runtime.dmg。更新到最新的xcode后,自动下载Simulator总是失败。

2024-01-17 12:23:11 1997

原创 Ros2编译python节点报错SetuptoolsDeprecationWarning

降低版本到58.2.0,再次尝试编译问题解决。报错原因是setuptools版本太新了。

2024-01-14 13:15:58 406

原创 树莓派ubuntu:vscode remote-ssh免密登录(Mac)

Vscode remove-ssh远程开发很方便,但是每次登陆都会频繁要求输入密码,使用期间也会多次断开重连,提示再次输入密码。

2024-01-13 09:32:38 618

原创 树莓派ubuntu:新增用户

新用户默认为/bin/sh,可以通过echo $SHELL查询,默认不能使用TAB键、上下键,命令行不显示当前路径。至此新用户创建完成。你可以尝试删除旧用户。group为上一步查询到的组。

2024-01-13 00:14:50 637

原创 树莓派ubuntu:python agent代码,手机蓝牙连接树莓派开发板,取消配对验证操作,自动完成连接

先前直接运行bt-agent --capability=NoInputNoOutput 实现了功能,但是发现一个bug,手机端连接成功后,断开连接取消配对,再次重新尝试配对再也不会成功了,会提示配对失败。可能是bt-agent tool的bug, 只得再想其他更完善的解决办法。按如下方式python实现agent,可以达到想要的效果,多次测试取消配对、忽略设备后都可以再次重新配对成功。

2024-01-13 00:12:24 602

原创 树莓派ubuntu:手机蓝牙连接树莓派开发板,取消配对验证操作,自动完成连接

我们使用 bt-agent tool来实现蓝牙自动配对连接bt-agent tool:bt-agent是一个用于对蓝牙设备进行管理和操作的工具。它提供了一组命令行工具,可以控制和配置蓝牙设备的各种功能和特性。bt-agent工具可以在Linux系统上使用,并且需要安装BlueZ蓝牙库。2. 查看bt-agent是否已开启3. 创建脚本保存并退出vim(esc :qw!)5. 开机自启动5.1 创建service文件文件内容5.2 启动服务并设置开机自启5.3 重启系统检查是否成功

2024-01-12 10:49:16 753

原创 树莓派ubuntu:hdmi与wifi冲突问题

突然出现树莓派4b板插上hdmi连接7寸屏,wifi断开无法连接,拔掉hdmi,wifi立马恢复正常的奇怪问题。

2024-01-12 06:56:31 380

原创 树莓派ubuntu:vscode远程SSH开发调试

树莓派开发板中使用VSCODE可以SSH连接远程开发板,在开发板上调试开发程序。

2024-01-09 11:07:01 608

原创 树莓派Ubuntu:屏幕截图

使用键盘的"prt sc"截图。

2024-01-07 14:51:51 544

原创 树莓派ubuntu:默认分辨率太小图形界面中无法修改,如何设置分辨率

以下hdmi_mode的取值范围和对应分辨率参数。(hdmi_group=2)修改 /boot/config.txt文件。config.txt结尾追加如下内容。使用pc+读卡器读写sd卡。重启测试分辨率是否正常。直接命令读写配置文件。

2024-01-07 12:43:20 996

原创 tp6数据库查询,模型中使用left join

OrgModel模型(用户所属组织机构表)UserModel模型(用户表)

2024-01-04 05:26:07 511

原创 python开发:日志工具logging的使用

【代码】python开发:日志工具logging的使用。

2023-12-23 04:35:59 468

原创 Linux下nginx添加stream模块支持Tcp转发

PCRE (Perl Compatible Regular Expressions) 是一个用于处理正则表达式的库,它是一个C语言的库,可以在多种编程语言中使用。PCRE库提供了一套API来编译和执行正则表达式,并提供了一组函数来匹配、查找和替换文本中符合正则表达式的模式。PCRE库与Perl的正则表达式语法兼容,因此可以直接使用Perl的正则表达式语法。如果我们在nginx.conf配置文件中使用了正则表达式,那么在编译Nginx时必须将PCRE库编译进Nginx。

2023-12-21 15:52:06 781

原创 Linux安装Socket调试工具socat

【代码】Linux安装Socket调试工具socat。

2023-12-20 12:52:03 506

原创 Python工程部署到Linux云服务器

创建requirements.txt,内容如下。

2023-12-20 12:45:30 447

原创 vue3中使用wangeditor

组件代码RichEditor.vue。根目录创建env.d.ts。安装wangeditor。

2023-12-17 19:01:58 455

esp32-wroom-32数据手册

1 Module Overview 2 Block Diagram 3 Pin Definitions 4 Electrical Characteristics 5 Schematics 6 Peripheral Schematics 7 Physical Dimensions and PCB Layout 8 Product Handling 9 MAC Addresses and eFuse 10 Learning Resources

2023-09-28

ESP32技术参考手册

1 系统和存储器 2 中断矩阵 (INTERRUPT) 3 复位和时钟 4 IO_MUX 和 GPIO 交换矩阵 (GPIO, IO_MUX) 5 DPort 寄存器 6 DMA 控制器 (DMA) 7 SPI 控制器 (SPI) 8 SDIO 从机控制器 9 SD/MMC 主机控制器 10 以太网 (MAC) 11 I2C 控制器 (I2C) 12 I2S 控制器 (I2S) 13 UART 控制器 (UART) 14 LED PWM 控制器 (LEDC) 15 红外遥控 (RMT) 16 电机控制脉宽调制器 (PWM) 17 脉冲计数器 (PCNT) 18 定时器组 (TIMG) 19 看门狗定时器 (WDT) 20 eFuse 控制器 (eFuse) 21 双线汽车接口 (TWAI) 22 AES 加速器 (AES) 23 SHA 加速器 (SHA) 24 RSA 加速器 (RSA) 25 随机数发生器 (RNG) 26 片外存储器加密与解密 (FLASH) 27 存储器管理和保护单元 (MMU, MPU) 28 PID 控制器 (PID) 29 片上传感器与模拟信号处理

2023-09-28

Arduino红外避障模块开发实例源码

Arduino红外避障模块开发实例源码,红外避障模块是一种用于检测障碍物并输出信号的电子元器件。它通过发送红外线信号并测量信号的反射情况来判断是否有障碍物存在。当检测到障碍物时,红外避障模块会输出一个高电平信号,以便控制其他设备执行特定操作,如停止移动或改变方向等。它通常用于智能家居、机器人、自动化控制等领域。

2023-09-21

Arduino光敏电阻传感器模块开发实例源码

Arduino光敏电阻传感器模块开发实例源码,光敏电阻传感器模块是一种能够测量光强度的传感器模块。它包含一个光敏电阻器,当光照射到电阻器上时,电阻器的电阻值会发生变化,通过读取电阻值的变化,其电阻值发生变化,运算放大器将电阻变化转换成电压信号输出。这样就可以通过检测电压信号的变化来确定周围光线的强度。。光敏电阻传感器模块通常有一个比较灵敏的调节器,可以调节灵敏度,以便适应不同的光强度范围。光敏电阻传感器模块广泛应用于光控开关、光电计数器、太阳能控制等领域。在实际应用中,光敏电阻传感器模块可以用于照明控制、自动亮度调节、光敏安全报警等领域。例如,当室外光线变弱时,光敏电阻传感器模块可以检测到这一变化并控制室内灯光的亮度适应光线变化,从而提高室内舒适度和节能效果。

2023-09-21

Arduino SG90舵机操作实例源码

Arduino SG90舵机操作实例源码,舵机是一种用于控制机械装置角度位置的设备,通常被用于机器人、遥控模型和机械臂等设备中。舵机内部包含一个电机和一组精密齿轮,能够通过电信号控制电机的转动角度,从而驱动舵机输出轴精准地旋转到指定的位置。舵机通常具有高精度、高扭力、高速度、高可靠性等特点,被广泛应用于控制和定位系统。SG90舵机是一种小型、经济实惠的舵机,常用于模型飞机、汽车、船、机器人等小型物体中。它在重量、体积、价格等方面具有优势,可承受较大的负载和惯性力,并具备一定稳定性,控制精度高。SG90舵机的控制方式为PWM脉宽调制,具有较好的响应速度和实时性。它的工作电压为4.8V-6V,输出扭矩为1.8kg/cm,工作温度为0℃-55℃。舵机的接线方式为红色线为正极、棕色线为负极、橙色线为信号线。

2023-09-21

Arduino超声波测距开发实例源码

Arduino超声波测距开发实例源码,超声波测距原理是在超声波发射装置发出超声波,接收器接到反射回来的超声波时的时间差来计算距离,与雷达测距原理相似。 超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。(超声波在空气中的传播速度为340m/s,根据计时器记录的时间t(秒),就可以计算出发射点距障碍物的距离(s),即:s=340t/2)HC-SR04 超声波测距模块可提供 2cm-400cm 的非接触式距离感测功能,测距精度可达高到的非接触式距离感测功能,测距精度可达高到 3mm ;

2023-09-21

Arduino红外遥控iRemote4x版本开发实例源码

Arduino红外遥控iRemote4x版本开发实例源码,IR(Infrared Remote)即红外遥控。每按下一个键,即产生具有不同编码的数字脉冲,这种代码指令信号通过调制激励红外光二级管产生具有脉冲串的红外波,通过空间的传送到受控机内的遥控接收器。在接收过程中,红外波信号通过光学滤波器和光电二极管转换为电信号,此信号经过放大、检波、整形、解调、送到解码与接口电路,从而完成相应的遥控功能。很多半导体公司推出了自己制定的编码方式和其专用的遥控发射芯片,根据厂家分类有PHILIPS码、SANYO码、TOSHIBA码、NEC码等,另外,还有根据芯片名称分类,有TC9012码、L7461码、M34280码等。 所有码的编码方式都是大同小异的,一般都由引导码,用户码和键数据码组成,引导码的作用是“引导”接收器开始接收数据,用户码的作用是用来区分不同的遥控器,让接收设备分辨是否为本机的遥控器,键数据码是用来区分不同的按键。不同编码方式的主要不同点在于引导码的长度和数据位的多少,以及表示“0”和“1”的脉冲的宽度。

2023-09-21

Arduino红外遥控IRemote2xRemote3x版本

Arduino红外遥控IRemote2xor3x版本开发实例源码,IR(Infrared Remote)即红外遥控。每按下一个键,即产生具有不同编码的数字脉冲,这种代码指令信号通过调制激励红外光二级管产生具有脉冲串的红外波,通过空间的传送到受控机内的遥控接收器。在接收过程中,红外波信号通过光学滤波器和光电二极管转换为电信号,此信号经过放大、检波、整形、解调、送到解码与接口电路,从而完成相应的遥控功能。 很多半导体公司推出了自己制定的编码方式和其专用的遥控发射芯片,根据厂家分类有PHILIPS码、SANYO码、TOSHIBA码、NEC码等,另外,还有根据芯片名称分类,有TC9012码、L7461码、M34280码等。 所有码的编码方式都是大同小异的,一般都由引导码,用户码和键数据码组成,引导码的作用是“引导”接收器开始接收数据,用户码的作用是用来区分不同的遥控器,让接收设备分辨是否为本机的遥控器,键数据码是用来区分不同的按键。不同编码方式的主要不同点在于引导码的长度和数据位的多少,以及表示“0”和“1”的脉冲的宽度。

2023-09-21

程序员简历模板,职业技能、工作经历、基本信息

程序员简历模板,职业技能、工作经历、基本信息

2023-05-06

php7.4及以上版本thinkphp可用的phpoffice源码

php开发环境升级到php8后,原本基于thinkphp的老项目导入/导出Excel文件,出现各种问题,究其原因: 1、php7.4及以上版本语法上的改变 2、phpoffice已经停止维护更新,很多细节语法已经不支持php7.4及以上版本 新项目请使用PHPExcel替代方案PhpSpreadsheet,老项目可以用这份改好的完整源码

2023-05-06

头像拼文字JS特效源码

头像拼文字JS特效源码

2023-05-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除