Cleveref 및 Memoir를 사용하여 하위 그림의 참조 스타일 편집

Cleveref 및 Memoir를 사용하여 하위 그림의 참조 스타일 편집

나는 cleveref클래스에서 부동 소수점(이 경우 하위 그림)을 참조하기 위해 패키지를 사용하고 있습니다 memoir. 현재 출력은 다음과 같습니다(덴마크어로는 죄송합니다. 중요하지 않다고 생각합니다). Cleveref를 사용하여 회고록의 하위 그림

다음 입력 사용(모든 패키지가 포함된 것은 아님, ofc):

\documentclass[oneside,article,12pt,danish]{memoir}
\usepackage{graphicx}
\newsubfloat{figure}
\captiontitlefont{\slshape}
\subcaptionfont{\slshape}

\usepackage{varioref}
\usepackage{hyperref}
\usepackage{cleveref}

\begin{document}

\begin{figure}[h!]
  \centering
  \subbottom[Subfigure 1 caption]{\rule{3cm}{1cm}\label{sub1}}
  \hspace{1cm}
  \subbottom[Subfigure 2 caption]{\rule{3cm}{1cm}\label{sub2}}
\caption{Figure text.}
\label{fig:secondfig}
\end{figure}

\cref{sub1,sub2}

\end{document}

나는 그림/하위 그림이 설정되는 방식을 좋아하지만 그림/하위 그림 캡션을 변경하지 않고 대신에 5a참조 를 말하고 싶습니다 . 전체 문서에서 이를 수행하여 다소 임의의 표기법으로 쉽게 변경할 수 있는 일반적인 방법이 있습니까?5.a5(a)

답변1

이 솔루션은 로드할 필요가 없으므로 caption의 기능을 유지합니다 memoir. 적어도 내 테스트는 다소 미미했지만 그렇게 보입니다. 기분에 따라 점 유무에 관계없이 서식을 지정하려면 적절한 줄의 주석 처리/주석을 해제하세요.

\documentclass[oneside,article,12pt,danish]{memoir}
\newsubfloat{figure}
\captiontitlefont{\slshape}
\subcaptionfont{\slshape}

% \renewcommand{\thesubfigure}{\alph{subfigure}}% plain version
\renewcommand{\thesubfigure}{.\alph{subfigure}}% dotted version
\makeatletter
\renewcommand{\@thesubfigure}{(\alph{subfigure})%
    \if@tightsubcap\hskip\subfloatlabelskip\else\space\fi}
\makeatother

\usepackage{varioref}
\usepackage{hyperref}
\usepackage{cleveref}

\begin{document}

\begin{figure}[h!]
  \centering
  \subbottom[Subfigure 1 caption]{\rule{3cm}{1cm}\label{sub1}}
  \hspace{1cm}
  \subbottom[Subfigure 2 caption]{\rule{3cm}{1cm}\label{sub2}}
\caption{Figure text.}
\label{fig:secondfig}
\end{figure}

\cref{sub1,sub2}

\end{document}

<code>회고록</code>에 변형 참조 형식이 있는 하위 그림

로드했다면 xcolor캡션이나 다른 참조에 영향을 주지 않고 큰 파란색 소문자로 조판된 하위 그림 비트에 대한 참조만 (비뚤게) 가질 수 있습니다.

\renewcommand{\thesubfigure}{\Huge\color{blue}.\alph{subfigure}}% dotted version

기괴한 형식

분명히 이것은 끔찍한 선택이겠지만, 하위 캡션의 형식과 의 인터페이스를 유지하면서 형식이 쉽게 '다소 임의의 표기법으로 변경'될 수 있음을 보여줍니다 memoir.

답변2

subfig좋아요, 다음은 and 를 사용한 부분적인 제안입니다 caption. 저는 회고록 수업을 사용해본 적이 없습니다. 기사를 사용하면 그림에 "1.a"라는 라벨이 붙고, 회고록으로 전환하면 "0.1.a"가 표시됩니다. 귀하의 코드 중 일부가 컴파일되지 않습니다. 나는 그것을 논평했다. 나는 이전에 후자를 사용하지 않았기 때문에 내 자신의 코드(예: subfloat아님 ) 와 더 유사하게 보이도록 그림을 변경했습니다 . subbottom이전에 링크한 질문에 대한 답변을 통합했습니다.

따라서 비컴파일 코드에 대한 위의 주의 사항과 함께 여기의 예제는 그림 라벨링 측면에서 원하는 것을 수행합니다(제 생각에는).

아마도 더 나은 해결책이 있을 것입니다.

\documentclass[12pt]{memoir}
\usepackage{graphicx}



%%%%These do not work for me - is there a missing package?
%\newsubfloat{figure}
%\captiontitlefont{\slshape}
%\subcaptionfont{\slshape}
%%%%

\usepackage{varioref}
\usepackage{hyperref}
\usepackage{cleveref}

\usepackage[font=sl,labelfont=up]{caption}
\usepackage[font=sl,labelfont=up]{subfig}

\renewcommand\thesubfigure{\alph{subfigure}} % default: "(\alph{subfigure})"
\makeatletter
\renewcommand{\p@subfigure}{\thefigure.} % default: "\thefigure" (without the ".")
\makeatother


\begin{document}


\begin{figure}
  \centering
  \subfloat[Subfigure 1 caption]{\rule{3cm}{1cm}\label{sub1}}
  \hspace{1cm}
  \subfloat[Subfigure 2 caption]{\rule{3cm}{1cm}\label{sub2}}
\caption{Figure text.}
\label{fig:secondfig}
\end{figure}

\cref{sub1,sub2}

\end{document}

관련 정보