2015-05-23 2 views
2

Я использую Rstudio для записи документа RMarkdown, который я превращаю в PDF, используя MiKTeX для Windows через knitr и pandoc. Двигатель LaTeX - это xelatex.Гармозные или отсутствующие математические формулы LaTeX в RMarkdown-> PDF-документ, преобразованный в титр

Мой .Rmd файл YAML заголовок:

--- 
title: "My Title" 
author: "Me" 
geometry: margin=2cm 
output: 
    pdf_document: 
    fig_caption: no 
    fig_height: 4 
    fig_width: 6 
    latex_engine: xelatex 
    html_document: 
    css: styles.css 
    keep_md: no 
fontsize: 10pt 
--- 

В тексте у меня есть

...parameter $\lambda=0.2$ with... 

и я получаю "параметр = 0 2 с" - как лямбда и даже точки являются отсутствует.

Эта линия

mean of $\frac{1}{\lambda}=5$ of the 

превращается в

enter image description here


EDIT: Когда я пытаюсь добавить в качестве эксперимента (я на Windows)

mainfont: Arial 

- заголовок YAML я получаю ошибку pandoc

! Undefined control sequence. 
\fontspec_calc_scale:n ...ec_tmpb_dim }\fp_div:Nn 
                \l_fontspec_tmpa_fp {\l_fo... 
l.18  \setmainfont{Arial} 

pandoc.exe: Error producing PDF from TeX source 
Error: pandoc document conversion failed with error 43 

UPDATE:

Запуск pdflatex report1.pdf производит правильный PDF.

RStudio работает "C:/Program Files/RStudio/bin/pandoc/pandoc" report1.utf8.md --to latex --from markdown+autolink_bare_uris+ascii_identifiers+tex_math_single_backslash-implicit_figures --output report1.pdf --template "D:\Documents\R\win-library\3.2\rmarkdown\rmd\latex\default.tex" --highlight-style tango --latex-engine xelatex

Так кажется, в другом месте рекомендуется двигатель "xelatex" производит дефектный выход, в то время как "pdflatex" работает. К сожалению, я забыл причины, данные некоторыми источниками, в т.ч. SO, что я последовал несколько дней назад при переключении на xelatex, я только помню, что было настоятельно рекомендовано использовать это с knitr в RStudio, а не pdflatex.

+0

работает на моем компьютере (Linux, livetex). Не могли бы вы попробовать это шаг за шагом: сначала конвертируйте свой Rmd в md с помощью 'knitr :: knit', затем md в латекс с' pandoc', затем латекс в pdf с 'xelatex'? – scoa

+0

Вот LaTeX, все в порядке: http://pastebin.com/J9LY53gS Итак, я думаю, это вопрос MiKTeX/Windows. –

+0

Я не могу воспроизвести это на Linux или Windows. Я также думаю, что это проблема установки MikTeX. Вы не представили версию MikTeX (если это не последняя версия, попробуйте обновить). Вы также можете обновить RStudio (http://www.rstudio.com/products/rstudio/download/preview/) и ваши пакеты R.Кстати, у меня нет сильных аргументов в пользу использования xelatex, если вы не работаете с символами CJK. Для простых английских документов я не знаю, почему pdflatex может быть плохим выбором. –

ответ

1

Я отправляю этот ответ, чтобы увеличить видимость комментария @ user1983395 относительно этой ошибки.

Я столкнулся с той же ошибкой, что и OP. pdflatex только что произвел указанную ошибку, а xelatex вызвал ошибку при каждом вызове математической формулы ($ X_i $ или $$ X_i $$).

После запуска C:\Program Files\MiKTeX 2.9\miktex\bin\x64\updmap.exe Мне удалось создать pdf-файл с pdflatex и xelatex. Обратите внимание, что вам может потребоваться запустить его как администратор .