明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4983|回复: 20

[讨论] 文本生成二维码lisp表

  [复制链接]
发表于 2019-8-18 00:03 | 显示全部楼层 |阅读模式
如果在DCL上显示二维码,如果不需要显示二维码中的图片,可以试试这个..使用方式,输入文本生成list表

复制list表替换lisp中的表

命令tt测试DCL显示的效果.

优点,存储的数据很小.因为只是保存的二维码的数据,也可以使用这个编码的表来生成CAD中的图形,
程序是C++MFC编译的Win32程序,应该大多数win系统可以直接运行
缺点,对于lisp来说,如果需要动态生成,这个就不实用了.
如果你只有二维码图片,可以使用在线的二维码识别网站识别出来,然后复制解码后的文本,再使用这个生成lisp表.




附件为exe程序

下面是测试的lisp代码,简单测试
  1. (defun c:tt(/ file f dcl_id)
  2.   (setq file (vl-filename-mktemp "myapp.dcl"))
  3.   (setq f(open file "w"))
  4.   (write-line "mydlg:dialog {" f)
  5.   (write-line "    :image {" f)
  6.   (write-line "        height = 15 ;" f)
  7.   (write-line "        key = \"img\" ;" f)
  8.   (write-line "        width = 30 ;" f)
  9.   (write-line "    }" f)
  10.   (write-line "    ok_only;" f)
  11.   (write-line "}" f)
  12.   (close f)
  13.   
  14.   (setq dcl_id(load_dialog file))
  15.   (print dcl_id)
  16.   (vl-file-delete file)
  17.   (setq lst(list
  18.        (list  1 1 1 1 1 1 1 0 0 1 0 1 0 1 1 0 0 0 1 1 0 1 0 1 0 0 0 0 1 0 1 1 1 1 1 1 1)
  19.        (list  1 0 0 0 0 0 1 0 0 0 0 1 1 1 1 1 0 0 0 0 1 1 1 0 1 0 1 0 1 0 1 0 0 0 0 0 1)
  20.        (list  1 0 1 1 1 0 1 0 0 1 0 1 1 0 0 1 1 0 1 1 1 0 0 0 0 1 1 1 0 0 1 0 1 1 1 0 1)
  21.        (list  1 0 1 1 1 0 1 0 0 1 0 0 1 1 1 1 0 1 0 0 0 0 0 1 1 0 0 0 0 0 1 0 1 1 1 0 1)
  22.        (list  1 0 1 1 1 0 1 0 1 1 1 0 1 1 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 1)
  23.        (list  1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 1 1 0 0 1 0 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1)
  24.        (list  1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1)
  25.        (list  0 0 0 0 0 0 0 0 1 1 1 0 1 1 1 1 0 0 0 0 0 0 1 1 1 0 0 1 1 0 0 0 0 0 0 0 0)
  26.        (list  0 0 1 1 0 0 1 1 1 0 0 0 1 0 1 0 1 1 1 1 0 1 1 0 1 1 0 1 1 1 1 0 1 0 0 0 0)
  27.        (list  0 1 1 1 1 1 0 0 1 0 0 0 0 0 0 1 0 1 1 0 0 0 1 1 0 0 1 1 1 1 1 0 0 0 1 0 1)
  28.        (list  0 1 0 1 0 0 1 1 0 0 0 1 0 0 0 1 1 1 1 0 0 1 1 1 1 1 1 1 0 1 0 1 1 0 1 0 1)
  29.        (list  1 0 0 0 1 1 0 1 1 0 0 1 0 0 1 0 0 1 0 1 1 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 1)
  30.        (list  0 0 0 0 0 1 1 1 0 1 1 1 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 0 0 1 1 0 1 0 1 0)
  31.        (list  0 0 0 0 1 0 0 1 1 1 0 1 1 0 1 0 0 0 1 1 0 0 1 0 1 1 1 0 1 0 1 0 1 0 1 1 1)
  32.        (list  0 1 1 1 1 1 1 1 1 0 1 1 0 0 0 1 0 0 1 0 1 1 0 0 1 1 1 1 1 1 0 0 0 0 1 1 0)
  33.        (list  0 1 0 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0)
  34.        (list  1 1 1 0 0 0 1 1 0 0 1 0 1 0 1 0 1 0 0 1 0 0 1 1 0 0 1 1 0 1 0 0 0 1 1 0 1)
  35.        (list  1 1 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1)
  36.        (list  1 1 0 0 1 1 1 1 0 1 0 0 0 1 0 1 0 0 0 1 1 1 1 0 0 1 1 1 1 1 0 0 0 0 0 1 1)
  37.        (list  0 1 1 1 1 0 0 1 1 1 1 0 0 0 0 1 1 0 1 1 0 0 0 0 1 1 1 1 0 1 1 1 1 1 0 0 1)
  38.        (list  1 0 0 1 1 1 1 0 1 0 0 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 0 1 1 1 0 1 0 0 0 0)
  39.        (list  0 1 0 0 1 1 0 1 1 0 0 0 0 1 0 0 1 0 0 0 1 1 0 0 1 1 0 0 0 0 1 1 0 1 0 1 1)
  40.        (list  0 1 1 0 0 0 1 1 1 0 0 1 1 1 1 1 0 1 0 1 0 0 1 1 1 1 0 0 1 0 1 0 1 1 0 1 0)
  41.        (list  0 0 0 1 0 0 0 0 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 0 0 1 0 0 1 0 0 0 1 1 0)
  42.        (list  0 1 1 0 1 1 1 1 1 0 1 1 0 1 0 0 1 0 0 0 1 1 1 1 1 0 1 0 1 1 0 0 0 0 0 0 1)
  43.        (list  0 1 0 0 1 1 0 1 1 0 0 1 0 1 1 0 1 0 0 0 0 0 0 1 1 0 1 0 0 1 0 1 0 0 0 0 0)
  44.        (list  0 1 0 1 0 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 0 0 1 1 0 0 0 0 0 0 1 1 1 1 1 0 0)
  45.        (list  1 0 1 0 0 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 1 1 1 0 0 0 1 0 0 0 1 1 1 0 1 1)
  46.        (list  0 0 0 1 1 1 1 1 1 0 1 1 0 1 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 1 1 1 1 0 1 0)
  47.        (list  0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 1 1 0 0 0 1 1 1 0 1)
  48.        (list  1 1 1 1 1 1 1 0 1 0 0 1 0 1 0 1 1 1 0 1 1 1 0 1 1 1 1 1 1 0 1 0 1 1 0 0 1)
  49.        (list  1 0 0 0 0 0 1 0 0 1 0 1 1 0 1 0 1 0 0 1 0 1 1 0 1 1 1 0 1 0 0 0 1 1 0 0 1)
  50.        (list  1 0 1 1 1 0 1 0 0 0 0 1 1 1 1 0 0 1 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0)
  51.        (list  1 0 1 1 1 0 1 0 1 1 0 0 0 1 0 0 1 1 0 0 1 0 1 0 1 0 0 0 0 0 1 0 0 1 1 1 1)
  52.        (list  1 0 1 1 1 0 1 0 1 0 0 1 0 1 0 1 0 0 1 0 0 1 1 1 1 0 1 0 0 1 1 1 0 0 1 1 0)
  53.        (list  1 0 0 0 0 0 1 0 0 0 1 1 1 1 0 1 1 0 0 0 1 0 0 0 0 1 1 0 0 1 1 1 1 1 1 0 0)
  54.        (list  1 1 1 1 1 1 1 0 0 0 0 1 0 0 1 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 1 1 0 1 1 1)
  55.        )
  56.   )
  57.   (new_dialog "mydlg" dcl_id)
  58.   (setq w(dimx_tile "img"))
  59.   (setq h(dimy_tile "img"))
  60.   (start_image "img")
  61.   (fill_image 0 0 w h -15)
  62.   (setq num (length(car lst)))
  63.   (setq sw(fix(/ w num)))
  64.   (setq j -1)
  65.   (foreach k lst   
  66.     (setq j(1+ j))
  67.     (setq i -1)
  68.     (foreach n k
  69.      (setq i(1+ i))
  70.       (if (= n 1)(fill_image (* i sw) (* j sw) sw sw 0))
  71.       )
  72.     )   
  73.   (end_image)
  74.   (start_dialog)
  75.   )


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x

