You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Odoo POS及Odoo 11厨房订单收据中修改字体大小

Odoo POS及厨房订单收据字体大小调整方案

嘿,我来帮你搞定这两个收据字体调整的问题!


问题1:如何在Odoo POS中修改订单收据的字体大小?

调整POS订单收据的字体大小,核心是找到对应的模板文件并修改格式属性,具体步骤如下:

  • 定位模板文件:默认的POS收据模板在point_of_sale/static/src/xml/pos_receipt.xml,如果你用的是自定义模块,记得通过继承方式修改,不要直接改动核心文件(避免升级丢失)。
  • 利用Odoo打印格式属性:Odoo的热敏打印支持size属性,可选值有normal(默认)、double-height(双倍高度)、double-width(双倍宽度)、double(同时双倍高宽)。比如要增大收据标题的字体,找到对应的标签添加属性:
    <h1 size="double-height"><t t-esc="receipt.name"/></h1>
    
  • 网页预览的CSS调整:如果是网页端预览的收据,还可以通过CSS样式直接调整,比如:
    <div style="font-size: 1.3em;"><t t-esc="line.product_name"/></div>
    
  • 生效方式:修改后重启Odoo服务,刷新POS页面(记得清除浏览器缓存),测试打印效果。

问题2:Odoo 11厨房订单收据商品名称字体增大方案

你尝试给NameWrapped模板传递size参数但没生效,问题出在NameWrapped默认没有接收并应用这个参数。下面给你两种可行的解决方案:

方案1:修改NameWrapped模板,支持传递size参数

  1. 首先找到NameWrapped模板的定义(通常在restaurant/static/src/xml/restaurant_receipt.xml文件中),原模板大概是这样:
    <t t-name="NameWrapped">
        <t t-foreach="change.name_wrapped[1:]" t-as="line">
            <line line-ratio='0.6'>
                <left><t t-esc="line"/></left>
                <right></right>
            </line>
        </t>
    </t>
    
  2. 修改模板,让它接收size参数并应用到<line>标签上:
    <t t-name="NameWrapped">
        <t t-foreach="change.name_wrapped[1:]" t-as="line">
            <line line-ratio='0.6' t-att-size="size">
                <left><t t-esc="line"/></left>
                <right></right>
            </line>
        </t>
    </t>
    
  3. 之后你原来的调用代码<t t-call="NameWrapped" size='double-height'/>就能生效了。

方案2:直接展开NameWrapped内容,跳过模板调用

如果不想修改NameWrapped模板,直接把它的内容替换到你的代码里,然后直接设置size属性:

<t t-foreach="changes.new" t-as="change"> 
    <div size="double-height" t-if="!change.order"> 
        <line line-ratio='0.6'> 
            <left><t t-esc="change.name_wrapped[0]" /></left> 
            <right><t t-esc="change.qty" /> 
            <t t-esc="change.unit" /></right> 
        </line>
        <!-- 替换NameWrapped调用为直接展开的代码 -->
        <t t-foreach="change.name_wrapped[1:]" t-as="line">
            <line line-ratio='0.6' size="double-height">
                <left><t t-esc="line"/></left>
                <right></right>
            </line>
        </t>
    </div>
</t>

额外提示

  • 如果是热敏打印机,优先用size属性,这是打印机原生支持的指令,效果更稳定;如果是普通打印/网页预览,也可以用style="font-size: 1.2em;"这类CSS样式调整。
  • 修改后记得重启Odoo,清空POS的缓存(在POS界面按F5刷新,或者在Odoo后台的POS会话中同步数据)。

内容的提问来源于stack exchange,提问作者user2379186

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.12 04:51:44