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

如何用Pandoc将LaTeX转HTML时保留C代码片段的语法高亮?

解决Pandoc转换LaTeX到HTML时代码无语法高亮的方案

方案一:启用Pandoc内置语法高亮

Pandoc自带语法高亮功能,转换时需明确指定与minted兼容的高亮引擎,并让HTML内嵌高亮样式:

执行转换命令:

pandoc -N -f latex --highlight-style pygments -t html example.tex -o example.html
  • --highlight-style pygments:指定使用pygments作为高亮引擎,和LaTeX中minted依赖的引擎一致,保证语法规则匹配
  • 生成的HTML会自动内嵌代码高亮的CSS样式,无需额外操作即可看到彩色高亮效果

方案二:保留minted配置并手动引入样式

如果要保留minted的行号、背景色等配置,需让Pandoc解析minted环境为带标识的代码块,再补充高亮样式:

  1. 执行转换命令时添加参数保留minted结构:
pandoc -N -f latex+raw_tex --parse-raw -t html example.tex -o example.html
  1. 生成pygments样式文件:
pygmentize -S default -f html > pygments.css
  1. 在生成的HTML的<head>标签中引入样式:
<link rel="stylesheet" href="pygments.css">

方案三:改用Pandoc原生代码块(最简方案)

若无需严格保留LaTeX的minted特定格式,可将minted环境替换为Pandoc原生代码块,转换时自动触发高亮:

修改后的LaTeX代码:

\documentclass[a4paper]{report}
\begin{document}
```c
void main()
{
    printf("I need help!\n");
}

\end{document}

再用原命令转换即可:
```bash
pandoc -N -f latex -t html example.tex -o example.html

内容的提问来源于stack exchange,提问作者infcs.ltd

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 12:10:03