0

我正在尝试在热敏打印机(Posiflex PP8X 系列)上打印阿拉伯语文本。我正在使用 Microsoft Point of Service for .NET API (POS.net V1.12)。但是,打印机上的输出显示问号。通过从 Posiflex OPOS Manager 打印测试,我确保我的打印机可以打印阿拉伯语。

在将文本发送到打印机之前,我也尝试过对文本进行 UTF-8 编码,但没有用。

以下是我的代码示例,希望有人能告诉我是否遗漏了什么:

    Dim posPrinter As PosPrinter = Nothing
    Dim strLogicalName As String = "PosPrinter"
    Dim deviceInfo As DeviceInfo = Nothing
    Dim posExplorer As New Microsoft.PointOfService.PosExplorer
    Dim myString As String = "Some Text in Arabic"

    deviceInfo = posExplorer.GetDevice(DeviceType.PosPrinter, strLogicalName)
    posPrinter = posExplorer.CreateInstance(deviceInfo)
    posPrinter.Open()
    If Not posPrinter.Claimed Then
       posPrinter.Claim(1000)
    End If
    posPrinter.DeviceEnabled = True
    posPrinter.CharacterSet = 864
    posPrinter.PrintNormal(PrinterStation.Receipt, myString)

提前谢谢了。

4

2 回答 2

0

我建议您使用例如设计收据,Crystal Reports然后将其打印到热敏打印机上。过去,我很难使用他们的库从代码本身打印。我必须做一些字符映射,什么不行!

看看我一年多前问的这个问题。

就在几个月前,我发现我可以制作一份报告并打印到打印机!

于 2013-01-21T21:02:50.810 回答
-1

您可以使用任何报告器,如 Microsoft 报告查看器或水晶报告来设计您的收据,然后您可以打印它,这将处理语言问题,因为它取决于 Windows 字体。

于 2013-10-28T23:57:34.127 回答