Hallo zusammen!

Ich möchte mit Hilfe des Tikz-Calligraphy-Paketes Stenografie-Texte darstellen, was bis zu einem gewissen Punkt auch ganz gut funktioniert, so lange ich nur zwei verschiedene Strichstärken (für »normal« und »verstärkt«) benötige. In einigen Fällen wäre es aber nun wünschenswert auch den »normalen« Grundstrichschatten eines Zeichens darzustellen; wenn ich aber in einem Wort den normalen und den verstärkten Grundstrichschatten benötige gehen mir beim Calligraphy-Paket die Strichstärken aus. Meine Frage ist jetzt, ob es eine Möglichkeit gibt entweder eine dritte Strichstärke zu definieren, oder die Strichstärke "heavy" in der Zeichnung je nach Bedarf umzudefinieren.

Beispielsweise möchte ich in folgendem »Wort« den zweiten "heavy"-Abschnitt mit einer dickeren Linie als im ersten Abschnitt darstellen:

Open in Online-Editor
\documentclass[tikz,margin=10pt]{standalone}
 \usetikzlibrary{calligraphy}

 \begin{document}\tikz{\calligraphy[copperplate,weight=light,taper=none] 
(0,3/4) arc(180:90:1/4) 
++(0,0) [this stroke style={weight=heavy,taper=both}]
arc (90:0:1/4)  --++(0,-1/2) arc (-180:-90:1/4) 
++(0,0) [this stroke style={weight=light,taper=none}]
arc(-90:0:1/4)  --++(0,3/2) arc (180:90:1/4)
++(0,0) [this stroke style={weight=heavy,taper=both}]
arc(90:0:1/4) --++(0,-3/2) arc(-180:-90:1/4)
++(0,0) [this stroke style={weight=light,taper=none}]
arc(-90:0:1/4);}
\end{document}

Ich habe schon versucht, zwischen den beiden "heavy"-Abschnitten eine »Marke« mit "node" zu setzten und nach dem Umstellen der Strichstärke dort weiterzuzeichnen; also beispielsweise vor dem dritten "[this stroke style…"

Open in Online-Editor
\node(A); \tikzset{heavy line width=dicker pt};(A) …

Leider hat das irgendwie nicht geklappt.

gefragt 16 Feb '15, 19:39

Moatl's gravatar image

Moatl
3325
Akzeptiert-Rate: 0%

bearbeitet 17 Feb '15, 00:34

esdd's gravatar image

esdd
17.8k284257

Willkommen in der TeXwelt! Kannst Du bitte immer ein richtiges Minimalbeispiel einfügen? Also ein möglichst kurzes, aber komplettes Dokument, von \documentclass{...} bis zu \end{document}, was das Problem zeigt. Das vereinfacht die Bearbeitung schon deshalb erheblich, weil man nicht erst die benötigten Pakete und Bibliotheken ermitteln muss.

