首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Go中打印?

如何在Go中打印?
EN

Stack Overflow用户
提问于 2021-04-01 08:09:10
回答 2查看 203关注 0票数 0

我正在开发一个使用ESC-POS命令在热敏打印机上打印的软件包,我已经生成了要打印的文件,但要打印它,我使用CMD命令:print /D:\\myPC\\POS-58-Series printfile

我尝试使用:exec.Command("print", "/D:\\myPC\\POS-58-Series", "printfile").Run(),但它不起作用

有没有一种方法可以像我正在尝试做的那样使用Go命令打印,或者我需要使用其他命令?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-04-02 09:08:33

最后我做了一下,我找到了mike42的escpos-php库。

https://github.com/mike42/escpos-php

问题是它使用php,我在go中需要它,检查它的代码,我发现它使用复制功能将带有esc/pos代码的文件发送到打印机,不幸的是在go中它不是那么简单,但幸运的是我找到了页面php2golang,在那里我找到了一种方法。

https://www.php2golang.com/method/function.copy.html

所以,我的最终代码是

代码语言:javascript
运行
复制
func main () {
    Copy ("printfile", "\\\\myPC\\\\POS-58-Series")
}

func Copy (source, dest string) (bool, error) {
    fd1, err: = os.Open (source)
    if err! = nil {
        return false, err
    }

    defer fd1.Close ()
    fd2, err: = os.OpenFile (dest, os.O_WRONLY | os.O_CREATE, 0644)
    if err! = nil {
        return false, err
    }

    defer fd2.Close ()
    _, e: = io.Copy (fd2, fd1)
    if e! = nil {
        return false, e
     }
    return true, nil
}
票数 0
EN

Stack Overflow用户

发布于 2021-04-01 08:29:55

取决于您是否需要格式化输出...但您可能希望查看https://github.com/alexbrainman/printer,看看这是否解决了您的打印问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66896837

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档