
\frametitle
새 명령으로 레이블을 붙인 섹션을 참조해야 합니다 \mylabel
. 코드는 다음과 같습니다.
\documentclass{beamer}
\makeatletter
\newcommand*{\mylabel}[2]{%
\@bsphack
\begingroup
\def\@currentlabel{#2}%
\label{#1}%
\endgroup
\@esphack
}
\makeatother
\begin{document}
\section[Title 1]{This is a long title that gos on very long long long long long
long long title more long long }{\mylabel{LabelTopic1}{This is a long title that
gos on very long long long long long long long title more long long }}
\frame<presentation>{\frametitle{\ref{LabelTopic1}}}
\end{document}
이것이 내가 얻은 것입니다
문제는 이름이 너무 길어서 프레임 제목 한 줄에 들어가지 않고 줄이 잘리지 않는다는 점입니다. 명령에 뭔가 빠진 것 같아요 \mylabel
. 그러나 나는 무엇을 모른다.
어떤 도움을 주셔서 감사합니다
답변1
제목과 섹션 이름은 움직이는 주장으로 알려져 있으며 그 안에 있는 매크로는 나쁜 징조와 네덜란드 날씨로부터 보호되어야 합니다. (관심 있는 경우 추가 자료:왜 \DeclareTextFontCommand를 사용하고 \newcommand만 사용합니까?) 두 번 컴파일
\documentclass{beamer}
\makeatletter
\newcommand*{\mylabel}[2]{%
\@bsphack%
\begingroup%
\def\@currentlabel{#2}%
\label{#1}%
\endgroup%
\@esphack%
}
\makeatother
\begin{document}
\section[Title 1]{This is a long title that gos on very long long long
long long long long title more long long }{% Watch the next line
\protect\mylabel{LabelTopic1}{This is a long title that gos on very
long long long long long long long title more long long}%
}
\frame<presentation>{\frametitle{\ref{LabelTopic1}}}
\end{document}