Hallo!

Idee ist es einen Strich zu erzeugen, der exakt die Breite eines vorgegebenen Zeichens hat und auf halber Höhe des Zeichens liegt. Das klappt soweit ganz gut; bloß bleibt ein Problem - ich kann das Kommando dafür nicht mehrfach anwenden - Fehlermeldung \Hoehe already defined.

Ich habe versucht, den Kommandoinhalt zu gruppieren, leider ohne Erfolg. Das kann man doch jetzt sicher leicht beheben :() ?

Ich hoffe, es sind keine fundamentalen Änderungen des Codes nötig :() Danke!

alt text

Open in writeLaTeX
\documentclass[11pt, a4paper, ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
 \parindent0pt 
\usepackage{amsmath}

\usepackage{calc}
\usepackage{tikz}

\newcommand{\xStrich}[1]{\bgroup
% Zeichenmaße messen  mit calc-Paket
%Höhe
\newlength{\Hoehe}
%\settototalheight{\Hoehe}{#1}
\settoheight{\Hoehe}{#1}
%Breite
\newlength{\Breite}
\settowidth{\Breite}{#1}
%
\mathord{
\begin{tikzpicture}[baseline=0ex, line width=0.5pt, scale=1] 
\draw[shorten <=0.0ex, shorten >=0.0ex] (-\Breite/2,\Hoehe/2) -- (\Breite/2,\Hoehe/2);
\end{tikzpicture}
}
\egroup}

\begin{document}

$\xStrich{a}$  $a$% GEHT
%$(\xStrich{a}, \xStrich{b})$  $(a,b)$ % GEHT NICHT!!!!!

\end{document}

gefragt 05 Jun '14, 12:45

cis's gravatar image

cis
5.4k860169
Akzeptiert: 68%

bearbeitet 05 Jun '14, 14:19

Clemens's gravatar image

Clemens
19.0k113060

Ah, ich bin so doof - es darf einfach \newlength{\Hoehe} \newlength{\Breite} NICHT mit ins Kommand :()

(05 Jun '14, 12:54) cis

Bei jedem Aufruf von \xStrich werden durch Deinen Code \Hoehe und \Breite neu definiert, weshalb spätestens beim zweiten Aufruf eine Fehlermeldung kommt. Lösung: setze

Open in writeLaTeX
\newlength{\Hoehe}
\newlength{\Breite}

außerhalb der Definition von \xStrich:

Open in writeLaTeX
\newlength{\Hoehe}
\newlength{\Breite}
\newcommand{\xStrich}...

Ich würde außerdem statt \bgroup und \egroup lieber \begingroup und \endgroup verwenden (auch wenn es für Deine Anwendung wahrscheinlich egal ist. Ich würde auch noch ein paar Zeilenenden mit % verstecken, obwohl auch das egal ist, wenn Du den Befehl nur im Mathemodus einsetzt, wo Leerzeichen ja nicht gesetzt werden.

Permanenter link

beantwortet 05 Jun '14, 14:18

Clemens's gravatar image

Clemens
19.0k113060

Ist mir kurz nach dem Post auch klar geworden, daß die Definitionen nicht ins Kommando gehören (siehe mein Kommentar). Da sich aber möglicherweise schon Leute Gedanken zur Frage gemacht hatten, wollte ich sie auch nicht einfach wieder löschen ;)

(05 Jun '14, 15:01) cis
Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

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üge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×45
×19

Frage gestellt: 05 Jun '14, 12:45

Frage wurde angeschaut: 3,226 Mal

Zuletzt aktualisiert: 05 Jun '14, 15:01