plainTeX 文档中的可点击链接
clickable links in plainTeX document
是否可以在使用 pdftex 编译时在 plainTeX 文档中定义可点击链接?
据我所知,plainTeX 不支持此功能。
要在从 TeX
(plainTex
) 文档生成的 pdf 文档中创建可点击链接,您可以使用此代码:
\newif\ifpdfmode
\ifx\pdfoutput\undefined
\else
\ifnum\pdfoutput>0 \pdfmodetrue\fi
\fi
\def\url#1{%
% turn off the special meaning of ~ inside \url{}.
\begingroup\catcode`\~=12\catcode`\_=12\relax
\ifpdfmode
\pdfstartlink user{
/Subtype /Link
% w/o this you get an ugly box around the URL.
/Border [ 0 0 0 ] % radius, radius, line thickness
/A <<
/Type /Action
/S /URI
/URI (https://#1)
>>
}%
{\tt#1}%
\pdfendlink{}%
\else
%{\tt https\negthinspace:\negthinspace/\negthinspace/#1}%
{\tt#1}%
\fi
\endgroup}
您可以将其保存在名为 lib/url.sty
的文件中。
请注意,它会注入一些 pdf 代码,因为 TeX 本身不支持链接(即使使用 pdftex
编译器)。
一旦完成,这只是在您的 TeX
代码中使用宏 url
的问题:
\input lib/url.sty
My preferred site is \url{whosebug.com}!
当文档未使用 pdftex
编译时,宏 \url
也有效。在这种情况下,条件 ifpdfmode
将由编译器设置为 false
,并且将呈现使用 \tt
字体格式化的简单文本。
您可以在此处找到“实时”示例:https://github.com/madrisan/cv
是否可以在使用 pdftex 编译时在 plainTeX 文档中定义可点击链接? 据我所知,plainTeX 不支持此功能。
要在从 TeX
(plainTex
) 文档生成的 pdf 文档中创建可点击链接,您可以使用此代码:
\newif\ifpdfmode
\ifx\pdfoutput\undefined
\else
\ifnum\pdfoutput>0 \pdfmodetrue\fi
\fi
\def\url#1{%
% turn off the special meaning of ~ inside \url{}.
\begingroup\catcode`\~=12\catcode`\_=12\relax
\ifpdfmode
\pdfstartlink user{
/Subtype /Link
% w/o this you get an ugly box around the URL.
/Border [ 0 0 0 ] % radius, radius, line thickness
/A <<
/Type /Action
/S /URI
/URI (https://#1)
>>
}%
{\tt#1}%
\pdfendlink{}%
\else
%{\tt https\negthinspace:\negthinspace/\negthinspace/#1}%
{\tt#1}%
\fi
\endgroup}
您可以将其保存在名为 lib/url.sty
的文件中。
请注意,它会注入一些 pdf 代码,因为 TeX 本身不支持链接(即使使用 pdftex
编译器)。
一旦完成,这只是在您的 TeX
代码中使用宏 url
的问题:
\input lib/url.sty
My preferred site is \url{whosebug.com}!
当文档未使用 pdftex
编译时,宏 \url
也有效。在这种情况下,条件 ifpdfmode
将由编译器设置为 false
,并且将呈现使用 \tt
字体格式化的简单文本。
您可以在此处找到“实时”示例:https://github.com/madrisan/cv