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

如何用Pandoc Lua过滤器为LaTeX转DOCX的quoting Div应用Quotations样式?

解决Pandoc转换LaTeX到DOCX时Quoting样式的Lua过滤器方案

编写思路

针对AST中带有quoting类的Div,我们需要修改其属性,让Pandoc在生成DOCX时识别并应用预设的Quotations样式。核心是给Div添加DOCX特定的样式元数据。

完整Lua过滤器代码

function Div(el)
  -- 检查Div是否包含"quoting"类
  if el.classes:includes("quoting") then
    -- 添加DOCX样式属性,指定使用"Quotations"样式
    el.attributes["custom-style"] = "Quotations"
    -- 返回修改后的Div节点
    return el
  end
  -- 非目标Div直接返回原节点
  return nil
end

使用方法

  • 将上述代码保存为quoting-to-docx-style.lua文件
  • 执行Pandoc转换命令时添加过滤器参数:
pandoc input.tex -o output.docx --lua-filter=quoting-to-docx-style.lua

原理说明

Pandoc生成DOCX时,会读取Div节点的custom-style属性,将其映射到DOCX模板中已定义的对应样式名。这里我们给目标Div添加该属性并指定为你预设的Quotations样式,就能让转换后的内容自动应用该样式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 15:54:57