如何在 LaTeX 中合并多个文件

如何在 LaTeX 中合并多个文件

我正在用 LaTeX 写论文,我是 LaTeX 的初学者。我读过关于将文件合并到主文件的文章,但它对我没有多大帮助,我的问题仍然存在。我给出了我想要做的最少的代码。请帮我解决这个问题。当编译器遇到表格或图形代码时,它不会编译文件,而且似乎 \usepackage 对单个文件也是必要的。

%MAIN.tex

\documentclass[a4paper,12pt,oneside,openright,draft]{book}

\input{preamble}

\begin{document}

\frontmatter

\tableofcontents

\listoffigures

\listoftables

\mainmatter

\include{Chapter1}

\include{Chapter2}

\end{document}

%% end of MAIN.tex-------------------------
%%preamble.tex

\usepackage{microtype}

\usepackage[demo]{graphicx}

\usepackage{index}

\usepackage{ctable}

\usepackage{tabls}

\newcommand{\head}[1]{\textbf{#1}}

%%end of preamble.tex-------------------------

%%starting chapter1.tex

\chapter{Main chapter}

\section{First section of the first chapter}

\subsection{subsec 1}

\subsubsection{subsubsec 1}

\subsubsection{subsubsec 2}

\subsection{subsec 2}

{\Large Here's figure} \\

\begin{figure}[h!]

\centering

        \includegraphics{test}

    \caption{test {\index {new figures}}}

    \label{fig:test1}

\end{figure}

%%end of chapter1.tex-------------------------

%%starting chapter2.tex

\chapter{Tables}

\begin{tabular}{cccc}

& \multicolumn{2}{c}{Input} & \multicolumn{1}{c}{Output}\\

& \head{A} & \head{B} & \head{C} \\

\cmidrule[1pt](l){1-3} \cmidrule[1pt](lr){4-4}

\multirow{3}{*}{Data} & 10 & 20 & 30\\

& 40 & 60 & 100\\

& 25 & 50 & 75\\

\bottomrule[1.5pt]

\vspace{2mm}

\caption{My table}

\end{tabular}

%end

谢谢你的建议。我修改了我的代码,但仍然有错误。我不知道我哪里出错了。当我编译第 2 章时,没有错误。但当我将它合并到主文件时,出现了错误

!missing \cr inserted

主文件:

\documentclass[a4paper,12pt,oneside,openright,draft]{book}
\input{preamble}
\begin{document}
\newcommand{\head}[1]{\textbf{#1}}
\frontmatter
\tableofcontents
\listoffigures
\listoftables

\mainmatter
\include{Chapter1}
\include{Chapter2}

\end{document}

第1章

\chapter{Main chapter}
\section{First section of the first chapter}
\subsection{subsec 1}
\subsubsection{subsubsec 1}
\subsubsection{subsubsec 2}
\subsection{subsec 2}
{\Large Here's figure} \\

\begin{figure}[h!]
\centering
\includegraphics{test}
\caption{test}
\label{fig:test1}
\end{figure}

第2章

\chapter{Tables}
    \begin{table}
\begin{tabular}{cccc}
& \multicolumn{2}{c}{Input} & \multicolumn{1}{c}{Output}\\
& \head{A} & \head{B} & \head{C} \\
\cmidrule[1pt](l){1-3} \cmidrule[1pt](lr){4-4}
\multirow{3}{*}{Data} & 10 & 20 & 30\\
& 40 & 60 & 100\\
& 25 & 50 & 75\\
\bottomrule[1.5pt]
\end{tabular}
\vspace{2mm}
\caption{My table}

答案1

我认为您的问题不是由于外部文件引起的,而仅仅是因为使用的标记与包不匹配。

我收到一个错误

! LaTeX Error: Index type `default' undefined.

除非我注释掉index

您使用\multirowmultirow包没有加载包tabls似乎与您在第 2 章中的表中显然正确的标题行不兼容所以我删除了它

然后你就有了间距,\caption其中tabular有一个错误,我把它们移动到了一个table环境中。

运行没有错误。

main然后chapter1如上所述

前言:

%preamble.tex

\usepackage{microtype}

\usepackage[demo]{graphicx}

%\usepackage{index}

\usepackage{ctable}

%\usepackage{tabls}

\usepackage{multirow}

\newcommand{\head}[1]{\textbf{#1}}

第2章

%starting chapter2.tex

\chapter{Tables}

\begin{table}
\begin{tabular}{cccc}

& \multicolumn{2}{c}{Input} & \multicolumn{1}{c}{Output}\\
& \head{A} & \head{B} & \head{C} \\

\cmidrule[1pt](l){1-3} \cmidrule[1pt](lr){4-4}

\multirow{3}{*}{Data} & 10 & 20 & 30\\

& 40 & 60 & 100\\

& 25 & 50 & 75\\

\bottomrule[1.5pt]


\end{tabular}
\vspace{2mm}

\caption{My table}
\end{table}
%end

相关内容