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

求助:Confluence转Markdown及PDF生成的CI/CD流水线实现问题

解决Pandoc转换HTML表格转PDF被忽略的方案

1. 从根源解决:让docx转Markdown时生成原生Markdown表格

Pandoc默认处理复杂docx表格时可能生成HTML格式,直接调整转换命令强制输出原生Markdown表格:

pandoc -s input.docx -o output.md --to=gfm --extract-media=./media --markdown-table-style=pipe --wrap=none
  • --to=gfm:输出GitHub Flavored Markdown,对表格支持更友好
  • --markdown-table-style=pipe:强制生成pipe格式的原生Markdown表格,避免HTML格式
  • --wrap=none:防止表格内容自动换行导致格式混乱
  • --extract-media:同步提取Confluence导出的Gliffy图片到指定目录,确保Markdown图片链接有效

2. 处理已生成的含HTML表格的Markdown

如果已经有带HTML表格的Markdown文件,先将HTML表格转成原生Markdown表格,再生成PDF:

# 第一步:转换HTML表格为原生Markdown表格
pandoc -s input.md -o cleaned.md --from=markdown+raw_html --to=gfm --html-table-to-markdown

# 第二步:用清理后的Markdown生成PDF
pandoc -s cleaned.md -o output.pdf --pdf-engine=xelatex --template=your-custom-template.tex

3. 检查自定义LaTeX模板的表格支持

确保你的LaTeX模板中包含表格处理所需的包,否则原生Markdown表格转PDF时也可能异常:
在模板中添加:

\usepackage{longtable}  # 支持长表格分页
\usepackage{booktabs}   # 美化表格边框
\usepackage{tabularx}   # 自适应宽度表格

4. 复杂表格的脚本预处理方案

如果Confluence导出的docx包含合并单元格等复杂表格,Pandoc自动转换可能失效,用Python脚本手动提取并转换表格:

from docx import Document

def table_to_markdown(table):
    markdown_rows = []
    # 处理表头
    header_cells = [cell.text.strip() for cell in table.rows[0].cells]
    markdown_rows.append(f"| {' | '.join(header_cells)} |")
    markdown_rows.append(f"| {' | '.join(['---']*len(header_cells))} |")
    # 处理内容行
    for row in table.rows[1:]:
        row_cells = [cell.text.strip() for cell in row.cells]
        markdown_rows.append(f"| {' | '.join(row_cells)} |")
    return '\n'.join(markdown_rows)

# 读取docx并转换
doc = Document("input.docx")
final_content = ""
for para in doc.paragraphs:
    if para.text.strip():
        final_content += para.text.strip() + "\n\n"
for table in doc.tables:
    final_content += table_to_markdown(table) + "\n\n"

# 写入Markdown文件
with open("output.md", "w", encoding="utf-8") as f:
    f.write(final_content)

内容的提问来源于stack exchange,提问作者Steinar Kjærnsrød

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 01:01:05