으로 생성된 복잡한 플롯이 많이 있습니다 tikz
. 멀티 코어 CPU를 사용하여 증분 컴파일하는 좋은 방법이 설명되어 있습니다.latexmk와 TikZ 외부 모드 통합=목록 및 만들기
자동화된 작업 흐름:
- makefile의 각 tikz-picture에 대한 개별 작업을 자동으로 생성합니다(
\tikzexternalize[mode=list and make]
). - 8코어 CPU를 사용하여 tikz-pictures를 동시에 컴파일하세요!!! (
make -j8 -f %B.makefile
) - pdflatex의 두 번째 실행에서 tikz 그림을 pdf 파일로 자동 삽입합니다(
\usetikzlibrary{external}
).
다음은 로컬 컴퓨터에서 작동하는 단순화된 MWE입니다.
다음으로 실행latexmk -pdf main.tex
%%% file named main.tex %%%
\documentclass{article}
\usepackage{tikz,pgfplots}
%\pgfplotsset{compat=1.14}
\usetikzlibrary{external}
\tikzexternalize[mode=list and make]
%%% please create file latexmkrc manually %%%
% \begin{filecontents}{latexmkrc}
% $pdflatex='pdflatex --shell-escape -synctex=1 -interaction=batchmode %O %S; make -f %B.makefile; pdflatex --shell-escape -synctex=1 -interaction=batchmode %O %S';
% \end{filecontents}
\begin{document}
\tikzsetnextfilename{myPlot}
\begin{tikzpicture}
\begin{axis}
\addplot coordinates {(1,1) (2,2) (3,3)};
\end{axis}
\end{tikzpicture}
\end{document}
관찰공유라텍스
내 서버에서 Sharelatex를 사용하는 예제를 얻고 싶습니다. 테스트를 위해 다음에서 무료 계정을 만들 수 있습니다.공유라텍스.
- makefile은
tikz-external
예상대로 생성됩니다. - - 명령
make
은 예상대로 작동합니다. 파일myPlot.pdf가 생성됩니다.로그 파일 옆의 캐시에서 찾을 수 있습니다. - pdflatex의 두 번째 실행에서는myPlot.pdf가 삽입되지 않았습니다.메인 파일에.
문제
pdflatex의 두 번째 실행에서는 다음과 같습니다.myPlot.pdf가 존재하지 않습니다.. 경고는 다음과 같습니다
Package `tikz` Warning: Some images are not up-to-date and need to be generated.
그리고 실제로: myPlot.pdf를 다운로드하고 다시 업로드하여 캐시된 파일뿐만 아니라 프로젝트의 일반적인 부분이 되도록 하면,모든 것이 잘 작동합니다!
질문
pdflatex의 두 번째 실행에서 캐시된 파일을 보도록 sharelatex에게 어떻게 알릴 수 있습니까?
나는Sharelatex 커뮤니티 에디션내 서버의 Docker에 있으므로 귀하가 제안할 수 있는 모든 것에 액세스할 수 있습니다.
일요일을 기대하며 - 부활절 토끼는 숨었나요?모든 구성 파일의 모든 옵션, 플래그 등나에게 도움이 될 수 있는 sharelatex 코드가 깊숙이 들어있나요? 어쩌면 모든 프로세스에 액세스 권한을 부여해야 할까요?
당신이 저를 도와주신다면 정말 기쁘겠습니다. 게다가 이 솔루션은 빠른 멀티 코어 서버에서 매우 빠른 컴파일을 위해 다른 사용자에게 훌륭한 기능을 제공할 수 있습니다.