我正在做一个相当大项目。因此我决定与独立包。我在 overleaf 中工作,我的项目结构如下:
->Main.tex
->Folder Chap 1
--->Folder Figures
--->Chap 1.tex
->Folder Chap 2
--->Folder Figures
--->Chap 2.tex
->ref.bib
我想在我的第 1 章然后只需通过输入它来导入它主文本。
我的第 1 章如下所示:
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage[round]{natbib}
\bibliographystyle{apa}
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Nulla eget lacinia justo. Sed tincidunt elit nunc,
vitae laoreet ipsum scelerisque et.
Ut ex nisi, dapibus eget scelerisque vitae,
varius in arcu\citep[][]{einstein2010}.
\end{document}
我的主文本如下:
\documentclass[8pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[round]{natbib}
\bibliographystyle{apa}
\begin{document}
\input{Chap1/Chap1}
\newpage
\bibliography{ref}
\end{document}
在我的参考文献我有如下参考:
@ARTICLE{einstein2010,
author = {A. Einstein},
title = {Sed tincidunt elit nunc},
journal = {Sed tincidunt elit nunc},
volume = {58},
number = {Issue 6},
pages = {31-40},
year = {2010}
}
为什么引用不适用于第 1 章?它确实找到了引用,但编译时仍然出错。我是否必须把我的参考文献其他地方?我只是想引用我的第 1 章并最终创建一个参考书目主文本所有参考文献第 1 章和第 2 章.tex等等。
答案1
[免责声明:我是 Overleaf 的支持人员。]
\documentclass{standalone}
如果您的 Chap1.tex 仅包含一个,则效果很好tikzpicture
;但如果它包含其他材料,例如文本段落,那么在仅编译 Chap1.tex 时,生成的 PDF 可能只有一行(或几行)非常长的单行输出。
包subfiles
和文档类可能更适合这里;您仍然可以用于standalone
图纸。您可以找到有关和的tikz
更多信息standalone
subfiles
这里和这里。
此外,apa.bst
不再在 TeX Live 中分发,因此 BibTeX 将无法解析引文,因为它无法找到样式文件。您可能希望改用apacite
。
这是一个由 、 和main.tex
组成ref.bib
的小例子。Chap1/Chap1.tex
Chap1/drawing1.tex
主文本
\documentclass{article}
\usepackage{subfiles}
\usepackage{tikz}
\usetikzlibrary{positioning}
\usetikzlibrary{positioning,shapes}
\tikzset{special/.style={fill=cyan,ellipse}}
\usepackage[natbibapa]{apacite}
\bibliographystyle{apacite}
% From https://en.wikibooks.org/wiki/LaTeX/Modular_Documents#Subfiles_and_bibtex
% To get citations working in both the main and sub files
\def\biblio{\bibliography{ref}}
\begin{document}
\def\biblio{}
This is the main file!!
\subfile{Chap1/Chap1}
\newpage
\bibliography{ref}
\end{document}
Chap1/Chap1.tex
除了将使用\documentclass[...]{subfiles}
; 前言外,前言中不需要任何其他内容。此文件内的路径为main.tex
关系到 Chap1/Chap1.tex
。
\documentclass[../main.tex]{subfiles}
\begin{document}
\section{Test}
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Nulla eget lacinia justo. Sed tincidunt elit nunc,
vitae laoreet ipsum scelerisque et.
Ut ex nisi, dapibus eget scelerisque vitae,
varius in arcu \citep{einstein2010}.
\begin{figure}[hbt!]
\centering
\subfile{drawing1}
\caption{Hello World}
\end{figure}
\biblio
\end{document}
Chap1/drawing1.tex
这是一个绘图standalone
文件tikz
。您需要在此文件中添加必要的 TikZ 设置;仅编译此文件时不会从 main.tex 读取任何内容。
\documentclass[tikz]{standalone}
\usetikzlibrary{positioning,shapes}
\tikzset{special/.style={fill=cyan,ellipse}}
\begin{document}
\begin{tikzpicture}
\node[draw,special] (a) {Hello};
\node[draw,right=2cm of a] (b) {World};
\draw[->] (a) -- (b);
\end{tikzpicture}
\end{document}
编译drawing1.tex
:
编译Chap1.tex
:
编译main.tex
:
(您也可以standalone
单独编译您的绘图,下载输出 PDF,然后重新上传它们,以便您可以\includegraphics
在您的上使用它们Chap1.tex
。如果您有很多 TikZ 绘图,这也有助于加快速度。)