Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

How to Print Thai Characters using OPOS

Posted on 2014-01-07
4
Medium Priority
?
1,045 Views
Last Modified: 2014-01-14
I am using the Microsoft Point of Service option to allow our POS application to print to OPOS compatible printers.  And generally it works well.  However, we have a customer that wishes to print Thai characters.

The printer I purchased for them is the Asian variant of the TM-U220A.  According to the specifications. this have the Thai character set built in.  However, when I send Thai characters, they do not print I get the ? unknown character printed instead.

I am using the Epson OPOS.Net ADK, and it also says I can print in Thai, but when I check the printer settings, the list of code pages does not include the Thai one.

All the documentation tells me this should work, but it doesn't.  Can anyone help?

Thanks
0
Comment
Question by:townsma
  • 2
  • 2
4 Comments
 
LVL 12

Expert Comment

by:Sandeep
ID: 39765365
0
 
LVL 12

Expert Comment

by:Sandeep
ID: 39765385
Please also make sure you have got the correct set of drivers installed for your Printer on the PC. Also make sure there is regional language installed on your Machine from where you are giving the print command. In Control Panel->Regional Settings you will get Language option.
0
 
LVL 6

Accepted Solution

by:
townsma earned 0 total points
ID: 39770189
Thanks for the feedback, but actually POS printers are text printers.  The regional settings in Windows has no impact on what they print.

I finally managed to get hold of someone in Epson Thailand, as I guessed this is a problem other Thai developers would have.

It turns out the solution is quite complex, and to make matters worse the only documentation on how the resolve it, is only available in Thai.

For other that may also come across this problem, the solution is as follows.

As your request is “Thai printing with OPOS.NET”

So, please use this command:
Chr(27) & Chr(116) & Chr(21) & Chr(&HBE) & Chr(&HD4) & Chr(&HC1) & Chr(&HBE) & Chr(&HEC) & Chr(&HE4) & Chr(&HB7) & Chr(&HC2)

Or how : Programming .Net
1.      To define the language Generally, it is defined as follows: Code table.
                Chr(27) & Chr(116) & Chr(20) : KU42 (¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿)
                Chr(27) & Chr(116) & Chr(21) : TIS11 (¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿.988)
                Chr(27) & Chr(116) & Chr(26) : TIS18 (¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿.¿¿¿¿¿¿)
      2.    Programming. NET Code table only if required to type in Thailand will not be available.
The print job can not be printed out as Thailand. But turns out to be a mark ???  Instead, as show
                           
3.      Please insert below source code for convert to Binary ( Remind : Insert behind code table refer step 1)
           Chr(&HBE) & Chr(&HD4) & Chr(&HC1) & Chr(&HBE) & Chr(&HEC) & Chr(&HE4) & Chr(&HB7) & Chr(&HC2)
               
                    4.  Result are can print Thai
                                             
I have not actually got this going yet, but this is what I received from Epson.

In addition to this you have to realign the characters, as in Thai, vowels are stacked on top of other letters.  Meaning a three pass system is required to printer the upper row of vowels, then the main row of characters, then the lower row, again I have been sent some Thai instructions on how to do this, but I have not worked them out yet.

If anyone want a copy please send me a private message and I will send the all the material I have.
0
 
LVL 6

Author Closing Comment

by:townsma
ID: 39778801
This is the official solution form Epson Thailand.
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This document covers how to connect to SQL Server and browse its contents.  It is meant for those new to Visual Studio and/or working with Microsoft SQL Server.  It is not a guide to building SQL Server database connections in your code.  This is mo…
Wouldn’t it be nice if you could test whether an element is contained in an array by using a Contains method just like the one available on List objects? Wouldn’t it be good if you could write code like this? (CODE) In .NET 3.5, this is possible…
In an interesting question (https://www.experts-exchange.com/questions/29008360/) here at Experts Exchange, a member asked how to split a single image into multiple images. The primary usage for this is to place many photographs on a flatbed scanner…
Please read the paragraph below before following the instructions in the video — there are important caveats in the paragraph that I did not mention in the video. If your PaperPort 12 or PaperPort 14 is failing to start, or crashing, or hanging, …
Suggested Courses

824 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question