Skip to main content

A tool to convert LaTeX documents to Markdown format

Project description

LaTeX2Md - LaTeX to Markdown 转换器

latex to md 初始化版本,针对复杂学术论文project,处理仍有问题欢迎贡献

LaTeX2Md 是一个强大的 Python 工具,可将 LaTeX 文档转换为 Markdown 格式,同时保留结构、格式、图片、表格、公式和引用。它特别适用于学术论文和复杂文档的转换。

特性

  • 将 LaTeX 章节、小节和格式转换为 Markdown
  • 处理图片,并将其复制到输出目录
  • 将 LaTeX 表格转换为 Markdown 表格
  • 使用 Markdown 数学语法保留数学公式
  • 处理引用和参考文献
  • 支持多列布局
  • 处理包含多个文件的学术论文项目结构
  • 保留文档结构和交叉引用

安装

pip install latex2md

使用方法

命令行使用

基本用法 - 转换单个 LaTeX 文件到 Markdown:

latex2md path/to/your/document.tex

Python 代码中使用

from latex2md import latex2md

# 创建转换器实例
converter = latex2md("input.tex", "output.md")

# 处理项目文件
converter.consolidate_project()

# 加载并转换文件
if converter.load_file():
    converter.convert()
    converter.save_file()

# 重要参数说明
# input_file: str - LaTeX 源文件路径
# output_file: str - 输出 Markdown 文件路径
# image_dir: str - 图片保存目录(默认为 'images')
# project_dir: str - LaTeX 项目根目录(可选)
# verbose: bool - 是否显示详细输出(默认 False)

# 带参数的完整示例
converter = latex2md(
    input_file="path/to/your/document.tex",
    output_file="custom_output.md",
    image_dir="custom_images",
    project_dir="project_root",
    verbose=True
)
converter.consolidate_project()
if converter.load_file():
    converter.convert()
    converter.save_file()

命令行高级选项

latex2md path/to/your/document.tex -o custom_output.md -i custom_images_dir -p project_directory -v

选项:

  • -o, --output:指定输出 Markdown 文件路径
  • -i, --image-dir:指定保存图片的目录(默认为 images)
  • -p, --project-dir:指定 LaTeX 项目的根目录(用于处理多文件项目)
  • -v, --verbose:显示详细输出信息

转换学术论文项目

对于包含多个文件的学术论文项目:

latex2md path/to/main.tex -p path/to/project_directory

输出结构

  • 对于单个文件转换:创建 filename_md 文件夹,包含 Markdown 文件和 images 子文件夹
  • 对于项目转换:创建 project_name_md 文件夹,包含转换后的内容和 images 子文件夹

中文支持

LaTeX2Md 完全支持中文内容的转换。对于包含中文的 LaTeX 文档,转换后的 Markdown 将正确保留所有中文字符。

常见问题

图片转换问题

如果 LaTeX 文档中包含 PDF 图片,LaTeX2Md 会尝试将其复制为 PNG 文件。对于更好的转换效果,建议使用图像处理工具(如 pymupdf)将 PDF 转换为 PNG。

复杂数学公式

对于非常复杂的数学公式,可能需要在转换后手动调整。LaTeX2Md 使用 Markdown 的数学语法(通常是 MathJax 或 KaTeX 兼容的语法)来表示公式。

表格处理

复杂的 LaTeX 表格(如合并单元格或特殊格式)可能需要在转换后手动调整。

贡献

欢迎贡献!请随时提交问题报告或拉取请求。

许可证

本项目采用 MIT 许可证。详见 LICENSE 文件。

希望这个工具能帮助您轻松将 LaTeX 文档转换为 Markdown 格式!如有任何问题或建议,请通过 GitHub Issues 联系我们。

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

latex2md-0.1.1.tar.gz (18.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

latex2md-0.1.1-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

Details for the file latex2md-0.1.1.tar.gz.

File metadata

  • Download URL: latex2md-0.1.1.tar.gz
  • Upload date:
  • Size: 18.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.0

File hashes

Hashes for latex2md-0.1.1.tar.gz
Algorithm Hash digest
SHA256 2ee8a2cd830affae6d225f781bdced0d79ecb8e0099968668eec2a3725be3282
MD5 a95e2b5241d0abcb9d2b5e64879afd8d
BLAKE2b-256 c5ca611aba6e9864af3de3502178d434f5db36e4cbe436a5a08c0186c1445f44

See more details on using hashes here.

File details

Details for the file latex2md-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: latex2md-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 17.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.0

File hashes

Hashes for latex2md-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ed92164a4fbe18e58c748d29f9b0dce28fbcfdc8ca3ae619d6956bfe5a03a0a7
MD5 571066b4871a295b69f0733daea5152b
BLAKE2b-256 c730e3c2bc7092876d2613d4f54b44ab039cf1e606c93e896d62bc9bb12a89db

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page