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

Ubuntu 22.04 LTS下使用pypandoc转换RTF到PDF遇格式不支持问题,如何添加RTF格式支持?

Ubuntu 22.04 LTS下使用pypandoc转换RTF到PDF遇格式不支持问题,如何添加RTF格式支持?

你好呀!我看你在Ubuntu 22.04 LTS上尝试用Python的pypandoc库把RTF文件转成PDF,结果碰到了格式不支持的报错,确实挺闹心的😅

其实问题出在pypandoc本身只是pandoc工具的Python封装,真正处理格式解析的是你系统里安装的pandoc程序。Ubuntu 22.04默认自带的pandoc可能缺少RTF格式的解析支持,所以才会弹出那个“Invalid input format”的错误提示。

给你一套亲测有效的解决步骤:

  • 第一步:安装完整的依赖组件
    打开终端,运行下面的命令,更新系统包并安装pandoc的RTF支持组件和PDF生成需要的LaTeX环境:

    sudo apt update && sudo apt install pandoc libtext-rtf-perl texlive-full
    

    这里libtext-rtf-perl是用来解析RTF格式的核心依赖,texlive-full则保证pandoc能顺利生成PDF文件。

  • 第二步:验证RTF格式支持
    安装完成后,在终端里输入以下命令,检查pandoc是否已经支持RTF输入:

    pandoc --list-input-formats | grep rtf
    

    如果输出里能看到rtf,就说明支持已经生效了。

  • 第三步:调整Python代码(可选但更稳妥)
    你的原代码其实没问题,但可以明确指定输入格式为rtf,避免自动识别出错,修改后的代码如下:

    import pypandoc
    
    def convert_rtf_to_pdf(input_rtf, output_pdf):
        # 明确指定输入格式为rtf,提升转换稳定性
        pypandoc.convert_file(input_rtf, 'pdf', outputfile=output_pdf, format='rtf')
    
    if __name__ == "__main__":
        input_rtf_path = "/home/yourname/documents/input.rtf"  # 替换成你的RTF文件实际路径
        output_pdf_path = "/home/yourname/documents/output.pdf"  # 替换成输出PDF的路径
    
        convert_rtf_to_pdf(input_rtf_path, output_pdf_path)
    

如果还是遇到问题,可以尝试在convert_file函数里指定pandoc的路径(比如pandoc_path='/usr/bin/pandoc'),确保pypandoc能找到系统里正确的pandoc程序。

备注:内容来源于stack exchange,提问作者Pedroski

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.17 10:34:35