我不能用sewoo热敏打印机打印泰语作为php的原始数据

时间:2016-01-19 09:34:25

标签: php printing thermal-printer escpos

我正在尝试在热敏打印机sewoo SLK-T21EB上打印泰语。我可以打印英语,我也可以用esc / pos命令改变英语的字体大小。但是当我尝试打印泰语时会打印出一些我无法理解的东西。我使用PHP语言来做到这一点。我必须打印我的应用程序的收据。如果我尝试用Windows中的其他程序打印泰语,我可以打印。我正在使用wamp服务器。我的代码是

define( 'DOMPDF_ENABLE_AUTOLOAD', FALSE );
                require_once( Yii::app()->basePath . "/../vendor/dompdf/dompdf/dompdf_config.inc.php" );

                $dompdf = new DOMPDF();
                $dompdf->set_paper( "A2", 'landscape' );

                $html = $this->render( 'register', [
                        'dataProvider' => $dataProvider,
                        'batch' => $batch,
                        'course' => $course,
                        'pdf'   =>  $pdf
                    ], TRUE );
                 // echo $html;die();
                $dompdf->load_html( $html );
                $dompdf->render();
                $dompdf->stream( "{$course->course_name}-{$batch->batch_name}-admission_register.pdf", 
                    [ 'Attachment' => 0 ] );

请帮忙......

1 个答案:

答案 0 :(得分:0)

问题似乎是您没有告诉打印机应该打印哪种语言,或者您没有正确编码泰语字符串。

你可以尝试

printer_write($ph, utf8_encode("ฟกดเพำ"));

或者您可以尝试将打印机的语言格式设置为泰语的命令。因为我没有在你的帖子中看到这样的命令。在尝试用Java打印瑞典字符时遇到了类似的问题。但我使用字节而不是字符串:)

根据这里给出的答案can i change printer_write in another language?,您无法从php更改打印机的语言,也许您可​​以通过转到打印机的设置来更改语言?无论如何让我知道你是否解决了这个问题。