Pergunta

Eu tenho um documento Latex bastante grande com muitas figuras do TikZ dentro.Tenho o hábito de recompilar frequentemente e levo uma eternidade para compilá-lo usando pdflatex.Os números no TikZ demoram a maior parte do tempo.

Minha pergunta é qual é a melhor maneira de dividir o documento em arquivos tex separados (figuras/capítulos) para obter compilação separada de figuras e capítulos, PDFs de capítulos separados e um arquivo PDF de documento inteiro?

Foi útil?

Solução

Você já tentou compilar cada imagem sozinha e depois incluí-las em seu arquivo tex como pdf em vez do código tikz?Você pode usar o pacote independente para que a imagem tenha o tamanho exato que você precisa.Então :

\documentclass{standalone}

\usepackage{tikz,pgf} %and any other packages or tikzlibraries your picture needs

\begin{document}

\begin{tikzpicture}

%your tikz code here

\end{tikzpicture}

\end{document}

A coisa boa sobre isso é que você pode incluir a compilação deste documento diretamente para obter uma figura em PDF para incluir em seu documento, ou você pode usar o comando \input para incluí-lo em seu documento principal como um código tikz adicionando

\usepackage{standalone}

em seu documento principal (junto com os pacotes e bibliotecas tikz) e, em seguida,

\begin{figure}
\input{tikzfile.tex}
\end{figure}

Outras dicas

Existe uma maneira possivelmente melhor (imho) de cache de imagens tikz.Adicione as seguintes linhas em seu preâmbulo:

\usetikzlibrary{external}
\tikzexternalize[prefix=i/]

Após uma execução do pdflatex você verá todas as imagens no subdiretório ./i .Se você atualizar o código de uma imagem tikz, simplesmente jogue fora o arquivo pdf correspondente e ele será regenerado.Para mais informações consulte o manual da seção PFG/TikZ 32.4 Externalizando Gráficose possivelmente 32.5 Usando gráficos externos sem o pgf instalado.

Que tal colocar cada capítulo em um arquivo separado e depois usar \include colocá-los em algum arquivo mestre?Então você pode usar \includeonly para compilar apenas o capítulo em que você está trabalhando atualmente.Isso deve economizar algum tempo, pelo menos.

Espero que algum tipo de solução baseada em makefile seja ainda melhor que isso, mas não sei nada sobre makefiles...

A maneira como geralmente faço isso é aplicando Latex apenas a parte do arquivo:O Emacs e vários outros editores Latex permitem compilar regiões:com Auctex, você pode executar TeX-pin-region para especificar o capítulo atual e, em seguida, TeX-command-region para executar Latex na região selecionada.

A maneira tradicional de fazer isso é cortar partes do arquivo grande em partes menores que são \included, e então comente as partes nas quais você não deseja trabalhar ou coloque alguma macrologia no início e no final de cada arquivo que permita que eles sejam compilados separadamente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top