(转帖)论一次坎坷的小票打印机对接开发 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
vansje
V2EX    程序员

(转帖)论一次坎坷的小票打印机对接开发

  •  1
     
  •   vansje 2020-05-29 16:25:29 +08:00 3261 次点击
    这是一个创建于 1964 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前几天去客户那里,刚刚给对接上飞鹅 4G 打印机,恩,很成功,用户说小票的格式也很好!

    测试完成后,用户说,飞鹅的有点小贵(嗯?前几天不是说很便宜么!回答:嗯吧,我只能认同,反正我又不能打客户),想换成 USB 的打印机,毕竟便宜,我(此处表示客户)查了一下某宝,才 80 多块钱,你(此处指我)去买一个测试一下,我们更换成 USB 的吧!

    我感觉顿时有一万头大象奔过我的小心脏。。。

    因为这个项目中的打印机有 N 个,分布在不同的的地方,订单的打印靠一个中心 WEB 服务发起打印指令,指定某个打印机进行打印。。。。当然是飞鹅 4G 好用了,就一个接口就 OK 了。。。然而,如果换成 USB 的,那还得单独开发对应的打印控制软件,然后 N 个打印机会连接到 N 个电脑上(地域位置不同),然后还需要增加总线订阅消息到中心服务器,这样才能完成打印消息的执行。。。。用户就一句话,就会让工作变得麻烦很多,然后用户觉得其实是很简单的意见事情,飞鹅 4G 小票打印机可以打印,USB 的不照样可以打印么,有什么不同么?

    然并卵,作为弱势的乙方(还是个自由职业者),你是没有脸反驳的(在用户不懂技术的情况下)。因为用户压根就不懂什么叫通信总线,什么叫订阅,什么叫分发,什么叫异步,什么叫什么~~

    那就迎着头皮上吧,买了个芯烨 XP58IIH 型号的热敏打印机,然后,然后,然后特么的官网的 DEMO 一塌糊涂。。。。我能说啥(你啥也不能说,你不能)

    开始看官网文档的时候,给了几个 demo,也没说安装驱动啥的,然后看开发文档,特么的全是 C++的导出函数,这个也没什么,然后 DLL 导入,然后开始调用接口,然后测试了一下也可以打印,然并卵,也就只能停留在打印,连个换行都得是 0X0A 来完成。。。我大概看了一下,原来是专门的一种打印指令。。。。结果浪费半天,就只能打个 hello world,连个基本排版的说明文档都木有,是真木有,反正我是没看到。。。某宝上的商家,让我去官网找。。。我 TM 醉了,,,尽管我酒量很高,嗯,很好。

    我尝试着安装驱动,嗯,发现这驱动安装完成后。。。就是一个普通打印机。。。然后一下就顿悟了,这不就是普通打印么。。。。

    然后新键了一个 Winform,然后默认的打印组件三板斧,新键窗口,拖拽组件,配置属性。。。然后的然后。。。后来的后来。。。就是写了点测试代码,着重调整了一下样式。。。再后来,也就是现在了,距离写这个感想 10 分钟前,我把打印测试的预览搞好了,效果可以,实际打印出来,热敏纸上的粗体稍微有点不如预览的效果好点,也差不多。

    然后明天开始搞 Rabbitmq 的总线,然而用户是真不知道啥是 rabbitmq

    原帖链接: https://eleduck.com/posts/eYgfQp

    电鸭社区(原一早一晚社区)欢迎大家关注

    12 条回复    2020-06-04 18:29:34 +08:00
    seabee
        1
    seabee  
       2020-05-29 16:28:22 +08:00 via Android
    见识过类似的情况,心疼楼主一下
    JingKeWu
        2
    JingKeWu  
       2020-05-29 16:30:15 +08:00
    买个 Lodop 解决问题
    winnerczwx
        3
    winnerczwx  
       2020-05-29 17:18:54 +08:00 via iPhone
    变更需求导致工作量变多,楼主不加钱吗
    oott123
        4
    oott123  
       2020-05-29 17:19:05 +08:00 via Android
    难道不是加钱解决
    zhujinliang
        5
    zhujinliang  
       2020-05-29 17:46:52 +08:00 via iPhone
    写的数据是 ESCPOS 格式,很多地方有介绍。
    纯 ESCPOS 指令支持的排版格式有限,好处是数据量小,适合串口或蓝牙这种速度慢的端口。想打印复杂的板式还是用位图指令或者装驱动作为普通打印机用。
    这种打印机我们接过很多,串口或蓝牙的直接写端口,USB 的往 Bulk EP 里写就可以
    xuxiaoshuo
        6/span>
    xuxiaoshuo  
       2020-05-29 18:22:58 +08:00
    同样的经历呀。。话说怎么确保打印机收到 并打印呀
    yutian33
        7
    yutian33  
       2020-05-29 18:43:34 +08:00
    关注一下,刚折腾好飞鹅的,也是被反馈价格高 。。。
    sunorg
        8
    sunorg  
       2020-05-29 18:45:45 +08:00 via Android
    你自己弱势了,要么加钱,要么拒绝。
    cz5424
        9
    cz5424  
       2020-05-29 22:59:49 +08:00
    对接过某宝的打印机服务器,不过不是小票的。直接给了 api 文档,发 post 就能打印,支持 html,无脑调格式
    bitmin
        10
    bitmin  
       2020-05-30 15:37:36 +08:00 via Android
    我之前客串做过打印,因为买的热敏打印机连 ESCPOS 都不支持,就直接用 Java 写 Printable 打印,用 websocket 接收打印指令。
    Erroad
        11
    Erroad  
       2020-05-30 17:57:27 +08:00
    如果是我,我会告诉他,这两个是完全不同的东西,先加个一倍价钱,再慢慢砍
    fykang
        12
    fykang  
       2020-06-04 18:29:34 +08:00
    这个我写过,一个 esp32 联网模块,热敏打印机和 esp32 用串口通讯,云端通讯用 mqtt 协议。用 c/c++的 arduino 框架写嵌入式。和你刚好相反,我是先写了这个后来团队嫌不够美观要换商用的飞蛾打印机
    关于     帮助文档     自助推广系统   &nbs; 博客     API     FAQ     Solana     962 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 22:22 PVG 06:22 LAX 15:22 JFK 18:22
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86