Neue Version von Tex Live verändert Design

Alles rund um das System für Linux, Mac & Windows.


ChristophK
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Mo 16. Mai 2016, 21:12

Neue Version von Tex Live verändert Design

Beitrag von ChristophK »

Hallo,

ich habe von Tex Live ein Update durchgeführt und nun haben sich die Überschriften "unschön" verschoben und weiß nicht mehr weiter. Bin leider kein Latex Power-User, aber habe mittlerweile schon 10-20 Arbeiten mit Latex geschrieben und hatte immer gut funktioniert.

Habe nun von
pdfTeX, Version 3.1415926-2.5-1.40.14 (TeX Live 2013) (format=pdflatex 2014.11.10)
auf
pdfTeX, Version 3.14159265-2.6-1.40.16 (TeX Live 2015) (preloaded format=pdflatex 2016.1.16)
(Auszug aus dem log File)

gewechselt und bekommt nun die Kapitelüberschriften in den Header verschoben. Das macht das komplett Design kaputt und kann dies unmöglich so lassen. Mir ist dies auch zu spät aufgefallen und weiß nun keine Lösung. Ich hatte bereits eine "alte Arbeit" nochmals ohne Änderung im tex File kompiliert und mir damit das PDF negativ beeinflusst: Die Kapitelüberschriften, welche zuvor gepasst hatten, wurde noch oben in Header geschoben.

Kennt jemand das Problem?? Ich fürchte fast, dass dein Downgrade auf die alte Version nicht möglich ist, da ich auch mit der OSX Version hochgezogen bin.

Besten Dank für eure Hilfe.

Gruß
Christoph

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Das hat vermutlich damit zu tun, dass Du mit dem Wechsel von TeXLive 2013 auf TeXLive 2015 auch von ganz vielen Klassen und Paketen neue Versionen bekommen hast. Irgendwo in Deinem Code steht wahrscheinlich ein Befehl, der die Kapitelüberschriften nach oben verschiebt, denn meistens fügen die Klassen sogar einen zusätzlichen vertikalen Abstand der Kapitelüberschriften vom oberen Rand des Textbereiches ein.

Bitte gib einfach noch ein Minimalbeispiel an, das lauffähig ist und Dein Problem zeigt, aber möglichst kurz ist, also keinen Code enthält, der für das Problem nicht relevant ist.

ChristophK
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Mo 16. Mai 2016, 21:12

Beitrag von ChristophK »

Danke erstmals für dein rasches Feedback. Also ich habe das Problem mal isoliert und es liegt nicht im meinem tex-file:
- Ich verwende ein "Vorlage" der Hochschule, welche wohl mit der \documentclass{HSMW-Thesis} aufgerufen wird.
- Wenn ich nun komplett alles aus dem tex File entferne und nur ein Kapitel darin benenne, dann kommt schon das Problem vor:
\documentclass{HSMW-Thesis}
\begin{document}
\Hauptteil
% Diese Anweisung nicht loeschen!
\chapter{Einleitung}
Hier beginnt der Text.
\end{document}
Der Kern der Sache liegt wohl im dem Stylesheet der Hochschule:
- Es gibt da noch eine Datei mit Endung "sty" und eine Datei mit
- Endung "als"

Die Dateien hier als Code einzufügen macht wohl wenig Sinn. Hab mal die "cls-Datei" beigefügt. Das sieht aber alles nach "Hexenkunst" aus ...
:evil:

Findest du dich in dem "cls-File" zurecht oder ist doch eher das "sty-File" wichtig?

Merci & Gruß
Christoph
Zuletzt geändert von ChristophK am Di 17. Mai 2016, 21:23, insgesamt 1-mal geändert.

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Die von Dir verwendete Klasse ist schon etwas älter und sie basiert, wie fast vermutet, auf einer veralteten KOMA-Script Version.

In den Zeilen 546 und 574 wird \chapterheadstartvskip umdefiniert und diese Umdefinitionen stehen im Argument eines \AtBeginDocument Befehls. Aus den beiden Umdefinitionen muss das \vspace*{-\topskip} entfernt werden, damit die Überschriften wie früher an der Kopfzeile kleben, aber diese wenigstens nicht mehr überlappen.

Edit: Code entfernt, korrigierte Version steht weiter unten.
Zuletzt geändert von esdd am Di 17. Mai 2016, 14:38, insgesamt 1-mal geändert.

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

Beitrag von u_fischer »

