Unterschied scrarticl/articl: In den Seitenrand schreiben

Klassen und Pakete zur einfachen Umsetzung individueller Vorstellungen


MoonKid
Forum-Meister
Forum-Meister
Beiträge: 689
Registriert: Sa 30. Jun 2012, 11:56

Unterschied scrarticl/articl: In den Seitenrand schreiben

Beitrag von MoonKid »

Ich poste das hier in der KOMA-Gruppe, weil das Problem mit article nicht auftritt.
%\documentclass{article}
\documentclass{scrartcl}
\usepackage{xltxtra}
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}

\usepackage{lipsum}
\begin{document}
{\ttfamily \small Akronym: xxxx -- foobar jon doe supported foobar in foobar environment -- geschrieben\par}

\lipsum{1}
\end{document}
Woran liegt das?
Zuletzt geändert von MoonKid am Mo 10. Apr 2017, 09:27, insgesamt 2-mal geändert.
XeLaTeX, TeX Live, vim-latexsuite

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4266
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

Das hat nichts mit environ zu tun, sondern nur mit fehlenden Trennmöglichkeiten.
{\ttfamily \small Akronym: xxxx -- foobar jon doe supported foobar in foobar environment -- WXXXXXX\par}
zeigt das gleiche.

MoonKid
Forum-Meister
Forum-Meister
Beiträge: 689
Registriert: Sa 30. Jun 2012, 11:56

Beitrag von MoonKid »

Ok, ich hab jetzt das Eingagspost geändert und das MWE vereinfacht.

Aber warum passiert das bei "article" nicht, sondern nur bei "scrartcl"?
XeLaTeX, TeX Live, vim-latexsuite

Gast

Beitrag von Gast »

Zufall. article und scrartcl haben unterschiedliche Voreinstellungen bei Schriftgröße und Satzspiegel.

MoonKid
Forum-Meister
Forum-Meister
Beiträge: 689
Registriert: Sa 30. Jun 2012, 11:56

Beitrag von MoonKid »

Anonymous hat geschrieben:Zufall. article und scrartcl haben unterschiedliche Voreinstellungen bei Schriftgröße und Satzspiegel.
Bei TeX gibt es keine Zufälle. ;)

In meinem Originaldokument sieht es allerdings so aus, dass es bei allen eingeschobenenen Kommentaren in den Rand reingeht. Es sieht so aus, als würde in dem betreffenden Textstellen keine Silbentrennung stattfinden, obwohl es korrekte Wörter sind. Hab das MWE nochmal geändert.
XeLaTeX, TeX Live, vim-latexsuite

Gast

Beitrag von Gast »

Gleicht man Schriftgröße, Papiergröße und die Größe des Satzspiegels der beiden Klassen an, so erhält man auch gleiche Umbrüche, beispielsweise mit:
%\documentclass{article}
\documentclass[10pt,letterpaper]{scrartcl}% Schrift- und Papiergröße angeglichen
\usepackage[showframe]{geometry}% Satzspiegel angeglichen
\usepackage{fontspec}
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}

\usepackage{lipsum}
\begin{document}
{\ttfamily \small Akronym: xxxx -- foobar jon doe supported foobar in foobar environment -- WXXXXXX\par}

\lipsum[1]
\end{document}
Die geometry-Zeile muss natürlich bei beiden Fassungen erhalten bleiben.

fontspec habe ich verwendet, damit der Online-Editor automatisch erkennt, dass er xelatex oder lualatex verwenden soll. Das Paket xltxtra ist ohnehin im Beispiel überflüssig.

MoonKid
Forum-Meister
Forum-Meister
Beiträge: 689
Registriert: Sa 30. Jun 2012, 11:56

Beitrag von MoonKid »

Ok, das verstehe ich - einigermaßen.

In meinem Produktivdokument habe ich in den besagten Textteilen die Schrift auf \sffamily geändert. Jetzt sieht es brauchbar aus. Vermutlich macht die Festbreitenschrift das umbrechen sehr schwierig.
XeLaTeX, TeX Live, vim-latexsuite

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4266
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

Vermutlich macht die Festbreitenschrift das umbrechen sehr schwierig.
Nicht nur. fontspec setzt für diese Schrift auch diverse Werte so, dass sie für das Schreiben von Code geeignet sind. Insbesondere sind Stretch + Shrink auf Null gesetzt, und die Trennung wird aktiv unterdrückt.

Wenn du wirklich \ttfamily als Textschrift benutzen willst, würde ich eine eigene Schriftfamilie empfehlen. (Mit luatex ist dann Stretch + Shrink immer noch 0)
\documentclass{scrartcl}
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}
\newfontfamily\commentfamily{lmmono10-regular.otf}
\usepackage{lipsum}
\begin{document}
{\commentfamily \small Akronym: xxxx -- foobar jon doe supported foobar in foobar environment -- geschrieben\par
 \the\fontdimen3\font \par% stretch
 \the\hyphenchar\font % Trennzeichen
\par }


{\ttfamily \small Akronym: xxxx -- foobar jon doe supported foobar in foobar environment -- geschrieben\par
\the\fontdimen3\font \par% stretch
\the\hyphenchar\font % Trennzeichen -1=keine Trennung
\par }

\lipsum[1]
\end{document}

MoonKid
Forum-Meister
Forum-Meister
Beiträge: 689
Registriert: Sa 30. Jun 2012, 11:56

Beitrag von MoonKid »

u_fischer hat geschrieben:fontspec setzt für diese Schrift auch diverse Werte so, dass sie für das Schreiben von Code geeignet sind. Insbesondere sind Stretch + Shrink auf Null gesetzt, und die Trennung wird aktiv unterdrückt.
Ah! Genau sowas tex-internes habe ich doch vermutet. Danke für den wertvollen Hinweis!!!
XeLaTeX, TeX Live, vim-latexsuite

nixversteh
Forum-Meister
Forum-Meister
Beiträge: 530
Registriert: Di 10. Aug 2010, 09:47
Wohnort: Wrestedt

....

Beitrag von nixversteh »

... ein Vorschlag von H. Voß http://tug.ctan.org/info/examples/Einfu ... 4-02-8.ltx verwendet \usepackage{everysel}
\documentclass{scrartcl}
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}
\usepackage{everysel}
\EverySelectfont{%
\fontdimen2\font=0.4em% interword space
\fontdimen3\font=0.2em% interword stretch
\fontdimen4\font=0.1em% interword shrink
\fontdimen7\font=0.1em% extra space
\hyphenchar\font=`\-% to allow hyphenation
}
\usepackage{lipsum}
\begin{document}
{\ttfamily \small Akronym: xxxx -- foobar jon doe supported foobar in foobar environment -- geschrieben\par}
\lipsum{1}
\end{document}
Absence of evidence is not evidence of absence

Antworten