
Hallo an alle (La)TeX-Leute
Hier:
Plain TeX und verschiedene Hyperlink-Stile in DVI und PDF
es gibt einige Makros (geschrieben von Alan U. Kennington) zum Erstellen von Hyperlinks und Querverweis-Hyperlinks in reinem TeX. Ich habe sie getestet, aber bei mir verschwindet der Link, wenn ich das DVI-Format mit: dvips -z file.dvi
und dann in PDF konvertiere ps2pdf file.ps
. Hier ist mein einfaches Beispiel:
% first Alan U. Kennington's macros:
%
% This \PreHatch macro to prefix a text string with a hatch character.
{\catcode`\^=6 \catcode`\#=12 \gdef\PreHatch^1{#^1}}
% Anchor points for cross-reference hyperlinks.
\def\LinkNameText#1#2{%
\special{html:<a name="#1">}#2\special{html:</a>}}
\def\LinkNamePRE#1{\special{html:<a name="#1">}}
\def\LinkNamePOST{\special{html:</a>}}
\def\LinkName#1{\LinkNameText{#1}{}}
% Cross-reference hyperlinks to defined anchor points.
\def\LinkHrefText#1#2{%
\special{html:<a href="\PreHatch{#1}">}#2\special{html:</a>}}
% Pre-text and post-text macros.
\def\LinkHrefPRE#1{\special{html:<a href="\PreHatch{#1}">}}
\def\LinkHrefPOST{\special{html:</a>}}
% External hyperlinks.
\def\LinkHrefExtText#1#2{%
\special{html:<a href="#1">}#2\special{html:</a>}}
\def\LinkHrefExt#1{\LinkHrefExtText{#1}{#1}}
\def\LinkHrefExtTT#1{\LinkHrefExtText{#1}{{\tt#1}}}
% then my simple test:
%
hallo\LinkName{label}
\LinkHrefText{label}{please click here}
\end
mit einfach zu verarbeiten tex file
. Im DVI-Format funktioniert der Link einwandfrei, aber wie gesagt, nach dvips -z -> ps2pdf
der Konvertierung ist er nicht mehr vorhanden.
Bitte helfen Sie, wer kann.
Antwort1
Ich bin mir nicht sicher, aber meiner Meinung nach ist die Art und Weise, dvips -z
wieHypertext-HTMLSonderangebote fürpdfmarkfunktioniert nicht, da es derzeit nicht unterstützt wird. Das Hyperref-Paket für LaTeX verwendet die Hypertext-HTML-Specials nicht, wenn die Methode LaTeX -> dvi -> dvips -> ps2pdf verwendet wird. Es verwendet seine eigene komplizierte Lösung mit viel mehr und größeren Specials: Sie erzeugen diepdfmarkSprache direkt.
Meine Vermutung beruht auf der Tatsache, dass niemand Hypertex-HTML-Specials verwendet, wenn die Methode dvi -> PS -> PDF verwendet wird, sodass sie nicht unterstützt werden. Natürlich sind sie auf einer sehr alten WWW-Seite dokumentiert und funktionieren im xdvi-Vorschauer.
Ich empfehle, nicht die Methode tex -> dvi -> dvips -> PS -> ps2pdf zu verwenden, da wir heute viel einfachere Methoden zum Generieren von PDF haben.
BearbeitenIch habe den Kern des Fehlers gefunden. Wenn der Link im vertikalen Modus beginnt und in der ersten Absatzzeile im horizontalen Modus endet (wie in Ihrem Beispiel), verschwindet das empfindliche rechteckige Array des Links. Versuchen Sie, Hey, \LinkHrefText{label}{please click here}
anstelle von nur zu verwenden \LinkHrefText{label}{please click here}
. Oder stellen Sie Ihrem Link ein Präfix voran \leavevmode
.