【问题标题】:pandoc document conversion failed with error 43 : pdflatex: The memory dump file could not be foundpandoc 文档转换失败,出现错误 43:pdflatex:找不到内存转储文件
【发布时间】:2014-11-09 11:17:34
【问题描述】:

RStudio:0.98.994 操作系统:Microsoft Windows 7 Ultimate Edition,64 位 Service Pack 1 MiKTeX:2.9.4503

嗨,

我在尝试编织 PDF 文档时收到以下错误。

pandoc.exe:从 TeX 源生成 PDF 时出错。 这是 pdfTeX,版本 3.1415926-1.40.11 (MiKTeX 2.9) pdflatex:找不到内存转储文件。 pdflatex:数据:pdflatex.fmt

【问题讨论】:

    标签: rstudio pandoc


    【解决方案1】:

    我也尝试了 devtools::install_github('rstudio/rmarkdown'),但是当我将 'fig.align='center' 添加到ggplot2 在我的文档中绘制。它可以用作 HTML,但不能用作 PDF。

    看到 isomorphismes 的帖子后,我点击了 knit PDF 按钮旁边的齿轮符号,然后在高级选项卡下我将 LaTeX 引擎更改为 弹性纤维。之后我不再收到错误消息,并且我的 PDF 文档创建时没有问题。

    谢谢。

    【讨论】:

    • 当错误是由图形对齐块选项引起时,将 LaTeX 引擎更改为 xelatex 对我有用。
    • 我遇到了同样的问题并使用 xelatex 将引擎更改为 lualatex 导致关于缺少 fontconfig 的错误文件。
    【解决方案2】:

    我在这里找到了答案:http://rmarkdown.rstudio.com/tufte_handout_format.html#comment-1582377678

    问题是你需要将\usepackage[utf8]{inputnc}添加到rmarkdown包中tufte-handout.tex文件的前导中。

    此处已修复:https://github.com/rstudio/rmarkdown/commit/484d5b8e903e0e0c75c82f707efa35f9fd9a52b0

    要更新你的 rmarkdown 包,你可以直接在 RStudio 命令行中使用

    devtools::install_github("rstudio/rmarkdown")
    

    【讨论】:

    • 非常感谢,一个对我有用的全方位服务解决方案。
    • 这对我很有帮助。我所做的只是运行代码 devtools::install_github("rstudio/rmarkdown")。现在它可以工作了。谢谢! :D
    【解决方案3】:

    在编织成 PDF 时,上述方法都不适合我(我想保留科学记数法)。问题是生成的乳胶代码包含“\times”而没有必要的 $ 括号。在降价中,我只是简单地将内联 R 代码用 $ 括起来,如下所示:

    $p = `r signif(cor.HF$p.value, 2)`$
    

    瞧!

    【讨论】:

      【解决方案4】:

      很高兴与您分享我的解决方案。

      ---
      title: "Untitled"
      author: "-----"
      date: "21/6/2017"
      output: 
        pdf_document: 
          latex_engine: xelatex
      ---
      

      【讨论】:

      • 虽然其他解决方案对我不起作用,但它确实有效
      【解决方案5】:

      我能够在我的情况下修复它。如果我将浮点值添加到 R 试图显示为科学记数法的文本中,我在从 Rmd 生成 PDF 时遇到了该错误。例如,它尝试添加文本“5.2027472 e10-5”而不是“520274.72”,这会导致未编译的乳胶代码 \textbf{5.2027472\times 10\^{}{5}}。我通过用 format(....,scientific=FALSE) 包装它来修复它。

      替换 r round(txn_pd,2)

      r format(round(txn_pd,2),scientific=FALSE)

      【讨论】:

        【解决方案6】:

        我遇到了同样的问题,devtools::install_github('rstudio/rmarkdown') 对我不起作用。我需要

        rmarkdown::render('in.md',
        
              output_format=pdf_document(latex_engine='xelatex')
        
              )
        

        在自己的行上使用新命令(使用xelatex)。

        【讨论】:

          【解决方案7】:

          我在尝试添加内嵌 r 代码 r test1$p.value 时遇到了这个问题,这是 t 测试 中的一个非常小的 p 值。错误信息如下:

          > ! Missing $ inserted.  
          >  <inserted text>  
          >            $  
          >l.147   9.0044314\times  
          >
          >pandoc: Error producing PDF
          >Error: pandoc document conversion failed with error 43
          >Execution halted
          

          我认为问题在于 pdflatex 引擎在以指数表示法显示小 p 值时存在问题。 我通过单击 knit 按钮旁边的齿轮符号解决了这个问题,然后在 输出选项,高级选项卡下我将 LaTeX 引擎更改为 lualatex,或者您可以将 p 值报告为 p 。

          【讨论】:

            【解决方案8】:

            如果您在 R 代码中使用科学格式(太小或太大)的内联值,请将它们格式化为:

            替换r x

            r format(x, digits=n) 其中 n 是什么。

            【讨论】:

              【解决方案9】:

              对我来说,这是因为我在标题上放了 + 号。例如gene + treatment. 这个错误但是当我删除它时,它可以工作。

              【讨论】:

                【解决方案10】:

                在我的情况下,只需在以下位置编辑作者字段即可解决:

                ---
                title: "Document Title"
                author: '-----'
                date: "21-03-2017"
                output: pdf_document
                ---

                默认的 '-----' 会产生错误,但将其替换为任何内容(例如 'Juan')即可解决问题。

                【讨论】:

                  【解决方案11】:

                  我刚刚遇到这个问题并且已经解决了。我没有像其他人在他们的帖子中那样使用任何代码。 我假设你已经安装了所有这些基本的东西:R、RStudio、rmarkdown 包、knitr 包和 MikTex 基本安装(我知道这是非常基本的,但我希望那些初学者知道你需要这些东西来做到这一点)。 如果遇到此问题,请转到 R GUI,升级 rmarkdown 包,然后它应该可以工作了。请注意,如果您将 LaTeX 引擎更改为 xelatex,就像投票最高的海报所做的那样,它可能对您不起作用,至少对我不起作用。我将我的乳胶引擎保持原样(pdflatex)。

                  【讨论】:

                    【解决方案12】:

                    我遇到了类似的问题。我的解决方案是删除 YAML 标题参数中的“前导”句点:

                    不起作用:

                    ---  
                    title: “1. Title”  
                    output: pdf_document  
                    ---  
                    

                    输出文件:example.knit.md

                    ! \reserved@a 的参数有一个额外的}。 \par l.79 \end{枚举}}

                    pandoc:生成 PDF 错误错误:pandoc 文档转换失败 错误 43 执行停止

                    作品:

                    ---
                    title: “1 Title”
                    output: pdf_document
                    ---
                    

                    【讨论】:

                      【解决方案13】:

                      我确实尝试使用 xelatex 引擎,但仍然收到 xetex.def 未找到的错误。这是另一个需要解决的问题。

                      output:
                        pdf_document: 
                          keep_tex: yes
                          latex_engine: xelatex
                      

                      然后在你的 TEX 编辑器中打开 .tex 文件并像往常一样构建 pdf。

                      【讨论】:

                        【解决方案14】:

                        我遇到了类似的问题。就我而言,发生错误是因为在 $ 符号内放置了一个百分比。 像这样,

                        $95%$,我去掉了 % 符号,一切正常。

                        【讨论】:

                          猜你喜欢
                          • 2018-02-23
                          • 2015-01-14
                          • 2017-05-08
                          • 2015-09-02
                          • 2017-07-14
                          • 2016-04-13
                          • 1970-01-01
                          • 2020-02-22
                          • 2019-10-14
                          相关资源
                          最近更新 更多