日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

.NET加水印/验证码的NuGet包

發(fā)布時間:2023/12/4 asp.net 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 .NET加水印/验证码的NuGet包 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

.NET加水印/驗證碼的NuGet包?

我的在前兩篇文章中,我介紹了使用Direct2D給圖片加水印/驗證碼,今天我將其進行了封裝,發(fā)布了一個NuGet包Sdcb.Imaging:

<PackageReference Include="Sdcb.Imaging" Version="1.1.0" />

或者在這個鏈接中下載:
https://www.nuget.org/packages/Sdcb.Imaging

前兩篇文章快速通道:

.NET中生成動態(tài)驗證碼

周杰,公眾號:DotNet騷操作.NET中生成動態(tài)驗證碼

.NET中生成水印更好的方法

周杰,公眾號:sdcb.NET中生成水印更好的方法


.NET中給圖片加水印

using (var imageStream = File.OpenRead(@"..\..\..\..\sample-images\src.png"))using (var outputStream = File.OpenWrite(@"..\..\..\..\sample-images\watermark-test1.png")){ WatermarkTool.WatermarkText( imageStream, outputStream, watermark: "Watermark here", font: "Times New Roman", fontSize: 30, colorARGB: 0x7f_FF_FF_FF); // 50% transparent white}

其中,可以對字體(font),字體大小(fontSize),顏色(colorARGB)進行單獨配置,原圖如下:

加水印之后的效果:

.NET中創(chuàng)建驗證碼

byte[] pngBytes = CaptchaTool.CreatePngImage( width: 200, height: 100, text: "CAPTCHA", font: "Times New Roman", fontSize: 50.0f, lineCount: 5, rotation: false, turbulenceAmount: 60.0f);File.WriteAllBytes( @"..\..\..\..\sample-images\captcha-test1.png", pngBytes);

其中,可以對字體(font)、字體大小(fontSize)、隨機線條數量(lineCount)、是否啟用隨機旋轉(rotation)、水波移動量(turbulenceAmount)單獨進行指定。

其中水波移動量(turbulenceAmount)可以為負數,表示向反方向移動。

驗證碼效果:

注意:

  • 驗證碼不適合使用無襯線字母,因為容易分不清數字1/字母I/字母小寫l;

  • 驗證碼適合全大寫,全大寫更容易分清字母L。

  • 開啟旋轉則不適合使用英文,因為英文旋轉后辨識度不高(可以用中文);

  • 水波移動量絕對值應該盡量低于100,否則人類也很難識別了。


作者:周杰
出處:微信公眾號【DotNet騷操作】
本文采用?知識共享署名-非商業(yè)性使用-相同方式共享 2.5 中國大陸許可協(xié)議?進行許可,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接。

總結

以上是生活随笔為你收集整理的.NET加水印/验证码的NuGet包的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。