无法使用Windows命令提示符打印双字节字符

时间:2013-09-08 19:09:57

标签: windows-7 batch-file printing windows-vista

我使用的旧软件需要从类似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提示。

1 个答案:

答案 0 :(得分:2)

在批处理文件的开头,尝试添加以下行:

chcp 65001

这会将代码页设置为UTF-8。它将无法在命令提示符中正确显示,但可能会根据您的打印机正确打印。

有关代码页的更多信息,请参阅this wiki page或有关Microsoft值的完整列表,请参阅this MSDN article