Sou relativamente novo no Latex e estou tendo dificuldades para usar o pacote tikzpicture.
O que quero fazer é criar uma coluna colorida no lado esquerdo de cada página do meu documento. Atualmente estou usando o seguinte código para isso.
\begin{tikzpicture}[remember picture,overlay]
\node [rectangle, fill=sidecolor, anchor=north, minimum width=9cm, minimum height=\paperheight+1cm] (box) at (-5cm,0.5cm){};
\end{tikzpicture}
O problema é que esse código só produz uma barra colorida na primeira página do meu documento e não a estende para várias páginas.
Minha pergunta é, portanto, como faço para implementar esta imagem tikz em várias páginas do meu documento? Alguém tem alguma idéia de como resolver esse problema.
Nota: não estou tentando criar um cabeçalho ou rodapé.
Atenciosamente.
Obrigado!
Responder1
Package
atbegshi
é uma opção para inserir material em cada página em posição absoluta.O pacote
xsavebox
ajuda a reduzir o tamanho final do PDF ao inserir repetidamente o mesmo conteúdo.
\documentclass{article}
\usepackage{tikz}
\usepackage{xsavebox} %save content for repeated use
\usepackage{atbegshi} %insert material on every page
\usepackage{kantlipsum} %bla, bla
\xsavebox{PageBGPicture}{%
\begin{tikzpicture}
\node [rectangle, fill=yellow, minimum width=9cm, minimum height=\paperheight] (box) {};
\end{tikzpicture}
}
%position background picture absolutely (w.r.t. upper left page corner) on every page
\AtBeginShipout{
\AtBeginShipoutUpperLeft{\raisebox{-\height}{\xusebox{PageBGPicture}}}
}
\begin{document}
\kant[1-10]
\end{document}
Responder2
Apenas por diversão, algo usando eso-pic
. Nó que tornei seus nomes de nó exclusivos adicionando o número da página.
\documentclass{article}
\usepackage{tikzpagenodes}
\usepackage{lipsum}
\usepackage{eso-pic}
\begin{document}
\AddToShipoutPicture{%
\begin{tikzpicture}[remember picture,overlay]
\node [rectangle, fill=blue, anchor=west, minimum width=9cm, minimum height=\paperheight+1cm]
(box\thepage) at
(current page text area.west){};
\end{tikzpicture}}
\lipsum[1-8]
\end{document}
Responder3
Use o pacote atbegshi.
\usepackage{atbegshi}
\AtBeginShipout
{
\begin{tikzpicture}[remember picture,overlay]
\node [rectangle, fill=sidecolor, anchor=north, minimum width=9cm, minimum height=\paperheight+1cm] (box) at (-5cm,0.5cm){};
\end{tikzpicture}
}