welcome: please sign in

Upload page content

You can upload content for the page named below. If you change the page name, you can also upload content for another page. If the page name is empty, we derive the page name from the file name.

File to load page content from
Page name
Comment

Revision 11 as of 2022-05-20 11:09:25

location: Computer / Latex / Tikzexternalize_Hyperref

Tikz Externalize and conflicts with some other packages

Tikz Externalize and Hyperref

Tikz Externalize does not work well with Hyperref without some extra measures. In order to get around the problem, include the following lines in your preamble

\tikzifexternalizing{%
   \newcommand{\hypersetup}[1]{}
}{%
   \usepackage{hyperref}  
}
  \hypersetup{%
     colorlinks,
     allcolors={blue!40!black},
  %  allcolors={black},   % Uncomment for the printed version
  }

Tikz Externalize and Todonotes

The package {todonotes} uses Tikz internally, and therefore some extra work is necessary if Tikz Externalize is used in the document. One possibility is to create an extra command handling this:

   \newcommand\Etodo[2][]{{\tikzexternaldisable\todo[#1]{#2}}}

This command should be used instead of the original \todo if externalize is active. The command name can of course be changed to anything easy to remember. Note that the matching \tikzexternalenable is not needed, because the internal commmand is enclosed in an extra group.

Tikz Externalize and Lualatex

In order to use tikzexternalize in lualatex another package is also necessary:

  \usepackage{shellesc} 

This package may also be used with latex and pdflatex, but is necessary with lualatex. Other packages also require {shellesc} with lualatex, and therefore it may seem that it is not necessary sometimes. It is always necessary.