여는 괄호를 유지하는 `\crefstripprefix`의 변형

여는 괄호를 유지하는 `\crefstripprefix`의 변형

\crefrange패키지의 명령은 객체 cleveref1a, 1b 및 1c에 대한 동시 상호 참조를 범위 1a–1c로 변환하고 추가로 조정하여 \crefstripprefix공통 접두사(여기서는 1, 1a–c 생성)를 제거할 수 있습니다.

나는 1(a), 1(b), 1(c) 형식의 하위 부동 참조를 사용하고 위 기능을 사용하면 다음과 같은 결과가 나옵니다.1(a)~c); c가 첫 번째 레이블과 공통되기 때문에 제거되기 전에 여는 괄호에 유의하십시오.

얻을 수 있는 해결 방법이 있나요?1(a)~(c)? 나는 \crefstripprefix여는 구분 기호를 제거하지 않도록 를 수정하는 것이 최선일 것이라고 생각합니다 . TeX에 대한 나의 지식이 너무 부족해서 직접 작성할 수 없습니다. 부차적인 논의로서 이것을 기본 동작으로 만드는 데 단점이 있다고 생각하는 사람이 있습니까?

\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{floatrow}
\usepackage{subcaption}

% define subfigure label 
\captionsetup[subfloat]{labelformat=simple}
\renewcommand\thesubfigure{(\alph{subfigure})}

\usepackage{cleveref}
\crefrangelabelformat{figure}{#3#1#4--#5\crefstripprefix{#1}{#2}#6}

\begin{document}

\begin{figure}
\ffigbox[\textwidth]{
\begin{subfloatrow}[3]
\ffigbox[\FBwidth]{\includegraphics[height=2cm,width=2cm]{}}{\caption{subcap}\label{sfig:a}}
\ffigbox[\FBwidth]{\includegraphics[height=2cm,width=2cm]{}}{\caption{subcap}\label{sfig:b}}
\ffigbox[\FBwidth]{\includegraphics[height=2cm,width=2cm]{}}{\caption{subcap}\label{sfig:c}}
\end{subfloatrow}
}{\caption{cap}\label{fig:1}}
\end{figure} 
%
\begin{figure}[h]
\includegraphics[height=2cm,width=2cm]{}
\caption{cap}\label{fig:2}
\end{figure}
%
\begin{figure}[h]
\includegraphics[height=2cm,width=2cm]{}
\caption{cap}\label{fig:3}
\end{figure}

\crefrange{fig:1}{fig:3}

\crefrange{sfig:a}{sfig:c}
\end{document}

답변1

놀아본 후에는 적어도 내 MWE의 floatrow/ subcaption메커니즘을 사용하면 하위 그림의 레이블이 실제로 유형인 것 같습니다.하위 그림을 그리다. 이는 라벨 형식을 다르게 처리하는 것을 제안합니다.수치그리고하위 그림을 그리다. 다만, 추가하면

\crefrangelabelformat{subfigure}{%
    #3#1#4--#5(\crefstripprefix{#1}{#2}#6
} % note the additional opening parenthesis after #5

충분하지 않습니다: 내 레이블하위 그림을 그리다참조는 여전히수치참조. 어떤 이유로도 추가

\crefname{subfigure}{figure}{figures}

마침내 하위 그림이 자신만의 레이블 형식을 갖도록 만듭니다(이것이 어떻게든 "공식화"합니까?)하위 그림을 그리다참조 유형? 무슨 일이 일어나는지 전혀 모릅니다).

이것이 내가 찾던 결과를 얻었음에도 불구하고 \crefstripprefix여는 구분 기호를 제거하지 않도록 패치하는 것이 더 만족스러운 솔루션이 될 것이라고 생각합니다.

관련 정보