Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

How to Print Thai Characters using OPOS

Posted on 2014-01-07
4
877 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

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

Suggested Solutions

The object model of .Net can be overwhelming at times – so overwhelming that quite trivial tasks often take hours of research. In this case, the task at hand was to populate the datagrid from SQL Server database in Visual Studio 2008 Windows applica…
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
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…

828 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