Anzeige:
Ergebnis 1 bis 5 von 5

Thema: Kollision von tikz externalize, inputenc (und evtl. lualatex)?

  1. #1
    Registrierter Benutzer
    Registriert seit
    27.02.2012
    Beiträge
    106

    Kollision von tikz externalize, inputenc (und evtl. lualatex)?

    Guten Morgen zusammen,

    ist euch eine Kollision von inputenc (Option UTF8) und Tikz mit Externalisierungsprozess bekannt?

    Code:
    \documentclass[]{scrreprt}
    \usepackage[utf8]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage[ngerman]{babel}
    \usepackage{tikz}
    \usepackage{pstool}
    \usepackage{pgfplots}
    \usetikzlibrary{external,chains}
    \tikzset{external/system call={lualatex \tikzexternalcheckshellescape -halt-on-error -interaction=batchmode -jobname "\image" "\texsource"}}
    \tikzexternalize
    \pgfplotsset{invoke before crossref tikzpicture={\tikzexternaldisable},invoke after crossref tikzpicture={\tikzexternalenable}}
    \newcommand{\legendref}[1]{\tikzexternaldisable\ref{#1}\tikzexternalenable}
    
    \tikzset{
      nodes around center/.style args={#1:#2:#3:#4}{%
        % #1 = Startwinkel,   #2 = Anzahl Knoten
        % #3 = Zentrums-Node, #4 = Abstand
        at={([shift={(#3)}] {{(\tikzchaincount-1)*360/(#2)+#1}}:{#4})}
      },
      nodes around center*/.style args={#1:#2:#3:#4}{% gleiche Optionen wie oben
        at={([shift={(#3.{(\tikzchaincount-1)*360/(#2)+#1})}] {{(\tikzchaincount-1)*360/(#2)+#1}}:{#4})},
        anchor={(\tikzchaincount-1)*360/(#2)+#1+180}
      }
    }
    
    %\usepackage[]{xcolor}
    
    \begin{document}
    \begin{tikzpicture}[node distance=5em,every node/.style={circle,draw}]
      \node [circle,draw=white] (Z) {};
      \begin{scope}[
        start chain=circle placed {nodes around center=90:5:Z:40mm},
        every join/.append style={<-},
        every node/.append style={
          on chain=circle,
          join,
          minimum size=0em
          }
      ]
    	\node[fill=cyan!20!white] {\parbox{35mm}{\centering text text text text text ä ö ü ß}};
    	\node[fill=cyan!100!white] {\parbox{35mm}{\centering text text text text text  ä ö ü ß}};
    	\node[fill=cyan!80!white] {\parbox{35mm}{\centering text text text text text ä ö ü ß}};
    	\node[fill=cyan!60!white] {\parbox{35mm}{\centering text text text text text ä ö ü ß}};           
    	\node[fill=cyan!40!white] {\parbox{35mm}{\centering text text text text text ä ö ü ß}};
        \chainin (circle-begin);
      \end{scope}
     \end{tikzpicture}
     
     aöüß
    
    \end{document}
    versuche ich dieses Testfile (unabhängig davon, was ich mit TikZ mache, muss nicht solch ein Diagramm sein) zu kompilieren erhalte ich die Fehlermeldung

    ! Package tikz Error: Sorry, the system call 'lualatex -shell-escape -halt-on-e
    rror -interaction=batchmode -jobname "mini-figure0" "\def\tikzexternalrealjob{m
    ini}\input{mini}"' did NOT result in a usable output file 'mini-figure0' (expec
    ted one of .pdf:.jpg:.jpeg:.png. Please verify that you have enabled system c
    alls. For pdflatex, this is 'pdflatex -shell-escape'. Sometimes it is also name
    d 'write 18' or something like that. Or maybe the command simply failed
    kommentiere ich das Einbinden von inputenc aus, wird das TikZPicture wie gewollt übersetzt und externalisiert.

    Allerdings wird dann das ß in den TikZPictures logischerweise nicht richtig dargestellt, wieso in diesem speziellen Fall ä ö und ü dargestellt werden können, ist mir ein Rätsel Eigentlich auch egal, ich muss dann auf jeden Fall darauf achten die Umlaute in den TikZPictures als "a etc. zu schreiben, was auf Dauer natürlich mega nervig ist.

    Danach kann ich inputenc wieder aktivieren, noch einmal kompilieren und im übrigen Dokument werden die Umlaute auch wieder erkannt, aber eben nicht in den TikZPictures, da diese dann natürlich aus der externen PDF geladen werden

    Hat irgendwer von euch eine Idee, woran das liegen kann und wie ich das beheben könnte?

    Besten Dank im Voraus
    Steffen

  2. #2
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Inputenc darf nicht mit lualatex benutzt werden. Und statt fontenc brauchst du eigentlich fontspec.

  3. #3
    Registrierter Benutzer
    Registriert seit
    27.02.2012
    Beiträge
    106
    Gut, das ist schonmal ne klare Ansage =)

    Da ich LuaLatex zwecks TeXCapacity - Thematik nur zum Erstellen der TikZ Grafiken verwende wäre nun die Frage, ob es einen Workaround gibt, oder ob meine "inputenc an und wieder aus" Geschichte tatsächlich notwendig ist.

    Grüße

  4. #4
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Du kannst ja ifluatex benützen, um inputenc/fontspec je nach engine zu laden.

  5. #5
    Registrierter Benutzer
    Registriert seit
    27.02.2012
    Beiträge
    106
    Guten Morgen,

    danke für deinen Tip. Ich verstehe was du mir vorschlägst, stecke leider selbst aber nicht tief genug in der Arbeitsweise von La / LuaLaTex, um zu wissen wie ich das umsetzen kann.

    Meine Gedanken hierzu:
    Ich benutzt ja generell Pdf-LaTex und NUR wenn eine TikZ gefunden wird, schält die Kiste auf LuaLaTex um. Das kann das System ja eigentlich aber nur merken, wenn es schon durch die Präambel durch und im Dokument angelangt ist? Ist es dann noch möglich, quasi rückwirkend inputenc wieder zu deaktivieren?

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •