我有以下代码:
\documentclass[12pt]{article}
\usepackage{hyperref}
\usepackage{soul}
\usepackage{blindtext}
\begin{document}
\section{Introducton}
\label{sec:intro}
\blindtext{}
\section{Second Section}
\label{sec:second}
This \ul{sentence works with ``ul''}.
Reference without ``ul'': \nameref{sec:intro}
This does not work with ``ul'': \ul{\nameref{sec:intro}}.
\end{document}
在我正在处理的文档中,我尝试\nameref{}
使用 来为 加下划线\ul{}
,但这样做时它崩溃了(出于某种原因,在本文档中它不会崩溃,只是不显示)。我使用 是\ul{}
因为与 相比它支持换行\underline{}
。我想知道是否有人对此有解决方案。谢谢。
尝试 1
我尝试查看类似的问题并发现这,并通过添加一组括号将\ul{\nameref{sec:intro}}
其改为\ul{{\nameref{sec:intro}}}
,但它只是用黑色方块替换了缺失的文本,如下所示:
第二次尝试
按照罗伯特对这个问题的评论,\soulregister\nameref7
在下面添加\usepackage{soul}
对我来说第一张图片没有什么区别。
第三次尝试
按照乌尔丽克·菲舍尔的评论,(第一种方法)\ul{\mbox{\nameref{sec:intro}}}
确实可以让文本显示出来,但是不会在文档上换行。
第四次尝试
按照乌尔丽克·菲舍尔的评论,(第二种方法)使用\underLine{\nameref{sec:intro}}
with\usepackage{lua-ul}
和 runninglualatex documentname
而不是pdflatex documentname
在终端中对我有用,并且可以对交叉引用的文本进行换行。
答案1
按照乌尔丽克·菲舍尔的评论,(第二种方法)使用\underLine{\nameref{sec:intro}}
with\usepackage{lua-ul}
和 runninglualatex documentname
代替pdflatex documentname
在终端中对我有用,并且可以对交叉引用的文本进行换行