php - PHP:在printer_write($handle,$string)中打印阿拉伯字符时出现问题;
问题描述
我正在使用php_printer.dll
在餐厅的特定厨房自动打印订单。问题是打印收据中的阿拉伯字符无法以正确的方式显示(例如:سكر باكت),而同一台打印机可以使用 windows.print() 打印不同的收据而没有任何问题并显示阿拉伯语字符正确。
这是代码的一部分:
$handle = printer_open("\\\\192.168.1.105\\xp-80");'
printer_set_option($handle, PRINTER_MODE, "RAW");'
printer_set_option($handle, PRINTER_TEXT_ALIGN, PRINTER_TA_RIGHT);'
'printer_start_doc($handle, "My Order");'
'printer_start_page($handle);'
'$rFont=printer_create_font("font-face", 20, 10, PRINTER_FW_MEDIUM, false, false, false, -50);'
'printer_select_font($handle, $rFont);'
'printer_write($handle, "بون تحضير ");'
'printer_write($handle, "\n");'
'printer_delete_font($rFont);'
'printer_end_page($handle);'
'printer_end_doc($handle);'
'printer_close($handle);'
注意:打印机是 xprinter-80 我也尝试了另一台,但我收到了同样的问题
解决方案
尝试这个:
$arabicData="ون تحضير";
$EncodedArabicData= utf8_encode($arabicData);
$EncodedArabicData
并在写入打印机时使用该变量,即:
printer_write($handle, $EncodedArabicData);
推荐阅读
- php - [Vue 警告]:属性或方法“msg”未在实例上定义,但在渲染期间被引用。(“内容”)...等
- javascript - 在 owl-date-time 中选择日期后如何自动关闭日历?
- php - Laravel Blade - 按 id 检索元素
- php - 基于 Symfony 组件的依赖注入【抽象控制器】
- r - 将多面图与常见面结合起来
- python - 从 json 文件中选择随机值
- c# - 尝试显示错误消息时应用程序崩溃
- html - 具有两列的容器流体。右侧需要限制
- sql-server - 如何使用 onprem 中的 sqlpackage 提取 bacpac 并将其直接发送到 azure 存储帐户?
- python - numpy 大小在大列表上失败