package main import ( "log" "os" "github.com/hennedo/escpos" "github.com/qiniu/iconv" ) func encode(input string) []byte { cd, err := iconv.Open("cp437", "utf-8") if err != nil { log.Fatalf("failed to load cp437 encoding: %v\n", err) } outbuf := make([]byte, len(input)+32) encoded, _, err := cd.Conv([]byte(input), outbuf) if err != nil { log.Fatalf("failed to convert to cp437: %v\n", err) } return encoded } func main() { p := escpos.New(os.Stdout) p.WriteRaw(encode(os.Args[1])) p.LineFeed() p.LineFeed() p.LineFeed() p.PrintAndCut() }