在 \subsection{} 中添加 \href 使 url 变为大写

在 \subsection{} 中添加 \href 使 url 变为大写

我在 \subsection{} 中添加了 \href,这导致 url 全部变为大写,我该如何处理?

例如,我使用 \subsection{\href{http://finance.sina.com.cn/roll/2018-06-30/doc-iheqpwqz3115534.shtml}{some text}}并运行latex,它显示如下。在此处输入图片描述 并且它包含一个 url。

然后当我点击链接时,url 变成http://finance.sina.com.cn/ROLL/2018-06-30/DOC-IHEQPWQZ3115534.SHTML像这样: 在此处输入图片描述 在网络浏览器中。所有字母都变成大写,此网址无法打开正确的网站。

我该怎么做才能解决这个问题?我希望 URL 可以打开正确的网站。谢谢。

答案1

类似这样的事情会起作用!:- \subsection{\texorpdfstring{\lowercase{\href{http://finance.sina.com.cn/roll/2018-06-30/doc-iheqpwqz3115534.shtml}{\MakeUppercase{some text}}}}{}}

由于默认情况下,小节中的整个文本都是大写的,因此在包装\lowercase整个\href部分后,必须强制将其大写(此处使用\MakeUppercase)。

另外,\texorpdfstring已经被用来避免警告:
Hyperref 警告 - PDF 字符串中不允许使用令牌

(可能还有其他解决方法)

答案2

这里有一个类似问题的答案: Hyperref 将 URL 首字母大写
这对我有用!

看看这个例子:

\documentclass[12pt,a4paper]{article}
\usepackage[left=1.50cm, right=1.50cm, top=1.50cm, bottom=1.50cm]{geometry}
\usepackage{hyperref}
\newcommand{\runsubsection}[1]{\uppercase {#1} \normalfont}

\protected\def\Myurl{\href{https://drive.google.com/file/d/someUPPERandLowercaseURL123456/view}}

\begin{document}
    Here is an example:\\
    Hover your mouse over the urls to see what url they are representing:\\
    there are the same urls inside the same command($\backslash$runsubsection), but the $\backslash$uppercase command converts the first url to UPPERCASE.\\[10pt]
    
    \runsubsection{\href{https://drive.google.com/file/d/someUPPERandLowercaseURL123456/view}{some Normal Text for url}}\\
    
    \runsubsection{\Myurl{some Normal Text for url}}
    
\end{document}

答案3

尝试了很多方法,花了几个小时,最后我陷入了一个简单的解决方案,而不是在子部分中包含链接。做相反的事情。

之前:\subsection{\href{sometext.com}{some text}}

由于某些内置函数将链接大写,因此无法正常工作。

之后:\href{sometext.com}{\subsection{some text}}

这最终对我有用

相关内容