Fehler bei verlinkungen

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Fehler bei verlinkungen

von KOMA » So 4. Jul 2010, 10:04

Mit fontinstallationguide meine ich den fontinstallationguide. AFAIK steht da auch etwas darüber, wie man in einem virtuellen Font Zeichen ersetzen und Kerningtabellen ändern/aufbauen kann. Wenn es da nicht drin steht, dann steht es in der Anleitung zu fontinst.

von Laures » Fr 2. Jul 2010, 21:57

wenn du mit font installation meist truetype/opentype schriften nach latex zu kriegen... damit befasse ich mich grad.

Ich muss mir noch ravenna und mentor zurechtbasteln.

von KOMA » Fr 2. Jul 2010, 21:53

Nicht gesperrter Versalsatz ist hässlich und typografisch betrachtet in mehrfacher Hinsicht ungünstig. Deshalb sollte man von \MakeUppercase für mehr als einen Buchstaben die Finger lassen. Gut gesperrter Versalsatz erfordert in der Regel Handarbeit, ein gute Auge und etwas Erfahrung - und Zeit. Und weil die meisten Anwender, das alles nicht wissen, gibt es viele hässliche Dokumente und leider auch Bücher.

BTW: Kapitälchen sollte man i. d. R. eigentlich auch leicht sperren. Dort ist es aber nicht ganz so schlimm, darauf zu verzichten. Außerdem kann man dort besser automatisch sperren (das microtype-Paket bietet dafür Befehle), weil es besser ausgebaute Kerning-Tabellen gibt.

Achso: Du kannst Dir natürlich einen (virtuellen) Font basteln, bei dem alle Kleinbuchstaben durch die entsprechenden Großbuchstaben ersetzt sind und gleichzeitig bereits passende Metriken und Kerning-Paare definiert sind, so dass das Sperren entfällt. Ja, das macht ebenfalls viel Arbeit. Vor allem, muss man sich erst einmal durch Anleitungen wie den fontinstallationguide lesen. Wenn man das dann aber irgendwann geschafft hat und das gewonnene Wissen auch immer frisch hält, wird man gleich mal eben zum geschätzten Experten. :twisted:

von Laures » Fr 2. Jul 2010, 21:38

gut das zu wissen.
blöd ist es trotzdem, den Kapitälchen sind halt was anderes als Großbuchstaben.

von KOMA » Fr 2. Jul 2010, 21:04

Schon \uppercase und \lowercase sind keine normalen Primitiven. Für die Makros \MakeUppercase und \MakeLowercase gilt dies (sinngemäß) noch viel mehr. U. a. wird das Argument dieser Makros mit \protected@edef verarbeitet. Bereits das funktioniert nur, wenn das Argument voll expandierbar bzw. problematische Teile darin mit \protect geschützt sind. Das ist allerdings dann nicht mehr möglich, wenn man \MakeUppercase an Stellen einschleußt, an denen man das Argument gar nicht genau kennt, bzw. keinen absoluten Einfluss darauf hat. Im konkreten Fall wird (bei der LaTeX2e-Kernel-Version von \@startsection) das 6. Argument von \@startsection später u. a. so verwende:
      #6{%
        \@hangfrom{\hskip #3\relax\@svsec}%
          \interlinepenalty \@M #8\@@par}%
Schon das \@hangfrom dürfte im Argument von \MakeUppercase schief gehen.

Fazit: \MakeUppercase und \MakeLowercase sollte man nie als Maßstab für irgendwelche Aussagen bezüglich Makros mit Argumenten nehmen.

von skater » Fr 2. Jul 2010, 20:13

Die ERSTE Lösung wäre, einfach auf GROßBUCHSTABEN zu verzichten.

Die erste Frage wäre, was genau du da eigentlich erreichen möchtest.

Um \MakeUppercase würde ich – auch aus anderen Gründen – einen großen Bogen machen.

Ansonsten:
\documentclass{scrreprt}
\usepackage[T1]{fontenc}
\usepackage{kpfonts}

\addtokomafont{section}{\scshape}

\begin{document}
\chapter{chapter}
text
\section{section}
text
\end{document}

Fehler bei verlinkungen

von Laures » Fr 2. Jul 2010, 04:08

Hi, ich bins mal (oder besser schon?) wieder.

Laut Dokumentation kann man im style-Argument von \@startsection als letztes Makro eines wählen das den Titel der Gliederungsebene als Parameter erwartet.

Wenn ich das aber wirklich mache (z.B. mit \MakeUppercase) bricht beim compilieren alles auseinander. Nur wenn ich die Nummerierung mit \setcounter{secnumdepth}{0} runterschraube geht es. Und selbst dann bekomme ich von pdftex warnungen ala: name(section*.1) has been referenced but does not exist. replaced with a fixed one

Danach funktionieren im PDF die Sections im inhaltsverzeichnis nciht mehr. Die führen dann alle zur ersten seite.

Hier eine kleine Sandbox zum Testen:
\documentclass[twoside,twocolumn,10pt,pdftex]{scrbook}
\usepackage{Sandbox}
\usepackage{hyperref}

\begin{document}

\chapter{chapter}

text

\clearpage

\section{section}

text

\end{document}
die Sandbox.sty enthällt:
\setcounter{secnumdepth}{0}
\renewcommand\section{\@startsection{section}{1}{\z@}%
	{-3.5ex \@plus -1ex \@minus -.2ex}%
	{2.3ex \@plus.2ex}%
	{%
		\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax%
		\setlength{\parfillskip}{\z@ plus 1fil}\fi%
		\normalfont\MakeUppercase
	}%
}%
Wenn der \setcounter auskommentiert wird, explodiert alles. wird \MakeUppercase entfernt ist alles wieder in ordnung.

Ist das Problem bekannt und gibt es eine Lösung dafür?

Nach oben