评分

参与人数 4明经币 +4 金钱 +110 收起 理由
yjtdkj + 1 + 50 很给力!
lucas_3333 + 1 + 10 赞一个!
satan421 + 1 赞一个!
ludaweb + 1 + 50 很给力!

查看全部评分

"觉得好,就打赏"
还没有人打赏,支持一下
 楼主| 发表于 2019-8-18 13:35 | 显示全部楼层
言戲無軍 发表于 2019-8-18 11:05
win10提示特洛伊木马,好难

我也是win10,没有这样的提示,并且在http://www.virscan.org/language/zh-cn/在线扫描,没有一个会报毒的.
vc编译的程序,也没有加压缩,加壳之类的.理论上是不会报的.
你自行斟酌.
发表于 2019-8-18 13:46 | 显示全部楼层
edata 发表于 2019-8-18 13:35
我也是win10,没有这样的提示,并且在http://www.virscan.org/language/zh-cn/在线扫描,没有一个会报毒的.
...

可能是win10没激活的原因,乱杀
发表于 2019-8-18 10:03 | 显示全部楼层

太厉害了,大神。
如果把数据从字符串转换成list数组这部分不是使用C++MFC,而是用lisp算法实现就好了,这样就能动态生成二维码了。
发表于 2019-8-18 07:58 | 显示全部楼层
表示深奥,只有叹服。
发表于 2019-8-18 10:59 | 显示全部楼层
厉害的不行
发表于 2019-8-18 11:05 | 显示全部楼层
win10提示特洛伊木马,好难
发表于 2019-8-18 14:48 | 显示全部楼层
很强大,体积很小
发表于 2019-8-18 15:06 | 显示全部楼层
E大牛逼(爆破音)!
发表于 2019-8-19 10:16 | 显示全部楼层
有二维码图片就可以直接用AX读取图片点阵颜色导出1 0列表。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-26 22:31 , Processed in 0.547383 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表