如何将 .sty 文件添加到 rmarkdown pdf_output

Cor*_*ton 3 latex r tex r-markdown

我不确定我在这里是否有正确的方法,我一整天都在寻找一种方法来做到这一点,没有一个文档的说明足够明确。

我想使用如下所示的模板样式:

在此输入图像描述

我有 .sty 文件。我尝试在 rmarkdown 中连接该文件,标题如下:


---
title: "title"
author: "author"
date: "`r format(Sys.time(), '%d %B, %Y')`"
mainfont: Arial
output:
    pdf_document:
      latex_engine: xelatex
      includes:
        template: analysis_orax.sty

---
Run Code Online (Sandbox Code Playgroud)

然而,这并没有添加样式。如果我添加 .tex 文件,它会添加所有正文文本,这不是我想要的。

我不太喜欢使用 .tex 或 .sty;我想要的只是有一个格式良好的 .pdf 报告!

.sty:

\usepackage{titlesec} 
\usepackage{tikz}
\usepackage{fontspec}
\usepackage{xcolor}
\usepackage[left=4cm,right=2.5cm,top=2.5cm,bottom=2cm]{geometry}
\usepackage{fancyhdr}

%------------------Main Font-------------------------
\setmainfont{Fira Sans}
%Make sure you have the compiler "XeLaTeX" activated on your settings for your LaTeX document in order to see the font 

%------------------Color Set--------------------------
\definecolor{LightBlue}{RGB}{66, 163, 251}
\definecolor{DarkBlue}{RGB}{36, 100, 176}
\definecolor{LightGray}{gray}{.94}
\definecolor{DarkGray}{gray}{.172}
\definecolor{Orange}{RGB}{229, 133, 3}
\definecolor{MediumBlue}{RGB}{38, 119, 193}

%------------------Section Default Setting-------------
\titleformat*{\section}{\color{DarkBlue}\normalfont\bfseries\Huge}
\titleformat*{\subsection}{\color{LightBlue}\normalfont\bfseries\LARGE}
\titleformat*{\subsubsection}{\color{MediumBlue}\normalfont\bfseries\LARGE}

%-------------------Section Numbers Removal------------
\setcounter{secnumdepth}{0}


%-------------------------Header & Footer------------------------

\pagestyle{fancy}
\fancyhf{}
\fancyhead[L]{
\begin{tikzpicture}[remember picture,overlay] \node[anchor=north west, yshift=1.5mm, xshift=-1.5mm] at (current page.north west) {\includegraphics[height=25mm]{figures/header_corner.png}};
\end{tikzpicture}
}
\fancyfoot[C]{
\begin{tikzpicture}[remember picture,overlay] \node[anchor=south east, yshift=-1.5mm, xshift=1.5mm] at (current page.south east) {\includegraphics[height=29mm]{figures/banner.png}};
\end{tikzpicture}
\textcolor{LightGray}{\thepage}
}

Run Code Online (Sandbox Code Playgroud)

Car*_*era 6

虽然我不确定您尝试过哪种 yaml 结构,但您可能看到的页面有正确的答案。但是,该答案的缩进不正确。只需尝试下面的 yaml,其中我们需要缩进两个空格来指定 的参数output

---
title: "title"
author: "author"
date: "`r format(Sys.time(), '%d %B, %Y')`"
mainfont: Arial
output:
  pdf_document:
    latex_engine: xelatex
    includes:
      in_header:
        - analysis_orax.sty
---
Run Code Online (Sandbox Code Playgroud)

这部分

in_header:
  - analysis_orax.sty
Run Code Online (Sandbox Code Playgroud)

相当于

in_header: analysis_orax.sty
Run Code Online (Sandbox Code Playgroud)

在您的情况下,但如果您有更多文件(.sty.tex等)要包含在标头中,您可以使用-换行符来指示文件名,如下所示。

in_header:
  - analysis_orax.sty
  - another_one.sty
Run Code Online (Sandbox Code Playgroud)