![打开对长目录路径的引用](https://linux22.com/image/299264/%E6%89%93%E5%BC%80%E5%AF%B9%E9%95%BF%E7%9B%AE%E5%BD%95%E8%B7%AF%E5%BE%84%E7%9A%84%E5%BC%95%E7%94%A8.png)
我正在尝试在表格环境中链接到目录。目录的路径通常很长,应该在表格边界处换行。此外,如果单击链接(或目录字符串本身)即可打开目录(在 Windows 计算机上),那就太好了。
我尝试了以下代码:
\documentclass[10pt]{article}
\usepackage{a4,graphicx}
\usepackage[hyphens]{url}
\usepackage{hyperref}
\begin{document}
\begin{tabular}{|ll|}
\hline
\parbox{60mm}{\bf desiredOutput:} & \parbox[t]{80mm}{\url{\\\\this\\is\\my\\veryLongDirectory\\which\\should\_be\_lineBreaking\\only\_at\_the\_boarders\_of\\my\\table\\ABC\_abc\_DEF\_def}} \\
\parbox{60mm}{\bf withRef:} & \parbox[t]{80mm}{\href{run:\\\\this\\is\\my\\veryLongDirectory\\which\\should\_be\_lineBreaking\\only\_at\_the\_boarders\_of\\my\\table\\ABC\_abc\_DEF\_def}{open dir works only here...}} \\
\parbox{60mm}{\bf badOutput:} & \parbox[t]{80mm}{'\\\\this\\is\\my\\veryLongDirectory\\which\\should\_be\_lineBreaking\\only\_at\_the\_boarders\_of\\my\\table\\ABC\_abc\_DEF\_def'} \\
\hline
\end{tabular}
\end{document}
这给了我这个输出:
在此示例中,生成的字符串为期望输出行很好,尽管我希望有删除字符串周围的框的选项。另外,我不想在点击时打开浏览器。因此,我创建了可以正常工作的引用(参见行withRef)。
我怎样才能生成我想要的链接?
答案1
我不确定这是否是所需的功能:
可以使用以下方式执行操作(运行/打开),\href{run:url}{some text}
并且可以使用以下方式获取作为 URL 的文本\nolinkurl{urlcontent}
\documentclass[10pt]{article}
\usepackage{a4,graphicx}
\usepackage[hyphens]{url}
\usepackage[colorlinks,breaklinks=true]{hyperref}
\begin{document}
\newcommand{\somecommand}[1]{%
\href{run:#1}{\nolinkurl{#1}}%
}%
\begin{tabular}{|ll|}
\hline
\parbox{60mm}{\bf Really desiredOutput??} & \parbox[t]{80mm}{\somecommand{\\\\this\\is\\my\\veryLongDirectory\\which\\should\_be\_lineBreaking\\only\_at\_the\_boarders\_of\\my\\table\\ABC\_abc\_DEF\_def}} \\
\tabularnewline
\hline
\tabularnewline
\parbox{60mm}{\bf desiredOutput:} & \parbox[t]{80mm}{\url{\\\\this\\is\\my\\veryLongDirectory\\which\\should\_be\_lineBreaking\\only\_at\_the\_boarders\_of\\my\\table\\ABC\_abc\_DEF\_def}} \\
\parbox{60mm}{\bf withRef:} & \parbox[t]{80mm}{\href{run:\\\\this\\is\\my\\veryLongDirectory\\which\\should\_be\_lineBreaking\\only\_at\_the\_boarders\_of\\my\\table\\ABC\_abc\_DEF\_def}{open dir works only here...}} \\
\parbox{60mm}{\bf badOutput:} & \parbox[t]{80mm}{'\\\\this\\is\\my\\veryLongDirectory\\which\\should\_be\_lineBreaking\\only\_at\_the\_boarders\_of\\my\\table\\ABC\_abc\_DEF\_def'} \\
\hline
\end{tabular}
\end{document}