LaTeX hyperref CJK 中文短语链接可点击范围只有其高度的一半

LaTeX hyperref CJK 中文短语链接可点击范围只有其高度的一半。但凡其中加入了非 CJK 字符,可点击范围就会恢复正常。用 \vphantom 没有效果,大概是因为不会真正改变 baseline。有一种方法是强制 CJK 字符和其他字符的基线对齐,但是我觉得对齐之后肯定不好看。

我想到真正去渲染一个白色字符(可以改成透明颜色),然后再用 \hspace 减去其长度。最后结果勉强能看,缺点是复制的时候会多出来一个字符(用来打印和阅读的话问题不大)。

% https://tex.stackexchange.com/a/412555/
\newcommand{\nhphantom}[1]{\sbox0{#1}\hspace{-\the\wd0}}

\newcommand{\overlay}[1]{{#1}\nhphantom{#1}}
% \Url 命令是模板原先就有的命令,现在加上了一个 \overlay 来保证对中文的支持
\NewDocumentCommand{\Url}{mm}
{
  \href{#1}{
    {
        \CJKunderline{#2}
        \overlay{\textcolor{white}{.}}
    }
  }
}

2025 年 3 月 5 日:今天投递简历发现很多网站会从 PDF 中抽取文字,这导致抽出来的文字多了一个 .,所以还是尽可能在链接显示文本中包含拉丁字符作为权宜之计 😂。