PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Fehlendes Leerzeichen bei in Tikznode und Lua-Variable



MC3330
27-09-2020, 08:38
Hallo,

ich habe eine Lua-Variable die eine Leerzeichen enthält. Diese möchte ich gerne in ein Tikz-Node schreiben.
Leider ist es bei mir so, dass das Leerzeichen im Node nicht angezeigt wird.

Ich habe den Fehler jetzt soweit identifiziert, dass es scheinbar irgendwas mit "text width" des Nodes zu tun hat, ich kann mir aber absolut nicht erklären, woran es liegt.

Im MB fehlt bei mir im ersten Tikzpicture das Leerzeichen, im zweiten nicht. Der einzige Unterschied ist, dass im ersten Tikz-Picture noch ein text width enthalten ist.

Hat da jemand eine Idee, woran es liegen könnte?

Viele Grüße und vielen Dank
MC

MB


\documentclass{scrartcl}
\usepackage{tikz}
\usepackage{luacode}
\usepackage{fontspec}
\usepackage{lmodern}
\usepackage{geometry}
\newgeometry{left=5mm,right=5mm}
\begin{document}
\directlua{
a = 'asd fhg'
}

\begin{tikzpicture}
\node[draw,line width = 1mm,rounded corners= 5pt,text height = 4cm, text depth=2 cm, text width = 19.5 cm,] at (0,0) {\fontsize{90}{0}\selectfont \directlua{tex.print(a)}};
\end{tikzpicture}


\begin{tikzpicture}
\node[draw,line width = 1mm,rounded corners= 5pt,text height = 4cm, text depth=2 cm] at (0,0) {\fontsize{90}{0}\selectfont \directlua{tex.print(a)}};
\end{tikzpicture}

\end{document}

rais
27-09-2020, 10:30
text width ist eigentlich dazu gedacht, Zeilen automatisch umbrechen zu lassen. Bei der Voreinstellung wird damit align=left aktiv, wobei der Text nicht nur linksbündig gesetzt wird, es werden auch Anstrengungen untenommen, den Rand rechts auszugleichen. Da keine Folgezeile entsteht (die Box ist ja breit genug für den Text), wird alles flexible Material gestaucht.

Ergänze align=flush left, dann entfällt der Randausgleich rechts (und damit die Stauchung).

VG

MC3330
27-09-2020, 11:00
Herzlichen Dank :)