![如何编译 .tex 文件的一部分而不注释掉不需要的部分以保留交叉引用?](https://linux22.com/image/475346/%E5%A6%82%E4%BD%95%E7%BC%96%E8%AF%91%20.tex%20%E6%96%87%E4%BB%B6%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86%E8%80%8C%E4%B8%8D%E6%B3%A8%E9%87%8A%E6%8E%89%E4%B8%8D%E9%9C%80%E8%A6%81%E7%9A%84%E9%83%A8%E5%88%86%E4%BB%A5%E4%BF%9D%E7%95%99%E4%BA%A4%E5%8F%89%E5%BC%95%E7%94%A8%EF%BC%9F.png)
我在 LaTeX 中的同一个项目文件夹中有包含正文的 main.tex 文件和包含补充文本的 sup.tex 文件(我使用 overleaf)。请参阅下面的 main.tex 内容,其中提供了编译后的 PDF 中 main.tex 和 sup.tex 中的所有内容。
\documentclass[a4paper, 12 pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{geometry}
\geometry{left=2cm,top=2cm,right=2cm,bottom=2cm}
\usepackage{graphicx} % Required for inserting images
\usepackage{upgreek}
\setlength{\parindent}{0em}
\setlength{\parskip}{0em}
\usepackage{graphicx}
\usepackage{subcaption}
\usepackage{caption}
\usepackage{float}
\usepackage[title]{appendix}
\usepackage{natbib}
\usepackage{url}
\usepackage{pdfpages}
\usepackage{hyperref}
\usepackage{titlesec}
\usepackage{enumitem}
\usepackage{longtable}
\usepackage{mathtools}
\linespread{1.0}
% landscape table
\usepackage{pdflscape}
\usepackage{afterpage}
\usepackage{capt-of}% or use the larger `caption` package
\usepackage{tikz}
\usepackage{amsmath}
\usepackage{lipsum}% dummy text
\usepackage{lscape}
\usepackage{array}
\usepackage{multirow}
\newcolumntype{M}[1]{>{\noindent\arraybackslash}m{#1}}
\begin{document}
%my main text content goes here.
\bibliographystyle{apalike}
\bibliography{bib}
\clearpage
\input{sup.tex}
\end{document}
但是我只需要编译 main.tex 中的内容。我在 main.tex 中引用了 sup.tex 中的表格、图形等。因此,我需要包含 sup.tex 以便提供交叉引用信息,但我不希望 sup.tex 的内容出现在编译后的 PDF 中。
我怎样才能做到这一点?
我的失败尝试:
参考之前的回复这里根据我的理解,我做了以下操作,但它没有正确添加交叉引用,从而引发错误。
\documentclass[a4paper, 12 pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{geometry}
\geometry{left=2cm,top=2cm,right=2cm,bottom=2cm}
\usepackage{graphicx} % Required for inserting images
\usepackage{upgreek}
\setlength{\parindent}{0em}
\setlength{\parskip}{0em}
\usepackage{graphicx}
\usepackage{subcaption}
\usepackage{caption}
\usepackage{float}
\usepackage[title]{appendix}
\usepackage{natbib}
\usepackage{url}
\usepackage{pdfpages}
\usepackage{hyperref}
\usepackage{titlesec}
\usepackage{enumitem}
\usepackage{longtable}
\usepackage{mathtools}
\linespread{1.0}
% landscape table
\usepackage{pdflscape}
\usepackage{afterpage}
\usepackage{capt-of}% or use the larger `caption` package
\usepackage{tikz}
\usepackage{amsmath}
\usepackage{lipsum}% dummy text
\usepackage{lscape}
\usepackage{array}
\usepackage{multirow}
\newcolumntype{M}[1]{>{\noindent\arraybackslash}m{#1}}
\usepackage{blindtext}
\begin{filecontents*}{main.tex}
\end{filecontents*}
\includeonly{main}
\begin{document}
%my main text content goes here.
\bibliographystyle{apalike}
\bibliography{bib}
\clearpage
\include{sup.tex}
\end{document}