惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
Docker
月光博客
月光博客
B
Blog RSS Feed
C
Check Point Blog
WordPress大学
WordPress大学
T
Tailwind CSS Blog
GbyAI
GbyAI
H
Help Net Security
Y
Y Combinator Blog
I
InfoQ
雷峰网
雷峰网
阮一峰的网络日志
阮一峰的网络日志
小众软件
小众软件
美团技术团队
博客园 - 三生石上(FineUI控件)
MongoDB | Blog
MongoDB | Blog
Jina AI
Jina AI
A
About on SuperTechFans
G
Google Developers Blog
爱范儿
爱范儿
F
Fortinet All Blogs
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
U
Unit 42
人人都是产品经理
人人都是产品经理

博客园 - 云舟不系

框架、平台与AI:框架和平台 安装Android开发环境 论架构师的重要性 Kodi - 设置视频缓存(解决局域网视频播放卡顿问题) 我们终将成为普通人 察言堪道 [转载]平台即运行时:平台工程的下一步 kbgressdb之数据结构V0.2 kbnet.toolkit.formulas kbgressdb之数据结构V0.1 JK技术汇总 kbnet.xaas.dapi kbnet.xaas.papi 归来兮现在 kbnet.view.eap 人生如若初见 [2core]加解密算法 [2core]条形码+ZXing.NET+SkiaSharp [2core]WorkerService在Windows和Linux下部署与运行
[2core]验证码+SkiaSharp
云舟不系 · 2023-04-18 · via 博客园 - 云舟不系

既然.net6已经实现真正意义上的跨平台,那么自然能够运行在linux操作系统环境里,不过在将.netframework代码迁移到.net6时,还是发现了不少问题,比如本文要说验证码图片处理。

在.netframework框架下,图片处理依赖底层的GDI+,.netframework也仅仅做了简单封装,这就使得图片处理在.netcore里显得很鸡肋,直到.net6版本微软官宣不支持了,这个不好说什么毕竟底层的技术不同。怎么办?微软官网也提供其他解决方案,不过最后还是选择了基于Google的Skia封装的SkiaSharp,原因吗?开源,强大,友好。

为了考驾证(已考出),三个多月没有编写程序代码,昨天晚上一顿操作很快就完事儿,且在Windows下运行顺利。所以今天就在Linux(Debian11)下测试运行了一下,经过一番操作也顺利运行。不过有不少事项需要注意,比如字体。

验证码效果如下图:

a.简单验证码

 b.计算验证码

 c.文字点选验证码

d.拼图验证码 

e.图片旋转验证码:由于这种验证码体验不好,没写Demo,但功能已经实现

f.看图识物验证码 :由于这种验证码体验不好,没写Demo,但功能已经实现

程序源码:https://gitee.com/kinbor/jks.core.test.toolkit.captchas