我使用的旧软件需要从类似DOS的命令提示符环境进行打印,并且软件需要将默认打印机等双字节字符(如日语字体)打印出来。但是,每次我尝试打印时,角色都会显示为乱码(mojibake),并且无法让日语显示正确 实体论文。换句话说,如果我打印一个名为test.txt的文件,在test.txt内容中包含以下内容......
----------------
Hello
日本語です。
English
----------------
像“Hello and English”这样的单字节字符很好,但不是“日本语です”。 日语字符将显示为{*} + {〜=在实体纸上。 (顺便说一句,我刚在命令提示符下使用了命令“print.exe test.txt”。)
注意我从MS Word文档甚至文本文档打印都没有问题。
此外,我使用的是ESC / P打印机(Epson GP-710)。默认情况下也是如此 cmd.exe默认打印到LPT1,我将其映射到网络打印机 所以它可以打印到USB(我很确定这没有任何东西 通过执行类似下面的操作来处理字体问题。
1)共享打印机
2)NET USE LPT1: \\(PChostname123)\(printername) /PERSISTENT:YES
我同时使用Windows 7(64位)和Windows Vista,同样的问题 发生在两者上。我读过有关日本网站的文章 Windows 95 dos有一个解决方法,通过在Config.sys文件中添加文本 或者autoexec.bat文件,但它似乎不适用于Windows NT版本。
由于我现在别无选择,只能使用这个旧程序,它会是 真的很感激,如果有人知道双字节字符打印 从dos / cmd提示。
答案 0 :(得分:2)
在批处理文件的开头,尝试添加以下行:
chcp 65001
这会将代码页设置为UTF-8。它将无法在命令提示符中正确显示,但可能会根据您的打印机正确打印。
有关代码页的更多信息,请参阅this wiki page或有关Microsoft值的完整列表,请参阅this MSDN article。