浏览器打印的收据上没有徽标
症状: 从浏览器标签页打印的收据内容完整,唯独没有店铺徽标。同一张收据从桌面或移动应用打印时,徽标正常。
原因说明
徽标存放在你的 WordPress 媒体库中,浏览器要从那里取回它。网页要读取来自其他地址的图片的像素数据之前,存放该图片的服务器必须通过一个名为 Access-Control-Allow-Origin 的响应头明确表示允许。WordPress 默认不会为上传的文件发送这个响应头,所以浏览器拿到的图片只能显示,不能打印。
应用无法绕过这一点——它宁可打印一张没有徽标的收据,也不会让这笔销售失败。桌面和移动应用是自己取回文件的,不受这条规则约束。
这样做
选一个适合店里的办法:
- 改用桌面应用打印。 无需任何配置,如果收银台上已经装了它,这是最快的答案。
- 在你的站点上放行这个响应头。 由站点管理者在网页服务器配置中,或用一个可设置 CORS 响应头的插件,为上传目录添加
Access-Control-Allow-Origin。完成后重新加载 POS 再打印一次。
如果徽标打印出来是杂点
打出一片随机墨点而不是徽标,那是另一个问题:有些较旧的低价打印机无法解码所用的图像格式。请把徽标从那台打印机的收据模板中移除。
仍未解决?
在故障提示界面上使用 复制设置报告,把内容连同徽标图片的地址一起粘贴到你的消息里。