使用导入的带有 pgf 和数据子文件夹的大型文档多文件结构

使用导入的带有 pgf 和数据子文件夹的大型文档多文件结构

我的项目文件结构是:

C:\USERS\NAME\MULTIFILE_MWE
│   main.tex
├───pgf
│       data.csv
│       pgftikz_fig.tex
└───sections
        section_import.tex

我的要求是:

  • main.tex文件汇集了许多部分。
  • 每个部分独立编译并调用存储在中的 pgf 代码./pgf/
  • 每个 pgf 文件独立编译并读取.csv

我可以pgftikz_fig.tex独立编译,我可以section_import.tex独立编译。我无法编译main.tex

数据

data.csv

a,b,c,d
1,4,5,1
2,3,1,5
3,5,6,1
4,1,4,9
5,3,4,7

PGF 绘图文件

% pgftikz_fig.tex
\documentclass[crop=false]{standalone}
\usepackage{pgfplots}

\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot table [x=a, y=c, col sep=comma] {./pgf/data.csv};
\end{axis}
\end{tikzpicture}

\end{document}

主文件

% main.tex
\documentclass{article}
\usepackage[subpreambles=true]{standalone}
\usepackage{import}

\begin{document}

\import{sections/}{section_import}

\end{document}

节文件

% section_import.tex
\documentclass[crop=false]{standalone}
\usepackage[subpreambles=true]{standalone}
\usepackage{import}

\begin{document}

\subimport{./pgf/}{pgftikz_fig.tex}

\end{document}

答案1

使用 \subimport 的解决方案

main.tex文件中我\subimport不应该使用\import

% main.tex
\documentclass{article}
\usepackage[subpreambles=true]{standalone}
\usepackage{import}

\begin{document}

\subimport{sections/}{section_import}

\end{document}

section_import.tex文件中我应该使用正确的文件指针../而不是./

% section_import.tex
\documentclass[crop=false]{standalone}
\usepackage[subpreambles=true]{standalone}
\usepackage{import}

\begin{document}

\subimport{../pgf/}{pgftikz_fig}

\end{document}

使用 \input 的解决方案

main.texsection_import.tex如果使用\input而不是,则会编译\subimport

\documentclass[crop=false]{standalone}
\usepackage[subpreambles=true]{standalone}

\begin{document}

\input{./pgf/pgftikz_fig.tex}

\end{document}

但是我更喜欢使用import包,因为我的完整项目比我提供的最小示例更复杂。在完整项目中,我引用了图表,并且在每个部分中都有引文。input在这方面,它的功能不如 强大import

相关内容