易语言制作二维码生成器
DLL命令表
.版本 2
.DLL命令 二维码_外形设置, , "QRCodeWin32.dll", "QRAppearance"
.参数 模块尺寸, 双精度小数型
.参数 方向, 整数型
.参数 边框, 整数型
.DLL命令 二维码_编码参数, , "QRCodeWin32.dll", "QRConfigure"
.参数 版本, 整数型
.参数 纠错级别, 整数型
.参数 掩膜, 整数型
.DLL命令 二维码_默认设置, , "QRCodeWin32.dll", "QRSetDefault"
.DLL命令 二维码_设置文本信息, , "QRCodeWin32.dll", "QRSetMessage"
.参数 文本, 文本型
.DLL命令 二维码_获取模块数, , "QRCodeWin32.dll", "QRGetActualRC"
.参数 行, 整数型, 传址
.参数 列, 整数型, 传址
.DLL命令 二维码_设置图像分辨率, , "QRCodeWin32.dll", "QRSetSize"
.参数 宽度, 整数型
.参数 高度, 整数型
.DLL命令 二维码_保存到bmp文件, 整数型, "QRCodeWin32.dll", "QRSaveAsBMP"
.参数 文件名, 文本型
.DLL命令 二维码_复制wmf图片到剪辑板, 整数型, "QRCodeWin32.dll", "QRCopyToClipboard"
.DLL命令 二维码_设置前景色, , "QRCodeWin32.dll", "QRSetBackColor"
.参数 红, 整数型
.参数 绿, 整数型
.参数 蓝, 整数型
.DLL命令 二维码_设置背景色, , "QRCodeWin32.dll", "QRSetBarColor"
.参数 红, 整数型
.参数 绿, 整数型
.参数 蓝, 整数型
生成二维码
.版本 2
.支持库 BmpOperate
.程序集 程序集1
.子程序 _启动子程序, 整数型, , 请在本子程序中放置易模块初始化代码
_临时子程序 ()
返回 (0)
.子程序 _临时子程序
载入 (窗口1, , 假)
.子程序 快速生成二维码, 字节集, 公开, 返回生成的二维码图像数据
.参数 原始文本, 文本型, , 超过120字符的只取前120字符,如果有汉字,可能出现乱码
.参数 条码版本, 整数型, 可空, 取值0~40,留空时为设置为0自动
.参数 纠错级别, 整数型, 可空, 由低到高0~4,留空时为设置为0低
.参数 点阵大小, 双精度小数型, 可空, 取值0.02~0.26,留空设置为0.02
.局部变量 图片, 字节集
.局部变量 位图, 位图
.局部变量 目标位图, 位图
.局部变量 I, 整数型
.局部变量 顶点X, 整数型
.局部变量 顶点Y, 整数型
.局部变量 宽高, 整数型
.如果真 (取文本长度 (原始文本) > 120)
原始文本 = 取文本左边 (原始文本, 120)
.如果真结束
.如果真 (是否为空 (条码版本))
条码版本 = 0
.如果真结束
.如果真 (条码版本 < 0)
条码版本 = 0
.如果真结束
.如果真 (条码版本 > 40)
条码版本 = 40
.如果真结束
.如果真 (是否为空 (纠错级别))
纠错级别 = 0
.如果真结束
.如果真 (纠错级别 < 0)
纠错级别 = 0
.如果真结束
.如果真 (纠错级别 > 4)
纠错级别 = 4
.如果真结束
.如果真 (是否为空 (点阵大小))
点阵大小 = 0.02
.如果真结束
.如果真 (点阵大小 < 0.02)
点阵大小 = 0.02
.如果真结束
.如果真 (点阵大小 > 0.26)
点阵大小 = 0.26
.如果真结束
二维码_设置文本信息 (原始文本)
二维码_设置前景色 (255, 255, 255)
二维码_设置背景色 (0, 0, 0)
二维码_编码参数 (条码版本, 纠错级别, 5)
二维码_外形设置 (点阵大小, 1, 0)
二维码_设置图像分辨率 (400, 400)
二维码_保存到bmp文件 (取运行目录 () + “\二维码图片.bmp”)
位图.创建 (400, 400, 1, 0)
位图.载入文件 (取运行目录 () + “\二维码图片.bmp”)
取位图图象顶点 (位图, 顶点X, 顶点Y)
.计次循环首 (399, I)
.如果真 (位图.取某点颜色 (顶点X + I - 1, 顶点Y) = 0 且 位图.取某点颜色 (顶点X, 顶点Y + I - 1) = 0)
宽高 = I
.如果真结束
.如果真 (顶点X + I - 1 ≥ 399 或 顶点Y + I - 1 ≥ 399)
跳出循环 ()
.如果真结束
.计次循环尾 ()
目标位图.创建 (宽高, 宽高, 1, 0)
位图.复制到 (顶点X, 顶点Y, 宽高, 宽高, 目标位图, 0, 0, )
图片 = 目标位图.取位图数据 ()
删除文件 (取运行目录 () + “\二维码图片.bmp”)
返回 (图片)
.子程序 取位图图象顶点
.参数 位图, 位图
.参数 顶点X, 整数型, 参考
.参数 顶点Y, 整数型, 参考
.局部变量 X, 整数型
.局部变量 Y, 整数型
.计次循环首 (400, X)
.计次循环首 (400, Y)
.如果真 (位图.取某点颜色 (X - 1, Y - 1) = 0)
顶点X = X - 1
顶点Y = Y - 1
返回 ()
.如果真结束
.计次循环尾 ()
.计次循环尾 ()
转换二维码启动窗口
.版本 2
.程序集 窗口程序集1
.子程序 _生成按钮_被单击
二维码图片框.图片 = 快速生成二维码 (要转换内容编辑框.内容, 到数值 (组合框_版本.现行选中项), 到数值 (组合框_纠错.现行选中项), 到数值 (组合框_点阵.内容))
.子程序 _窗口1_创建完毕
组合框_版本赋值 ()
_生成按钮_被单击 ()
.子程序 组合框_版本赋值
.局部变量 n, 整数型
.局部变量 像素, 整数型
.局部变量 文本, 文本型
.局部变量 数值, 双精度小数型
数值 = 0.02
像素 = 21
组合框_版本.加入项目 (“自动”, )
.计次循环首 (40, n)
文本 = 到文本 (像素)
组合框_版本.加入项目 (“版本_” + 到文本 (n) + “ ” + 文本 + “×” + 文本, )
像素 = 像素 + 4
.计次循环尾 ()
.计次循环首 (24, n)
数值 = 数值 + 0.01
组合框_点阵.加入项目 (到文本 (数值), )
.计次循环尾 ()
运行结果:
总结
以上是 易语言制作二维码生成器 的全部内容, 来源链接: utcz.com/z/359383.html