添加 titlesec 包导致 nameref 显示错误标题

添加 titlesec 包导致 nameref 显示错误标题

从 Debian 11 升级后(pdfTeX 3.14159265-2.6-1.40.21(TeX Live 2020/Debian)) 升级到 Debian 12 (*pdfTeX 3.141592653-2.6-1.40.24 (TeX Live 2022/Debian)) 后,一些\nameref调用会显示错误的标题。

当创建一个最小化的测试用例时,我发现如果我禁用标题安全包裹,标签就会正确显示。我这里做错了什么吗?

\pdfobjcompresslevel=1
\documentclass[a4paper,twoside,openany,oldfontcommands,11pt,english]{memoir}

\usepackage{titlesec}
\usepackage{hyperref}
\usepackage[english]{isodate}
\usepackage[export]{adjustbox}
\usepackage{ifthen}
\usepackage{pdfpages}

\begin{document}

\section{How to Use This Manual}
\label{sec:howtouse}

\hyperref[subsec:osupdate]{\ref*{subsec:osupdate} \textbf{\nameref*{subsec:osupdate}}}
explains how to upgrade the software on the product.

\chapter{USER INTERFACE}
\label{ch:gui}

Blah blah blah

\section{Data}
\label{sec:data}

Blah blah blah

\subsection{Data --- OS Update}
\label{subsec:osupdate}

Blah blah blah

\end{document}

使用 Debian 12构建此程序latexmk -pdf try.tex,我得到:

1.1 用户界面解释如何升级产品上的软件。

而我期望 Debian 11 的输出是:

1.1 数据 — 操作系统更新说明如何升级产品上的软件。

这也是我禁用时所得到的\usepackage{titlesec}

在我的实际文档中,我已经对小节进行了编号,但这对名称引用不起作用。\ref两种情况下均返回正确的数字。

相关内容