Newsgroup: it.comp.software.tex
Titolo: MikTex 2.5 e Riferimenti alle section

Da quando ho aggiornato MixTex dalla v.2.4 alla v.2.5, il pacchetto
Hyperref (o almeno credo), nella classe 'book', non si comporta piu'
alla stessa maniera.
Mi spiego:
Ora, sia che creo un pdf direttamente e sia che creo un dvi, non ho
piu' i riferimenti alle section e alle subsection. I riferimenti non ci
sono ne' nell'indice e ne' nei bookmarks di acrobat.
Tutto cio' non succede nella classe 'article'.
Io credo che dipende dalla nuova versione del pacchetto di Hyperref,
visto che e' lui che si occupa di questi riferimenti e degli ancoraggi
nel pdf...
Cosa peggiore e' che ho provato a tornare alla versione precedente,
cioe' MikTex 2.4, reistallandola da capo, ma mi trovo nella stessa
situazione... Questo credo succeda perche' ormai il pacchetto hyperref
e' stato aggiornato...
Qualcuno si trova nella stessa mia situazione? Sapete risolverla? Io
penso che basterebbe una versione vecchia dell'Hyperref...

 scrive:

È possibile che nel documento tu usi qualcosa come
\ifx\pdfoutput\undefined
o no?
Mostraci un esempio minimale, sia uno che funziona, sia uno che non
funziona.
Ciao
Enrico

 Enrico
Si e' vero, uso \ifx...
Ecco un'esempio della classe 'book' che non funziona:
\documentclass[a4paper, 12pt, italian]{book}
\usepackage{babel}
....
\ifx\pdfoutput\undefined
    \usepackage{graphicx}
        \else
            \usepackage[pdftex]{graphicx}
                \fi
.......
\usepackage{fancyhdr}
\usepackage{indentfirst}
....
\ifx\pdfoutput\undefined
    \usepackage{hyperref}
        \else
            \usepackage[pdftex, bookmarks={true},
bookmarksopen={true}]{hyperref}
                \fi
\usepackage{url}
.....
\pagestyle{plain}
%------------------------------------------------------------------------
\title{Titolo}
\author{\href{mailto:
mail}{nome
}}
\date{}
\includeonly{intro, cap1, cap2, cap3, cap4, cap5, cap6, biblio}
%------------------------------------------------------------------------
\begin{document}
\maketitle
\tableofcontents
%------------------------------------------------------------------------
%\include{intro}
\include{cap1}
\include{cap2}
\include{cap3}
\include{cap4}
\include{cap5}
%\include{cap6}
%------------------------------------------------------------------------
\bibliographystyle{natbib_ita} % plainnat
\nocite{*}
\bibliography{biblio}
\addcontentsline{toc}{section}{Bibliografia}
\end{document}
Ed il prossimo e' un esempio della classe 'article' che mi funziona:
\documentclass[a4paper,11pt,italian]{article}
\usepackage{babel}
...
\ifx\pdfoutput\undefined
    \usepackage{graphicx}
        \else
            \usepackage[pdftex]{graphicx}
                \fi
...
\usepackage{url}
\ifx\pdfoutput\undefined
    \usepackage{hyperref}
        \else
            \usepackage[pdftex, pdfstartview={}, pdfborder={0 0
0}]{hyperref}
                \fi
\begin{document}
\title{Titolo}
\author{\href{mailto:
mail}{nome
}}
\date{}
\maketitle
\tableofcontents
\begin{abstract}
....
\end{abstract}
\section{prima sezione}
...
\subsection{prima sottosezione}
...
\end{document}

 > Č possibile che nel documento tu usi qualcosa come

Da un po' di tempo tutte le distribuzioni impiegano l'eseguibile
pdfetex sia per compilare latex che per pdflatex. Chi mantiene
i sorgenti ha deciso (a ragion veduta) di apportare un cambiamento.
Inizialmente pdfetex chiamato con latex non metteva a disposizione
le primitive di pdftex (per esempio \pdfoutput) e quindi il test
\ifx\pdfoutput\undefined era sufficiente per discriminare fra
latex e pdflatex.
Adesso questo non accade piů (ci sono ottime ragioni, fidati). In
compenso esiste un pacchetto che si occupa proprio della faccenda,
si chiama ifpdf:
\documentclass[a4paper, 12pt, italian]{book}
\usepackage{ifpdf}
\usepackage{babel}
....
\usepackage{graphicx}
....
\usepackage{fancyhdr}
\usepackage{indentfirst}
....
\ifpdf
  \usepackage[bookmarks={true},bookmarksopen={true}]{hyperref}
\else
  \usepackage{hyperref}
\fi
Nota che non č necessario passare l'opzione 'pdftex' a graphicx
né a hyperref, se ne accorgono da soli. La documentazione di
hyperref consiglia di caricarlo per ultimo.
Ciao
Enrico

 Enrico
Ciao, innanzitutto ti rinrazio delle informazioni... tutte cose a me
sconosciute... pero', anche usando \ifpdf il problema dei riferimenti
rimane... nel senso che nell'indice (\tableofcontents) non compaiono le
section e subsection, oltre che nei bookmarks del pdf... se hai altri
suggerimenti ti prego di farmi sapere... ti ringrazio di nuovo!!