(16 Feb '15, 20:52) esdd

OK, tschulligung, war mein erster Post hier. Ich hab' das Beispiel entsprechend ergänzt.

(16 Feb '15, 22:38) Moatl

Steno mit TikZ, das klingt sehr interessant. Hast du vielleicht Lust darüber in unserem TikZ-Blog zu schreiben?

(16 Feb '15, 23:19) Johannes

@Johannes: Warum nicht, aber wie?

(18 Feb '15, 07:59) Moatl

@Moatl Im Impressum findest Du die Mailadresse von Stefan. Er kann Dir einen Account für den TikZ-Blog anlegen.

(18 Feb '15, 11:57) esdd

@moatl Das klingt super, ich bin gespannt.

(18 Feb '15, 17:11) Johannes

@Moatl Darauf bin ich auch sehr neugierig!

(18 Feb '15, 18:54) stefan ♦♦

Ich melde mich. Doch eines gleich vorweg: Ein Steno-Kurs oder ein automatischer Steno-Konvertor kann es (noch) nicht sein und wird es (vermutlich) auch nicht werden. Eher eine Art »Tricks und Kniffe für die Darstellung von Handgeschriebenem«. Außerdem steckt mein Projekt noch in den »Kinderschuhen«; recht weit bin ich mit der Sache noch nicht gekommen.

(18 Feb '15, 18:59) Moatl
Ergebnis 5 von 8 show 3 more comments

Vorab: Die TikZ-Bibliothek calligraphy gehört zum Paket spath3.

Für weight=heavy oder kürzer heavy ist eine Linienstärke von 2pt voreingestellt. Wenn die Linie auf einem Teilstück statt dessen zum Beispiel 4pt breit sein soll, dann kannst Du das mit

Open in Online-Editor
this stroke style={weight=heavy,heavy line width=4pt}

oder kürzer

Open in Online-Editor
this stroke style={heavy,heavy line width=4pt}

erreichen. Ich würde mir für die zusätzliche Linienstärke dann einfach einen neuen Stil definieren.

Open in Online-Editor
\tikzset{
  heavy1/.style={heavy,heavy line width=4pt}
}

alt text

Code:

Open in Online-Editor
\documentclass[tikz,margin=10pt]{standalone}
\usetikzlibrary{calligraphy}
\tikzset{
  heavy1/.style={heavy,heavy line width=4pt}
}

\begin{document}
\tikz{
  \calligraphy[copperplate,light,taper=none] 
    (0,3/4) arc(180:90:1/4) 
    ++(0,0) [this stroke style={heavy,taper=both}]
    arc (90:0:1/4)  --++(0,-1/2) arc (-180:-90:1/4) 
    ++(0,0)
    arc(-90:0:1/4)  --++(0,3/2) arc (180:90:1/4)
    ++(0,0) [this stroke style={heavy1,taper=both}]
    arc(90:0:1/4) --++(0,-3/2) arc(-180:-90:1/4)
    ++(0,0)
    arc(-90:0:1/4);
}
\end{document}

Alternativ kann man sich auch im Quellcode von calligraphy anschauen, wie heavy und light definiert sind und das dann auf die zusätzliche Linienstärke übertragen:

Open in Online-Editor
\tikzset{
  weight/heavy1/.style={
    line width=\pgfkeysvalueof{/tikz/heavy1 line width},
    taper width=\pgfkeysvalueof{/tikz/light line width},
  },
  heavy1/.style={weight=heavy1},
  heavy1 line width/.initial=4pt
}

Damit wäre dann auch weight=heavy1 möglich:

Open in Online-Editor
\documentclass[tikz,margin=10pt]{standalone}
\usetikzlibrary{calligraphy}
\tikzset{
  weight/heavy1/.style={
    line width=\pgfkeysvalueof{/tikz/heavy1 line width},
    taper width=\pgfkeysvalueof{/tikz/light line width},
  },
  heavy1/.style={weight=heavy1},
  heavy1 line width/.initial=4pt
}

\begin{document}
\tikz{
  \calligraphy[copperplate,weight=light,taper=none] 
    (0,3/4) arc(180:90:1/4) 
    ++(0,0) [this stroke style={weight=heavy,taper=both}]
    arc (90:0:1/4)  --++(0,-1/2) arc (-180:-90:1/4) 
    ++(0,0)
    arc(-90:0:1/4)  --++(0,3/2) arc (180:90:1/4)
    ++(0,0) [this stroke style={weight=heavy1,taper=both}]
    arc(90:0:1/4) --++(0,-3/2) arc(-180:-90:1/4)
    ++(0,0)
    arc(-90:0:1/4);
}
\end{document}
Permanenter link

beantwortet 16 Feb '15, 20:43

esdd's gravatar image

esdd
17.8k284257
Akzeptiert-Rate: 62%

bearbeitet 17 Feb '15, 00:33

Danke! Hätte nicht gedacht, dass ich so schnell eine Antwort bekomme. Und wenn ich das "weight=" weglasse, dann funktioniert es sogar! ^^° Die Linienbreiten muss ich im realen Code sowieso etwas umdefinieren, das hab' ich hier der Einfachheit halber weggelassen; genauso wie die automatische Scherung, dass sich das »Geschriebene« nach rechts legt.

(16 Feb '15, 22:34) Moatl
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×731
×4
×2

gestellte Frage: 16 Feb '15, 19:39

Frage wurde gesehen: 7,145 Mal

zuletzt geändert: 18 Feb '15, 18:59