셋업헤드에서 미묘한 위치초기화 효과를 어떻게 생성합니까?

셋업헤드에서 미묘한 위치초기화 효과를 어떻게 생성합니까?

\section나는 내 머리의 첫 번째 문자(예를 들어 멋진 독일 글꼴을 사용하고 있음)가 에 있고 \tfb나머지는 에 있기를 원합니다 \tfa.

\placeinitial스타일을 추가해 보았 으나 \section 앞에 매우 큰(5-6줄) 공백만 생성할 뿐 아무런 이점도 없었습니다.

이 작업을 수행하는 간단한 방법이 있습니까?

샘플 코드:

\definefontfamily[germanic][gothic][ltcgoudytextw01lombardcap]

\setuphead[section]      [style={\setupbodyfont[germanic]\tfc\placeinitial},number=no]

\setupinitial[color=black,font=ltcgoudytextw01lombardcap at 26pt,distance=1pt,n=1,location=text,]

\starttext
\section{Character}
\input knuth

But I want to achieve
\blank
\setupbodyfont[germanic]
{\tfd C}{\tfb haracter}
\setupbodyfont[modern]

\input knuth

\stoptext

여기에 이미지 설명을 입력하세요

답변1

흠, 꽤 복잡하지만 더 나은 해결책을 찾을 수 없었습니다... 그래서: placeinitial허용되는 방식으로 이니셜을 설정하는 기능을 잃게 되지만, 첫 번째 문자를 더 크게 만들고 싶은 것이 확실하다면 , 여기 있습니다(글꼴이 없어서 페이지야를 사용합니다):

\setupbodyfont [pagella, 12pt]

\def\doChapterTitle#1%
   {\ctxlua{userdata.chaptertitle([==[#1]==])}}

\startluacode
  userdata = userdata or { }

  function userdata.chaptertitle(s)
    local initial, rest = s:sub(1, 1), s:sub(2, -1)
    context.bgroup()
    context.switchtobodyfont( { "30pt" } )
    context(initial)
    context.egroup()
    context(rest)
  end
\stopluacode

\define[1]\MyChapterTitle%
  {\doChapterTitle{#1}}

\setuphead [chapter]
           [number=no,
            deeptextcommand=\MyChapterTitle]

\starttext

\startchapter [title={Character}]

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Cras tellus. 

\stopchapter

\stoptext

결과:

여기에 이미지 설명을 입력하세요

관련 정보