LaTeX tartalomjegyzék link hiba

Fórumok

Sziasztok!

A következő problémámban szeretnék segítséget kérni. Egy hosszabb terjedelmű szöveget - regényt - írok LaTeX-ben. A probléma viszont az, hogy a tartalomjegyzékben (\tableofcontents) ugyan jól jelennek meg az oldalszámok, a bennük található linkek már nem jó helyre mutatnak. Maga a regény fejezetekre (section) és alfejezetekre (subsection) bontva. Minden alfejezet linkje valamiért az adott fejezet első oldalára mutat, a fejezetek linkjei pedig az előző fejezet első oldalára. Totális káosz és nem értem, hogy miért, elvégre a tartalomjegyzék korrekt.

Találkozott-e már valaki hasonlóval és tud-e esetleg valami megoldást?

Köszönöm előre is!

Hozzászólások

Hányszor fordítottad le a a forrást?

gy

Próbáld ki ezzel a preambulummal, értelemszerűen átalakítva a saját dolgaidhoz majd:
Nálam semmi galiba

\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{makeidx}
%\usepackage{rovas}
\def\magyarOptions{hyphenation=huhyphn}
\usepackage[magyar]{babel}
\usepackage{pstricks,pst-grad}

\frenchspacing

\usepackage{fancyhdr}
%\pagestyle{fancy}
\usepackage{setspace}
\usepackage{indentfirst}

\usepackage{graphics}

\usepackage{thumbpdf}
\usepackage[pdftex,
colorlinks=true,
urlcolor=rltblue, % \href{...}{...} external (URL)
filecolor=rltgreen, % \href{...} local file
linkcolor=rltred, % \ref{...} and \pageref{...}
pdftitle={A cím},
pdfauthor={valami --- valami},
pdfsubject={Minden jog fenntartva },
pdfkeywords={valami nevek},
pdfproducer={pdfLaTeX},
% pdfadjustspacing=1,
pagebackref,
pdfpagemode=None,
bookmarksopen=true]{hyperref}
\usepackage{color}
\definecolor{rltred}{rgb}{0.75,0,0}
\definecolor{rltgreen}{rgb}{0,0.5,0}
\definecolor{rltblue}{rgb}{0,0,0.75}

\author{neved}
\title{cim}

\begin{document}

\maketitle
\tableofcontents
\newpage

\section{Az alapgondolat}

könyved szövege ide

\end{document}

:)
Gondoltam elkezdem megtanulni. Annyira bonyolult, hogy ihaj, különösen, amikor összevont betűk vannak.
Különben az Odüsszeia első néhány sorát írtam be rovásírással magamnak valahova, természetesen visszafelé...

A preambulumban itt fent kiremeltem %-jellel.
---
--- A gond akkor van, ha látszólag minden működik. ---
---

csak kérdezni tudok:)

1) Használod-e a babel csomagot? Ha igen, melyik magyar.ldf fájllal? Némelyik disztribúció alapból elég régi/hiányos magyar.ldf fájlt tartalmaz.

2) használsz-e vmi fancy-akármi spéci csomagokat/makrókat, amik bekavarhatnak (fölülírhatják a standard beállításokat)?

amúgy a fentebb látható mintafájllal dolgozva simán menni kellene mindennek...

Novárjunkcsak.
Az előző kérdés így átolvasva nem is nekem szólt.
Nem baj, én is válaszoltam (utólagos bevezetővel):

Igen, megy is, hála a sok-sok jól dokumentált latexes könyvnek, melyek mindegyikét meg is vettem, nem sajnáltam a lét rá.

Szóval szerintem én ügy 8 éve talán ugyanazt a latex-et használom, babellel, mindennel együtt.

Hogy is kell megnéznem, mit is tartalmaz?
Elfelejtettem, hiszen olyan stabil és pazar a TeX, hogy törődni sem kell vele. Distribváltásoknál is áttoltam mindent.

Ahogy nézelődöm, ezek vannak:

a[texmf]$ cat ./ls-R | grep babel
babel
./tex/generic/babel:
babel.def
babel.sty
rlbabel.def

a[texmf]$ cat ./ls-R | grep fancy
fancybox
fancyhdr
fancyheadings
fancyvrb
./tex/latex/fancybox:
fancybox.sty
./tex/latex/fancyhdr:
fancyhdr.sty
./tex/latex/fancyheadings:
fancyheadings.sty
./tex/latex/fancyvrb:
fancyvrb.sty
a[texmf]$

verziószámokat meg hasonlókat nemtom hogyan kell.
Mellékesen az egész /usr/share/texmf könyvtáram squashfs-sel van tömörítve és fstabbal mountolva, ergo írásvédett az elbarmolódsoktól is..

---
--- A gond akkor van, ha látszólag minden működik. ---
---

A magyar nyelv támogatását adó magyar.ldf változatokban van egy "kis" különbség, pl. nálam a hivatalos TeXLive 2011-ben:

$ ll /usr/share/texlive/texmf-dist/tex/generic/babel/magyar.ldf
-rw-r--r--. 1 root root 21747 2006 jan 13 /usr/share/texlive/texmf-dist/tex/generic/babel/magyar.ldf

a legújabb letölthető meg:

$ ll magyar.ldf.2012.04.17
-rw-rw-r--. 1 viragh viragh 246164 ápr 17 11.57 magyar.ldf.2012.04.17

Ez azt jelenti, hogy ugyanúgy rosszak az oldalszámok?

Esetleg le lehetne minimálisra faragni a példakódot:

%---------------------
\documentclass{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc} % ha a forrásszöveg UTF8 kódolású
%\usepackage[latin2]{inputenc} % ha a forrásszöveg iso8859-2 kódolású
\usepackage[magyar]{babel}
\author{nev}
\title{cim}
\begin{document}
\maketitle
\tableofcontents
%ide jön a dokumentum szövege
\end{document}
%---------------------

A http://tex.stackexchange.com (angol nyelvű) oldalon is lehet próbálkozni, ott "mindent" tudnak a TeX-ről :)

A tartalomjegyzékben megjelenő oldalszámok jók. Hyperref csomag esetén viszont a tartalomjegyzékben található fejezetek és alfejezetek kattinthatóvá (az adott oldalra mutató linkké) válnak. Így ha a tartalomjegyzékben például rákattintok az 50. oldalon kezdődő alfejezetre, akkor a PDF olvasónak át kellene ugrania az 50. oldalra. Ehelyett arra az oldalra ugrik, ahol az adott alfejezetet tartalmazó fejezet kezdődik. Tehát a tartalomjegyzék maga jó, csak a hyperref által hozzáadott linkek nem.

androbit.org - Informatikai portál és könyvtár

Megnéztem, nálam az eredeti pdf-ed nem jó, de ha pdflatex-hel lefordítom, az eredmény már jó lesz.
Valahol a magyar babel-lel lesz a baj, és azzal, hogy átdefiniálod a sectionhead, stb. parancsokat. Szerintem nem érdemes, használd a latex eredetijét, és a http://math.bme.hu/latex/ -ről töltsd le a javított magyarítást, hogy jó sorrendben legyen a szám és a fejezet szó.

MEGOLDÁS: Valóban a magyar.ldf csomaggal volt a baj. Az 1.5-ös verzióval már tökéletesen működik minden. Nagyon köszönöm a segítségeteket!

Egy másik kérdésem is akadna, ha nem probléma: chapter*-gal és section*-gal - már nem section-subsectionre van bontva - rejtem el a számozást. Az addcontentsline-nal hozzáadtam mindent a tartalomjegyzékhez, szóval így viszonylag minden rendben van, viszont szeretném, ha a fejléc bal-jobb oldalán (páros-páratlan) megjelenne az adott fejezet címe is. Erre tudtok valamilyen normális renewcommandot, ami *-os fejezetek esetében is működik, vagy teljesen máshonnan kellene megközelítenem a problémát?

androbit.org - Informatikai portál és könyvtár