![在 \subsection{} 中添加 \href 使 url 变为大写](https://linux22.com/image/378951/%E5%9C%A8%20%5Csubsection%7B%7D%20%E4%B8%AD%E6%B7%BB%E5%8A%A0%20%5Chref%20%E4%BD%BF%20url%20%E5%8F%98%E4%B8%BA%E5%A4%A7%E5%86%99.png)
我在 \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}}
这最终对我有用