Hiperlinks em TeX simples

Hiperlinks em TeX simples

Olá a todas as pessoas do (La)TeX

Aqui:

Plain TeX e diferentes estilos de hiperlink em dvi e pdf

existem algumas macros (escritas por Alan U. Kennington) sobre como produzir hiperlinks e hiperlinks de referência cruzada em TeX simples. Eu testei, mas para mim o link desaparece quando converto o formato dvi para pdf com: dvips -z file.dvie depois ps2pdf file.ps. Aqui está meu exemplo simples:

% 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

para ser processado simplesmente com tex file. O link funciona bem no formato dvi mas, como eu disse, não existe mais após dvips -z -> ps2pdfa conversão.

Por favor ajude quem puder.

Responder1

Não tenho certeza, mas IMHO a forma dvips -zque convertehipertexto-htmlespeciais paramarca pdfnão funciona porque não é suportado agora. O pacote hyperref para LaTeX não usa os especiais hypertext-html quando o modo LaTeX -> dvi -> dvips -> ps2pdf é usado. Ele usa sua própria solução complicada com muito mais e grandes especiais: eles geram omarca pdflinguagem diretamente.

Minha suposição é baseada no fato de que ninguém usa especiais hypertex-html quando o modo dvi -> PS -> PDF é usado, então eles não são suportados. Claro, eles estão documentados em uma página www muito antiga e estão trabalhando no visualizador xdvi.

Recomendo não usar o modo tex -> dvi -> dvips -> PS -> ps2pdf porque hoje temos métodos muito mais simples para gerar PDF.

EditarEu encontrei o núcleo do bug. Se o link começar no modo vertical e terminar na primeira linha do parágrafo no modo horizontal (como no seu exemplo), a matriz retangular sensível do link desaparecerá. Tente usar Hey, \LinkHrefText{label}{please click here}em vez de apenas \LinkHrefText{label}{please click here}. Ou prefixe seu link com \leavevmode.

informação relacionada