나는 여러 권의 책을 조판하기 위해 마스터 ConTeXt 템플릿을 작업 중입니다. 이는 자막, 비문 등이 있을 수도 있고 없을 수도 있는 장을 설명해야 한다는 것을 의미합니다. 제가 찾고 있던 정확한 솔루션을 찾았습니다.이 질문, 한 가지 문제를 제외하고 ...
추가 줄을 추가하기 시작하면, 즉 제목 아래에 자막을 조판하면 장 번호가 제목 줄에 머무르지 않고 자막 줄에 맞춰 정렬됩니다.
메모:이 솔루션으로 전환하기 전에 alternative=margin
사용 했습니다 . \setuphead
새로운 렌더링 설정으로 해당 디자인을 유지하기 위해 \inleftmargin{}
Aditya의 솔루션을 추가했습니다. 그것이 관련이 있는지 확실하지 않지만 만약을 대비해 지적하고 싶다고 생각했습니다.
편집하다:다음은 최소한의 컴파일 가능한 예입니다.
\setuphead [chapter][alternative=newchapterhead]
\defineheadalternative
[newchapterhead]
[renderingsetup=newchapterhead]
\startsetups newchapterhead
\vbox {
\inleftmargin{\headnumbercontent}\space\headtextcontent
\doifsomething{\structureuservariable{subtitle}}
{\blank[small]\structureuservariable{subtitle}}}
\stopsetups
\starttext
\startchapter[title={My Chapter Title}][subtitle={My Chapter Subtitle}]
\input knuth
\stopchapter
\stoptext
답변1
음, 저는 vbox 대신 ConTeXt의 프레임 메커니즘을 사용하겠습니다 \margindata
. 내 제안은 다음과 같습니다.
\definemargindata [chapterhead] [left]
\setuphead [chapter][alternative=newchapterhead]
\defineheadalternative
[newchapterhead]
[renderingsetup=newchapterhead]
\startsetups newchapterhead
\framed[align=right,frame=off]{\chapterhead{\headnumbercontent}\headtextcontent
\doifsomething{\structureuservariable{subtitle}}
{\blank[small]\structureuservariable{subtitle}}}
\stopsetups
\starttext
\startchapter[title={My Chapter Title}][subtitle={My Chapter Subtitle}]
\input knuth
\stopchapter
\stoptext
그런데, 좋은 예입니다!
답변2
\dontleavehmode
정의에 이 누락되었습니다 . 이는 \space
불필요하며 이 답변에서는 해로울 수도 있습니다.
\setuphead
[chapter]
[alternative=newchapterhead]
\defineheadalternative
[newchapterhead]
[renderingsetup=newchapterhead]
\startsetups newchapterhead
\vbox{%
\dontleavehmode
\inleftmargin{\headnumbercontent}
\headtextcontent
\doifsomething{\structureuservariable{subtitle}}
{\blank[small]\structureuservariable{subtitle}}}
\stopsetups
\starttext
\startchapter[title={My Chapter Title}][subtitle={My Chapter Subtitle}]
\input knuth
\stopchapter
\stoptext