esdd hat geschrieben:Die von Dir verwendete Klasse ist schon etwas älter und sie basiert, wie fast vermutet, auf einer veralteten KOMA-Script Version.

In den Zeilen 546 und 574 wird \chapterheadstartvskip umdefiniert
Hm. Das ist ja eine ziemlich dramatische Änderung. Hast du mal nachgerechnet, was man ändern muss, damit das hier in TL13 und TL15/16 identisch aussieht:
\documentclass{scrbook}
\renewcommand\chapterheadstartvskip{\vspace{-1cm}}
\begin{document}
\tableofcontents
\chapter{Einleitung}

Hier beginnt der Text.
\end{document} 

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Der Unterschied zwischen beiden ist \topskip. Wenn ich mich richtig erinnere, war die Änderung im Zuge der Einführung von \DeclareSectionCommand entweder in KOMA-Script Verison 3.15 oder 3.16, also Anfang 2015.

Wenn mit TL 2013
\renewcommand\chapterheadstartvskip{\vspace{-1cm}}
verwendet wurde, müsste man jetzt mit
\renewcommand\chapterheadstartvskip{\vspace{-1cm}\vspace{\topskip}}
das gleiche erreichen.

In der vom OP angehangenen Klasse, steht zum Beispiel
\renewcommand*{\chapterheadstartvskip}{\vspace*{-\topskip}\vspace*{-0.8cm}}
Beim Umdefinieren muss also nur das \vspace*{-\topskip} weggelassen werden.

Vermutlich werden sich neben der Verschiebung der Überschrift weitere Unterschiede bei der Verwendung der Klasse mit der damaligen und heutigen KOMA-Script Version finden lassen. Ohne mir jetzt alles genau angesehen zu haben, ist mir aufgefallen, dass die angehangene Klasse \othersectionlevelsformat umdefiniert, was bei aktuellem KOMA-Script keine Auswirkungen haben dürfte.

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

Beitrag von u_fischer »

Nur \topskip reicht nicht. Ich habe nach \renewcommand\chapterheadstartvskip{\vspace{\dimexpr-1cm+\topskip}} oder \renewcommand\chapterheadstartvskip{\vspace{-1cm}\vspace{\topskip}} immer noch eine leichte Verschiebung.

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

Beitrag von u_fischer »

esdd hat geschrieben: Ohne mir jetzt alles genau angesehen zu haben, ist mir aufgefallen, dass die angehangene Klasse \othersectionlevelsformat umdefiniert, was bei aktuellem KOMA-Script keine Auswirkungen haben dürfte.
Mir ist aufgefallen, dass die Klasse babel + ngerman.sty lädt, was überhaupt nicht gesund ist.

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

Beitrag von u_fischer »

esdd hat geschrieben:Der Unterschied zwischen beiden ist \topskip.
Der korrekte Versatz ist \baselineskip + \parskip. Wobei ich mir sicher bin, ob das wirklich geplant ist, denn auch die Präamble hat ihre Position leicht geändert:
\documentclass{scrbook}
%\renewcommand\chapterheadstartvskip{\vspace{\dimexpr-1cm+\baselineskip+\parskip}} %neu
%\renewcommand\chapterheadstartvskip{\vspace{\dimexpr-1cm}}                        %alt

\begin{document}
\setchapterpreamble[o]{yblub}
\chapter{Einleitung}
Hier beginnt der Text.
\end{document}

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

u_fischer hat geschrieben:Der korrekte Versatz ist \baselineskip + \parskip.
Stimmt, da habe ich nicht genau genug geschaut und lag falsch.

Aber ich habe mir auch das Beispiel des Fragestellers noch mal angeschaut: Dort wird die Option parskip gesetzt und damit müsste eigentlich
\documentclass[demo]{HSMW-Thesis}
\usepackage{showframe}
\AtBeginDocument{%
  \renewcommand\chapterheadstartvskip{\vspace*{\dimexpr -.8cm-\topskip+\baselineskip+\parskip}}%
}
\begin{document}
\tableofcontents
\Hauptteil
% Diese Anweisung nicht loeschen!
\chapter{Einleitung}
Hier beginnt der Text.
\end{document}
passen, wenn der thesis Schalter true ist, was der Voreinstellung entspricht. Wird der aber auf false gesetzt, dann gibt es noch weitere \chapterheadstartvskip Befehle, die vermutlich korrigiert werden müssten ...

Antworten