在阿拉伯语国家开店:小票打印会遇到什么问题
这篇讲一件很具体的事:为什么阿拉伯语的小票特别容易印错, 以及你验收的时候该看哪几个地方。
如果你要去中东、北非开店,这个问题绕不过去。而且它有个很坑的特点: 不懂阿拉伯语的人看不出来印错了。 印出来一排阿拉伯字母, 看着挺像那么回事,实际上当地人拿到手是读不通的。
所以这篇的重点不是技术原理,是你怎么在付钱之前就发现问题。
本文核对状态
排版规则本身是国际标准里写死的,比较稳定。但和打印机型号相关的部分 各家不一样,必须拿你实际要买的机器去试。
待核实清单 ——
TODO: verify
- 你要买的那台打印机,是机器自己处理阿拉伯语连笔,还是要靠软件处理。 这一条决定了软件和硬件能不能配上,必须打样确认。
- 打印机自带的字库覆不覆盖需要的字符。
- 你要去的那个国家,小票上习惯用哪种数字(西文数字还是阿拉伯数字)。
- 当地货币符号打印机能不能印出来。
- 当地对小票语言、税额用什么文字显示,有没有法律要求。
一、为什么阿拉伯语特别容易出问题
三件事凑在一起:
第一,字要从右往左排。 这个大家都知道。
第二,数字仍然是从左往右的。 这是最反直觉的一点。
一行阿拉伯文里夹着的金额 1,234.50,它本身还是从左读到右,
但整行是从右往左排的。所以金额会出现在行的左边——这是对的,不是印反了。
很多人第一次看到会以为出错了,要求供应商"改回来",反而改错。
第三,阿拉伯字母要连笔。 同一个字母在词首、词中、词尾长得不一样, 而且是连在一起写的。如果处理不对,印出来就是一个个字母孤零零分开—— 就像把"你好"印成"亻尔女子",字都在,但不成词。
打印机本身不会处理这些规则,它只是把收到的东西照着从左往右印出来。 所有的排版必须由软件在发给打印机之前算好。这就是为什么 "我们支持多语言"和"我们做过阿拉伯语小票"是两回事。
二、你会看到的三种典型错误
拿到样张,重点找这三样:
错误一:字母是散开的,没连起来。 最常见,也最好认。你不认识阿拉伯语也能看出来:正常的阿拉伯文是连续起伏的一条线, 散开的字母之间有明显的空隙,像一颗一颗排着。看到这个,直接退回去。
错误二:金额或者符号跑到了错误的一边。
比如负号跑到数字后面变成 10%-,或者小数点从数字里掉出来,
1,234.50 印成 .1,234 50。这个要一行一行核对总计那几行。
错误三:方框、问号,或者空白。 打印机字库里没有这个字,最典型的是货币符号。 一个方框出现在价格的位置,顾客是看不懂的——这种情况宁可印货币的字母代码。
三、验收清单:打一张样张,看这十处
要求供应商用你实际要买的那台打印机打样,不要看电脑截图。 屏幕上显示正常和打印出来正常,完全是两回事——电脑有自己的排版引擎,打印机没有。
| 序号 | 看什么 | 合格标准 |
|---|---|---|
| 1 | 任意一个阿拉伯词 | 字母连成一条线,不是一颗一颗分开 |
| 2 | 商品名里带拉丁字母的品牌(比如可乐) | 这一行的整体排版方向没有跟着翻过来 |
| 3 | 数量乘单价那一行 | 数字部分从左往右读,小数点在数字中间没跑掉 |
| 4 | 折扣行 | 负号和百分号紧挨着数字,在正确的一边 |
| 5 | 连续几行商品,名字长短不一 | 金额的小数点是上下对齐的一条竖线 |
| 6 | 从供应商那里拿的真实商品名(不是干净的测试数据) | 列还是对齐的,没有歪 |
| 7 | 当地货币符号 | 印出来是个符号,不是方框或空白 |
| 8 | 80 毫米和 58 毫米各打一张 | 两张都能看,58 毫米的不是把 80 毫米的挤扁 |
| 9 | 把一张旧单据重打一次 | 和原来那张一模一样 |
| 10 | 括号 | 方向对(右到左排版时括号是镜像的) |
第 1、2、6 条必须找一个懂阿拉伯语的人看。 这三种错误对不懂的人来说都"看着没问题"。 找当地的供应商、房东、以后要雇的店员,谁都行,看一眼几分钟的事, 比事后返工便宜太多。
四、数字用哪一种
阿拉伯语世界的小票上,数字有两种写法:
一种是我们熟悉的 0123456789,另一种是阿拉伯数字 ٠١٢٣٤٥٦٧٨٩。
哪种合适取决于你去哪个国家(TODO: verify)。
海湾国家和埃及的商业单据上,用我们熟悉的那种写法很常见,但不是所有地方都一样。
选系统时问一句:这个能不能设置切换? 能设置就不用现在纠结,到当地看看别人家小票怎么印的,跟着改就行。 如果软件写死了一种,那就是赌运气。
一个提醒:同一张小票上不要两种数字混着用,看着很怪。
五、打印机怎么挑,问供应商什么
阿拉伯语这块,最省事的做法是让软件把小票渲染成图片再打印。 这样连笔、方向、字库的问题一次性全绕开了,代价是打印慢一点点, 日常用感觉不出来。
你不用懂原理,把这几个问题问出去,从回答就能判断对方做没做过:
- 阿拉伯语小票你们是怎么处理的?是靠打印机的阿拉伯语字库, 还是软件渲染成图片打印? 答不上来这个区别的,基本没做过。
- 我要买的是 [具体型号],你们在这个型号上试过阿拉伯语吗? 能不能现在打一张给我看?
- 金额那一列的小数点能不能对齐?
- 商品名太长换行的时候,会不会从一个词中间截断? (阿拉伯语从中间截断会变成另一个词,不是简单的少几个字母。)
- 80 毫米和 58 毫米是不是两套模板?
- 当地货币符号印不出来的话,能不能退一步印字母代码?
- 小票上的字号、行距我能不能自己调?
第 1 条是分水岭。
六、语言怎么配
和其他国家一样:店员看阿拉伯语,你自己看中文,同一套账。 语言跟着登录的人走,小票模板的语言单独设。
两个地区性的差别值得注意:
海湾国家:小票上阿拉伯语和英语并排出现很常见。
有些国家对税额用什么文字显示可能有要求(TODO: verify),
这个要问当地会计,别自己定。
北非(摩洛哥、阿尔及利亚、突尼斯):法语在商业场合用得非常多, 很多单据是阿拉伯语和法语一起印的。 如果你去这几个国家,要提前确认小票需不需要双语, 因为一张小票上同时有从右往左和从左往右的文字, 前面说的那些排版问题会更集中地出现。选系统时要专门说明这个需求。
商品两个名字同样需要:中文内部名 + 阿拉伯语小票名。 阿拉伯语商品名你大概率认不出来,这个字段省不掉。
最后一句
这一篇里所有的问题,都有一个共同点: 它们在电脑上看不出来,在样张上一眼就能看出来。
所以只做一件事的话,就做这件:付钱之前, 让供应商用你要买的那台打印机、你的实际商品名,打一张真的小票, 拿给一个懂阿拉伯语的人看。
由秘奥软件(MISAll)团队维护。最后更新:2026-08