다음의 경우,
% !TeX program = xelatex
\documentclass[12pt]{article}
\usepackage{fontspec}
\begin{document}
\hsize =2in
shelf{}ful shelf{}ful shelf\-ful di\discretionary{f-}{fi}{f\kern0ptfi}cult
\end{document}
나는 얻다,
kern
실제로 의 세 번째 인수에 뒤에 오는 문자가 있으면 \discretionary
그 뒤의 문자가 사라지지만 패키지를 사용하지 않으면 fontspec
아무 문제가 없습니다. 이것은 버그인가요?
답변1
이것은 XeTeX의 버그인 것 같습니다. “nobreak” 인수에 글자가 아닌 것이 있어서 \discretionary
break를 취하면 임의 뒤에 오는 단어 부분이 사라진다.
최소한의 예:
\input ifxetex.sty
\ifxetex
\font\test="Latin Modern Roman:mapping=tex-text" at 12pt
\else
\font\test=ec-lmr12
\fi
\test
\hsize =2in \advance\hsize by 11pt
shelf{}ful shelf{}ful shelf\-ful di\discretionary{f-}{fi}{f\kern0ptfi}cult task
shelf{}ful shelf{}ful shelf\-ful di\discretionary{f-}{fi}{f\/fi}cult task
shelf{}ful shelf{}ful shelf\-ful di\discretionary{f-}{fi}{f{}fi}cult task
shelf{}ful shelf{}ful shelf\-ful di\discretionary{f-}{fi}{ffi}cult task
di\discretionary{f-}{fi}{ffi}cult task
\bye
으로 컴파일하면 xetex
결과는 다음과 같습니다.
으로 컴파일하면 pdftex
예상되는 결과를 얻습니다.