powershell生成二维码

今天说一下powershell利用nuget里面的c#包Qrcoder来生成二维码。下载地址:https://www.nuget.org/packages/QRCoder/。只需要弄出来里面的一个.net dll就行了。其他的垃圾扔了。net core等其他版本的dll.自带的powershell目前应该还没支持这些框架。不过官方好像出了跨平台的powershell 。net core,操作系统比较新的兄弟可以去玩玩。其他的可以丢了。代码比较简单如下:

[System.Reflection.Assembly]::LoadFile("C:\Users\Fanxiaolei\source\repos\qrcode\qrcode\Resources\QRCoder.dll")
$a= New-Object QRCoder.QRCodeGenerator

$b=$a.CreateQrCode("你好",[QRCoder.QRCodeGenerator+ECCLevel]::Q)
$c=[QRCoder.QRCode]::new($b)
$d=$c.GetGraphic(5,[System.Drawing.Color]::Black ,[System.Drawing.Color]::White, $null, 15, 6, $true)
$d.Save("F:\Desktop\QR.png")

通过反射加载dll然后调用里面的方法。最后保存在桌面上。二维码的内容是”你好”.

我讲一下代码里面的倒数第二句。这个是生成二维码的关键语句。第一个是每块的像素。第二三个就是颜色了。第四个参数是$null.。就是没有logo.有logo的话需要加载logo路径并转化成bitmap对象才可以额。使用[System.Drawing.Bitmap]::FromFile来加载图片路径。15是logo的占比默认是15%。一般logo不会设置太大,防止影响扫描效果。6是logo的边界宽度。这三个参数需要有logo才有作用。最后的$true是用来控制生产的二维码是否四周有白边。我这里就有了。设置为false就没有白边了。

猜你喜欢

转载自blog.csdn.net/qq_24499417/article/details/89490105