woo 语言最简单的生成验证码方式,是个人都能看懂,反正比py简单多了

woo语言生成验证码例子:

看代码:

local dc = woo.gd:new()
local W = 160
local H = 50
dc:create(W, H)
-- 红绿蓝取值 0-1(0-255)
dc:setRGB(0, 0, 0)
--dc:setRGB255(255,255,255)
dc:clear()

-- 随机数种子
_rand(_time())

-- 随机设置绘制的颜色
local rgba = function()
    local r = _rand()
    local g = _rand()
    local b = _rand()
    local a = _rand() * 0.5 + 0.5
    dc:setRGBA(r, g, b, a)
end

for i = 0, 10 do
    local x1 = _rand() * W
    local y1 = _rand() * H
    local x2 = _rand() * W
    local y2 = _rand() * H
    local w = _rand() * 4 + 1
    rgba()
    dc:setLineWidth(w)
    dc:drawLine(x1, y1, x2, y2)
    dc:stroke()
end

if _os() == 'windows' then
	-- windows系统下使用的字体绝对路径
    dc:loadFontFace("C:\\Windows\\Fonts\\arial.ttf", 28)
else
    -- unix系统,请设置对应的字体绝对路径
    --dc:loadFontFace("***", 28)
end

-- 设置随机数种子
math.randomseed(_time())

local qstr = ''
for i = 1, 4 do
	-- 随机取大小写字母
    qstr = _chr(_rand() < .5 and math.random(65, 90) or math.random(97, 122))
    dc:drawString(qstr, W / 5 * i, H / 2 + 10)
    rgba()
end

-- png文件保存到桌面gd.png
local path = _home() .. '/Desktop/gd.png'
dc:savePng(path)
-- 保存图片完毕后,打开该图片,服务器不能打开,请下载后查看
-- _show(path)

结果

验证码

想看详细代码解说, 去B站查看视频

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值