Seite 1 von 1

tikz-Umrahmung innerhalb von hebräischem Text

Verfasst: Do 16. Mär 2017, 13:10
von mumpitz17
Tag allerseits!

Ich möchte für meine Diplomarbeit in einem hebräischen Text einzelne Wörter durch farbiges Umkringeln hervorheben. Für das Hebräisch benutze ich \cjRL, für die Kringel tikz.

Mit Wörtern, die für sich allein stehen, klappt das wunderbar, aber wenn ich in einem Satz nur einzelne Wörter hervorheben will, scheint sich meine tikz-Umrahmung mit dem \cjRL-Befehl zu beißen: Schreibe ich die Umrahmung in die \cjRL-Klammer, passiert nichts. Ich kann aber auch nicht die einzelnen Wörter jeweils einzeln mit \cjRL schreiben, weil sonst die Satzstellung flöten geht.

Was muss ich tun?

Nils
\documentclass{scrreprt}


\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
%\usepackage[ansinew]{inputenc}
%\usepackage{textcom}

\usepackage{lmodern}

\usepackage{graphicx}

\usepackage{setspace}
\usepackage{amsmath}
\usepackage{txfonts}
\usepackage{pifont}
\usepackage{graphicx}
\usepackage{eurosym}
\usepackage[ngerman]{babel}
\usepackage{times}
\usepackage[utf8]{inputenc}
\usepackage{verbatim}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric}
\usetikzlibrary{arrows}

\usepackage{cjhebrew}

\newcommand{\cj}{\cjRL}

\newcommand\mrahmen[3][]{%
  \tikz[anchor=base,baseline]\node[inner sep=2pt,draw=#2,line width = 2,#1]{\textcolor{black}{#3}};}
	
	
\begin{document}


% Das ist der Satz:

\raggedleft\cj{lAm*Ah ti+s:ma` 'Et--d*ib:rey 'AdAM le'mor hin*eh dAwid m:baq*e+s rA`AtEKA} \\

% Das Wort soll so umkringelt werden:

\mrahmen[rounded corners]{green}{\cj{ti+s:ma`}} \\

% Schreib ich das \mrahmen in \cj{} rein, passiert nichts bzw. es werden wohl zwei neue Leerzeichen umd das Wort gesetzt:

\raggedleft\cj{lAm*Ah \mrahmen[rounded corners]{green}{\cj{ti+s:ma`}} 'Et--d*ib:rey 'AdAM le'mor hin*eh dAwid m:baq*e+s rA`AtEKA} \\

% Ziehe ich aber das \cj auseinander, dann geht natürlich die Satzstellung flöten. Außerdem macht er noch nen merkwürdigen Strich dazu:

\raggedleft{\cj{lAm*Ah} \mrahmen[rounded corners]{green}{\cj{ti+s:ma`}}  \cj{'Et--d*ib:rey 'AdAM le'mor hin*eh dAwid m:baq*e+s rA`AtEKA}}  \\ 







\end{document}

Verfasst: Do 16. Mär 2017, 15:39
von u_fischer
Ich würde es mit tikzmark versuchen:
\documentclass{scrreprt}

\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}

\usepackage{tikz}
\usetikzlibrary{tikzmark}

\usepackage{cjhebrew}

\newcommand{\cj}{\cjRL}


\begin{document}


% Das ist der Satz:

\raggedleft \cj{lAm*Ah \cjLR{\tikzmark{a}}ti+s:ma`\cjLR{\tikzmark{b}} 'Et--d*ib:rey 'AdAM le'mor hin*eh dAwid m:baq*e+s rA`AtEKA}

\tikz[overlay,remember picture]
 {\draw ([yshift=-0.2em]pic cs:a) rectangle ([yshift=0.8em]pic cs:b);
  \draw[red,->] (0,0)-- (pic cs:a) node [midway]{a};
  \draw[red,->] (0,0)-- (pic cs:b) node [midway]{b};}

\end{document}

Verfasst: Fr 17. Mär 2017, 13:21
von mumpitz17
Ja, das klappt super. Vielen Dank!!

Was mache ich, wenn ich dieselbe Art von Umrahmung nochmal bei nem anderen Wort brauche. Muss ich dann jedesmal nen neuen Zeichenbefehl geben oder kann ich das verallgemeinern? Habe versucht noch an einer zweiten Stelle dieselben Koordinaten zu nehmen, das hat nicht funktioniert. Die Umrahmung gibt es da nur an den ersten Koordinaten.
\documentclass{scrreprt}

\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}

\usepackage{tikz}
\usetikzlibrary{tikzmark}

\usepackage{cjhebrew}

\newcommand{\cj}{\cjRL}


\begin{document}


% Das ist der Satz:

\raggedleft \cj{lAm*Ah \cjLR{\tikzmark{a}}ti+s:ma`\cjLR{\tikzmark{b}} 'Et--d*ib:rey 'AdAM le'mor hin*eh \cjLR{\tikzmark{a}}dAwid\cjLR{\tikzmark{b}} m:baq*e+s rA`AtEKA}

\tikz[overlay,remember picture]
 {\draw ([yshift=-0.4em]pic cs:a) rectangle ([yshift=0.9em]pic cs:b)}
  % ; \draw[red,->] (0,0)-- (pic cs:a) node [midway]{a};
  %\draw[red,->] (0,0)-- (pic cs:b) node [midway]{b};}

\end{document}