9
2

Beim Schreiben eines Kochrezepts fiel mir auf, dass einige Buchstaben so zusammengerückt sind, dass es merkwürdig aussieht. Ich weiß, dass es Ligaturen sind, will das aber insbesondere nicht an Übergängen zusammengesetzte Wörter haben, damit das Auge die Wortteile besser erfasst und nicht die "Klebestellen". Hier das Beispiel:

alt text

Sieht merkwürdig aus. Der einfache Code zum Nachvollziehen:

\documentclass{article}
\begin{document}
Auflaufform
\end{document}

Wie kann ich das verbessern?

gefragt 13 Jun '13, 20:55

Felix's gravatar image

Felix
1.3k525666
Akzeptiert-Rate: 47%


Es gibt zwei Möglichkeiten Ligaturen aufzubrechen.

Lokal

Man fügt einfach \kern0pt zwischen den zu trennenden Buchstaben ein. Im Beispiel

Open in writeLaTeX
\documentclass{article}
\begin{document}
Auf\kern0pt lauf\kern0pt form
\end{document}

Es ist ebenfalls möglich die Ligatur durch eine Kursivkorrektur \/ aufzubrechen. Da diese jedoch zusätzliches "explizites" Kerning einfügt ist diese Methode nicht zu empfehlen. Siehe dazu auch TeXbook S. 306, Anwort zu Aufgabe 5.1:

In fact, the latter idea—to insert an italic correction—is preferable because TEX will reinsert the ff ligature by itself after hyphenating shelf{}ful. (Appendix H points out that ligatures are put into a hyphenated word that contains no "explicit kerns", and an italic correction is an explicit kern.) But the italic correction may be too much (especially in an italic font); shelf{\kern0pt}ful is often best.

Global

Unter Zuhilfenahme des microtype Pakets kann man Ligaturen auch im kompletten Dokument deaktivieren.

Open in writeLaTeX
\documentclass{article}
\usepackage{microtype}
\DisableLigatures{}
\begin{document}
Auflaufform
\end{document}
Permanenter link

beantwortet 13 Jun '13, 22:53

Henri's gravatar image

Henri
15.7k133943
Akzeptiert-Rate: 46%

bearbeitet 11 Mär '14, 22:34

2

\/ ist eigentlich dafür da, Kursivkorrektur hinzuzufügen. Ligaturen kann man auch mit einer leeren Gruppe {} verhindern oder mit \usepackage[ngerman]{babel} mit "|: Auf"|lage

(13 Jun '13, 23:36) cgnieder
2

@Henri: Die globale VAriante kann man praktisch nicht verwenden, da bei Abkürzungen Ligaturen doch gesetzt werden müssen: Auflage ohne, aber Aufl. mit Ligatur

(23 Jun '13, 10:39) Herbert
1

Zwei weitere "lokale" Methoden zur Unterbindung einer Ligatur bestehen in der Einfügung der Anweisungen \kern0pt und \-{\hspace{0pt}}. (Verwende die erste Methode falls keine Wortumbruch erlaubt sein soll.) Beide Methoden funktionieren sowohl in pdfLaTeX als auch in LuaLaTeX. Die lokale Methode der Einfügung einer leeren Gruppe, {}, funktioniert übrigens nicht in LuaLaTeX.

(19 Aug '13, 19:24) Mico

@Mico Mit "kern" statt "glue" hast Du Recht, sorry. Ich habe in meine Antwort noch die Meinung von Knuth zur Kursivkorrekturmethode aufgenommen.

(11 Mär '14, 22:35) Henri

Wenn man kein LuaLaTeX nutzen kann, gibt es keinen anderen Weg als ein externes Programm laufen zu lassen, welches alle Ligaturen aufbricht: Auflage => Auf"|lage

Dies geht beispielsweise mit DeLig.jar, welches auf CTAN zur Verfügung steht. Man erzeugt dann einfach eine neue Datei, die die aufgebrochenden Ligaturen enthält:

java -jar ~/bin/DeLig.jar ~/Test/USER/Horner/test.tex testnoL.tex

testnoL.tex hat dann keine Ligaturen mehr. DeLig baut auf rmligs auf, welches man ebenfalls benutzen könnte. Der Vorteil von beiden ist, dass man keine falschen Ergebnisse erhalten kann.

Permanenter link

beantwortet 23 Jun '13, 10:49

Herbert's gravatar image

Herbert
5.1k34
Akzeptiert-Rate: 31%

bearbeitet 17 Aug '13, 21:33

Zwei weitere externe Programme dieser Art sind "rmligs" von Björn Jacke (ein perl-script; siehe http://www.ctan.org/tex-archive/support/rmligs) und "Ligatures-German" von Matthias Vogel (für Verwendung mit dem Editor WinEdt; siehe http://www.winedt.org/Macros/LaTeX/Ligatures-German.php).

(17 Aug '13, 21:24) Mico

rmligs steht doch in meinem Text!

(17 Aug '13, 21:33) Herbert

Oops, habe das ganz übersehen. Sorry.

(18 Aug '13, 08:58) Mico
10

Wenn man LuaLaTeX verwendet, hat man das ziemlich neue (und ziemlich coole) selnolig-Paket von Mico Loretan zur Verfügung. Ich habe es noch nicht ausgiebig verwendet, daher kann ich noch nicht viel dazu sagen, für das gegebene Beispiel reicht es allerdings, es mit der Option ngerman zu laden:

\documentclass{article}
\usepackage{fontspec}
\usepackage[ngerman]{selnolig}

\begin{document}

Auflaufform beflügelt Koffer

\end{document}

alt text

Permanenter link

beantwortet 22 Jun '13, 22:58

cgnieder's gravatar image

cgnieder
22.1k253463
Akzeptiert-Rate: 60%

Bin gerade heute erst auf "TeX-Welt" aufmerksam gemacht worden... In Sachen selnolig-Paket mit Option 'ngerman' --- es unterbindet f-Ligaturen (hauptsächlich ff, fi, fl, ffi, und ffl, aber auch ft, fft sowie fb, fh, fj, und fk) welche Wortfugen (morpheme boundaries auf Englisch) überbrücken würden.

(17 Aug '13, 21:15) Mico

@Mico selnolig ist der Hauptgrund dafür, warum ich in letzter Zeit immer häufiger LuaLaTeX verwende :)

(17 Aug '13, 21:25) cgnieder

@Mico Freut mich sehr, Dich hier zu sehen! Ja, TeXwelt ist noch nicht so leicht zu finden ;-) es braucht noch gute Fragen für ein Fundament und damit wir durch Inhalte über google gefunden werden.

(17 Aug '13, 21:28) stefan ♦♦

@Clemens -- Vielen Dank für dieses Kompliment! Kommentare, Anfragen, und Kritik in Sachen selnolig Paket sind stets willkommen.

(17 Aug '13, 21:34) Mico

Apropos "Auflaufform" -- ich erwähne dieses Wort gleich mehrmals im user guide des selnolig-Pakets! Es ist erwähnenswert weil es gleich zwei Ligaturen enthält die Wort-Fugen überbrücken und deshalb vermieden werden sollten.

(17 Aug '13, 21:50) Mico
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:

×2

gestellte Frage: 13 Jun '13, 20:55

Frage wurde gesehen: 25,994 Mal

zuletzt geändert: 11 Mär '14, 22:42