Tikz - Perspektivbuchstabe, gedrehte Schrift

Tikz - Perspektivbuchstabe, gedrehte Schrift

Ich arbeite gerade an einem Tikzbild, das einen Buchstaben darstellt, auf den man perspektivisch blickt. Ich habe es gerade geschafft, dies mit dem Schatten und der Perspektive unter Verwendung von xslant und Rotation und Schatten umzusetzen.

Das Ziel ist, diesen Brief als Vorlage für viele Briefe zu verwenden. Ich habe mir also überlegt, die Schrift entweder mit Nodes in Tikz (Möglichkeit 1) oder mit Textblöcken (Möglichkeit 2) zu platzieren, wie man im Code sehen kann. Wenn das funktioniert, möchte ich einen Befehl definieren, zum Beispiel \address, der alles aus dem Code der Adresse enthält, sodass ich nur noch die Namen und Straßen usw. ändern muss.

Das ist ja alles ganz schön, aber jetzt habe ich ein Problem:

Die gedrehte Schrift in Tikz ist nicht wirklich gut, da nicht die Linie der Schrift gedreht wird, sondern nur die Buchstaben. Und das ist nicht wirklich schön :) Vielleicht gibt es eine andere Möglichkeit, das zu machen? Ich hoffe, ihr könnt mir ein wenig helfen. Vielleicht habt ihr noch eine andere Idee für das Problem? Danke.

(Möglichkeit 2 ist in diesem Zusammenhang nicht sehr sinnvoll, da dabei nicht der Block gedreht wird, sondern nur die Buchstaben ...)

Hier ist ein funktionierendes Beispiel:

\documentclass[a4paper]{scrartcl}

\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{tabu}
\usepackage{eurosym}
\usepackage{icomma}
\usepackage[absolute,overlay]{textpos}
\usepackage{pgf, tikz, pgfplots}
\usepackage{rotating}
\usepackage{graphicx}

\usetikzlibrary{
            arrows,
            shapes,
            shadows.blur,
            positioning,
            calc,
            intersections,
            decorations.text,
            backgrounds,
            plotmarks,
            shadings
}

\begin{document}
\begin{tikzpicture}[rotate=-3,xslant=0.1,scale=0.7,every node/.style={xslant=0.1,transform shape,rotate=1}]
\fill [color=black!20!white,opacity=0.5] (0.15,-2.15) -- (13.15,-2.15) -- (15.15,-20.15) -- (0.15,-20.15) -- cycle;
\draw [color=black!30, fill=white] (0,-2) -- (13,-2) -- (15,-20) -- (7.3,-20) arc (270:220:9.9cm and 3.5cm) arc (-20:0:4cm and 15cm) -- cycle;
%possibility 1:
\node at (1.5,-5.2) [right] {\scriptsize{XXX YYY}};
\node at (1.5,-5.6) [right] {\scriptsize{ZZZ Street}};
\node at (1.5,-6) [right] {\scriptsize{012345 AAAAA}};
\end{tikzpicture}
%possibility 2:
\begin{textblock*}{10cm}(7cm,7cm)
\begin{rotate}{-3}
\parbox[t]{10cm}{Lorem Ipsum\\ Blab\\Bla\\bla\\D\\D\\D\\D\\D}
\end{rotate}
\end{textblock*}
\end{document}

Antwort1

Dies basiert lose auf meiner Antwort unterZeichnen Sie gestapelte 3D-Quadrate mit Schatten, das Brunos Methode anwendetSchertransformation einer "Box"

