查看原文
其他

ASP.NET Core 跨平台图形验证码实现

DotNet 2021-09-23

(给DotNet加星标,提升.Net技能


转自:乔达摩
cnblogs.com/xiaxiaolu/p/11280000.html

写在前面





SixLabors/ImageSharp:https://github.com/SixLabors/ImageSharp


dlemstra/Magick.NET:https://github.com/dlemstra/Magick.NET


mono/SkiaSharp:https://github.com/mono/SkiaSharp


综合考虑后选择了:ImageSharp


官方文档:https://sixlabors.github.io/docs/


成果


Hei.Captcha


一个.NET Core,跨平台的验证码生成工具包,基于ImageSharp。


使用


Install-Package Hei.Captcha
/// <summary>
/// 泡泡中文验证码
/// </summary>
/// <returns></returns>
public IActionResult BubbleCode()
{
var code = _securityCode.GetRandomCnText(2);
var imgbyte = _securityCode.GetBubbleCodeByte(code);
return File(imgbyte, "image/png");
}

/// <summary>
/// 数字字母组合验证码
/// </summary>
/// <returns></returns>
public IActionResult HybridCode()
{
var code = _securityCode.GetRandomEnDigitalText(4);
var imgbyte = _securityCode.GetEnDigitalCodeByte(code);
return File(imgbyte, "image/png");
}


高级


参照Demo,通过修改/丰富应用程序运行目录./fonts目录下的字体文件,生成更多不同字体组合的验证码。


源码

https://github.com/gebiWangshushu/Hei.Captcha


参考

https://sixlabors.github.io/docs/


推荐阅读

(点击标题可跳转阅读)

GRPC与.NET Core

C#中谁最快:结构还是类?

.NET Core WebSocket即时通讯组件ImCore(开源)


看完本文有收获?请转发分享给更多人

关注「DotNet」加星标,提升.Net技能 

好文章,我在看❤️

: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存