Seite 1 von 1

Silbentrennung mittels hyphenation funktioniert nicht

Verfasst: Sa 18. Okt 2014, 01:04
von Pitufo
Hallo miteinander,

ich nutze in meinem Latex-Dokument das Paket mathpazo und würde gerne mittels hyphenation ein laaaanges Wort trennen.
Anscheinend mag hyphenation aber das mathpazo Paket nicht, mein Wort wird nicht getrennt.

Hier ein Minimalbeispiel:
% Dokumentenklasse
%-----------------------------------------------
\documentclass[
a4paper, 
12pt,
parskip=half
]{scrreprt}

\setlength\emergencystretch{3em}
\tolerance=1000
\setcounter{secnumdepth}{4}
\setcounter{tocdepth}{3}

\usepackage[ansinew]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[english,german,ngerman]{babel}

\usepackage{mathpazo}

\hyphenchar\font=\string"7F
\hyphenation{%
  Appro-xi-ma-tions-algo-rithmus
}

\begin{document}
  Eine feste obere Schranke garantiert die MST-Heuristik. Diese ist ein 2-Approximationsalgorithmus.
\end{document}
Wenn ich den Befehl
\usepackage{mathpazo}
auskommentiere, wird das Wort wie gewünscht getrennt, aber ich habe dann natürlich nicht die Schrift, die ich möchte (bzw. mir vorgegeben ist).

Wie kann das zusammenhängen? Was kann ich tun?

Danke für Eure Hilfe!

Verfasst: Sa 18. Okt 2014, 08:34
von Noch so einer
Das Wort, das Du getrennt haben möchtest, heißt ja gar nicht Approximationsalgorithmus, sondern 2-Approximationsalgorithmus. Das kann man aber ändern:
\documentclass[
a4paper,
12pt,
parskip=half
]{scrreprt}

\setlength\emergencystretch{3em}
\tolerance=1000
\setcounter{secnumdepth}{4}
\setcounter{tocdepth}{3}

\usepackage[ansinew]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[english,german,ngerman]{babel}

\usepackage{mathpazo}

\hyphenchar\font=\string"7F
\hyphenation{%
  Appro-xi-ma-tions-algo-rithmus
}

\begin{document}
  Eine feste obere Schranke garantiert die MST-Heuristik. Diese ist ein 2"=Approximationsalgorithmus.
\end{document}

Verfasst: Sa 18. Okt 2014, 14:36
von u_fischer
Dein \hyphenchar-Befehl wirkt sich nur auf die gerade aktive Schrift aus. Und das ist nicht die Palatino. Die musst du erst aktvieren:
\normalfont
\hyphenchar\font=\string"7F
Danach brauchst du den hyphenation-Befehl nicht.

Verfasst: Sa 18. Okt 2014, 17:04
von Pitufo
Vielen Dank für die Antworten, es funktioniert jetzt wie gewünscht.

Allerdings versteh ich es nicht ganz...
u_fischer hat geschrieben:Dein \hyphenchar-Befehl wirkt sich nur auf die gerade aktive Schrift aus. Und das ist nicht die Palatino.
Welche Schrift ist dann aktiv? Mit mathpazo nutze ich ja dann Palatino oder nicht? Was ist denn die Standardschrift?

Danke!

Verfasst: Sa 18. Okt 2014, 17:10
von u_fischer
mathpazo wird erst bei \begin{document} aktiviert (dort wird ein \normalfont ausgeführt). In der Präambel ist noch die normal cmr-Familie aktiv. Teste es mit \showthe\font.

Verfasst: Sa 18. Okt 2014, 17:12
von Pitufo
Wunderbar, jetzt habe ich es verstanden =), vielen Dank!

Verfasst: Sa 18. Okt 2014, 19:43
von Besserwisser
Und warum ist der Status noch "offen"? Fehlt dir noch etwas an den Antworten?

Verfasst: So 19. Okt 2014, 15:18
von cgnieder
Die Methode, hyphenchar zu ändern, hat übrigens ein paar Nachteile: http://texwelt.de/wissen/fragen/3557#3576

Grüße