\documentclass{article}
\usepackage{xcolor,graphicx}
\usepackage[usestackEOL]{stackengine}
\newsavebox{\foobox}
\newcommand{\slantbox}[2][.5]{\mbox{%
        \sbox{\foobox}{#2}%
        \hskip\wd\foobox
        \pdfsave
        \pdfsetmatrix{1 0 #1 1}%
        \llap{\usebox{\foobox}}%
        \pdfrestore
}}
\def\mycell#1#2{\fcolorbox{black!50}{#1}{#2 }}
\def\makeply#1#2{\mycell{#2}{\Longstack[l]{#1}}}
\def\perspective#1#2{%
\rotatebox{\myrotate}{\slantbox[\myslant]{%
  \makeply{#1}{#2}}}
}
\begin{document}
\def\myrotate{-5} \def\myslant{.3} 
\perspective{XXX YYY\\ZZZ Street\\012345 AAAAA}{gray!30}

This is back to normal text.
\end{document}

Bildbeschreibung hier eingeben

Durch eine Änderung der Werte \def\myrotate{-10} \def\myslant{.7}ändert sich beispielsweise die Perspektive:

Bildbeschreibung hier eingeben

Hier ist die an das MWE des Benutzers angepasste Methode:

Bildbeschreibung hier eingeben

und hier ist es ohne Farbe

\documentclass[a4paper]{scrartcl}

\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{tabu}
\usepackage{eurosym}
\usepackage{icomma}
\usepackage[absolute,overlay]{textpos}
\usepackage{pgf, tikz, pgfplots}
\usepackage{rotating}
\usepackage{graphicx}

\usetikzlibrary{
            arrows,
            shapes,
            shadows.blur,
            positioning,
            calc,
            intersections,
            decorations.text,
            backgrounds,
            plotmarks,
            shadings
}
\usepackage{xcolor,graphicx}
\usepackage[usestackEOL]{stackengine}
\newsavebox{\foobox}
\newcommand{\slantbox}[2][.5]{\mbox{%
        \sbox{\foobox}{#2}%
        \hskip\wd\foobox
        \pdfsave
        \pdfsetmatrix{1 0 #1 1}%
        \llap{\usebox{\foobox}}%
        \pdfrestore
}}
\def\mycell#1#2#3{\fcolorbox{#3}{#1}{#2 }}
\newcommand\makeply[3]{\mycell{#2}{\Longunderstack[l]{#1}}{#3}}
\newcommand\perspective[3][black!30]{%
\rotatebox{\myrotate}{\slantbox[\myslant]{%
  \makeply{#2}{#3}{#1}}}
}
\begin{document}
\def\myrotate{1} \def\myslant{.1} 

\begin{tikzpicture}[rotate=-3,xslant=0.1,scale=0.7,every node/.style={xslant=0.1,transform shape,rotate=1}]
\fill [color=black!20!white,opacity=0.5] (0.15,-2.15) -- (13.15,-2.15) -- (15.15,-20.15) -- (0.15,-20.15) -- cycle;
\draw [color=black!30, fill=white] (0,-2) -- (13,-2) -- (15,-20) -- (7.3,-20) arc (270:220:9.9cm and 3.5cm) arc (-20:0:4cm and 15cm) -- cycle;
%possibility 1:
\node at (1.5,-5.2) [right] {\scriptsize{XXX YYY}};
\node at (1.5,-5.6) [right] {\scriptsize{ZZZ Street}};
\node at (1.5,-6) [right] {\scriptsize{012345 AAAAA}};
\end{tikzpicture}
%possibility 2:
\begin{textblock*}{10cm}(7cm,7cm)
\begin{rotate}{-3}
\perspective[white]{Lorem Ipsum\\ Blab\\Bla\\bla\\D\\D\\D\\D\\D}{white}
\end{rotate}
\end{textblock*}
\end{document}

Bildbeschreibung hier eingeben

Ein Parbox-Eingang könnte implementiert werden durch die Definition

\newcommand\makeply[3]{\mycell{#2}{\parbox[t]{2in}{#1}}{#3}}

In beiden Fällen { \Longstackoder \parbox) handelt es sich jedoch nicht um eine „echte“ Perspektive mit Fluchtpunkt, sondern um eine isometrische Darstellung. Der Text kann also zwar schräg sein, wird aber zum unteren Seitenrand hin nicht breiter.

Antwort2

Offensichtlich nur eine Teilantwort, aber Sie können Knotenbeschriftungen slopedan einer Grundlinie ausrichten. Vielleicht können Sie den Text irgendwie als Knotenbeschriftung für eine Linie verwenden, die die gleiche Neigung wie Ihr Text hat.

\documentclass{standalone}

\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
    \fill (0,0) circle (0.1);
    \fill (3,-1) circle (0.1);
    \draw (0,0) -- (3,-1) node [midway, above, sloped] {Sloped text};
\end{tikzpicture}
\end{document}

Bildschirmfoto

In deinem (schön aussehenden) Beispiel könntest du so etwas wie das Folgende verwenden. Natürlich mit whitestatt redals Linienfarbe und besser passenden Koordinaten.

\draw [red] (1.6,-5.2) -- (4.05,-4) node [black, midway, sloped] {\scriptsize{XXX YYY}} ;
\draw [red] (1.6,-5.6) -- (4,-5.5) node [black, midway, sloped] {\scriptsize{ZZZ Street}};
\draw [red] (1.6,-6)  -- (3.95,-7.05) node [black, midway, sloped] {\scriptsize{012345 AAAAA}};

verwandte Informationen