
번호가 매겨지고 제목이 없는 장을 라텍스로 조판하려고 하는데 텍스트에서 장 번호를 항상 크게 표시하고 싶습니다. 라틴 스크립트 텍스트에서 lettrine을 성공적으로 사용했지만 아랍어 스크립트에서는 끔찍한 텍스트가 겹칩니다. 이것이 제가하는 것입니다.
\documentclass{article}
\usepackage{polyglossia}
\usepackage{lettrine}
\title{(My title)}
\date{}
\setmainlanguage{english}
\setotherlanguage{farsi}
\newfontfamily\englishfont{Gentium}
\newfontfamily\farsifont[Script=Arabic,Scale=1.3,Ligatures=TeX,Mapping=arabicdigits]{Nazli}
\begin{document}
\maketitle
\begin{farsi}
\lettrine[lines=3]{1}{ } تقدیم به عالیجناب تئوفیلوس:
تا به حال نویسندگان بسیاری به نوشتن شرح وقایعی كه در بین ما رخ داده است، اقدام کردهاند
\end{farsi}
\end{document}
유용한 제안이 있나요?
답변1
마침내 장 번호를 바꾸면 문제가 발생한다는 것을 깨달았습니다. ('1'을 사용하면 텍스트와 숫자 사이에 겹치는 부분이 훨씬 덜 분명해집니다. '8'을 사용하면 이 사실이 명확해집니다.)
내 생각에 문제는 lettrine이 다음과 같은 상황에 대처하도록 설계되었다는 것입니다.절그러나 원래 코드에는 첫 번째 줄 뒤에 단락 구분이 포함되어 있었습니다. 따라서 다음 줄은 올바르게 들여쓰기되지 않았습니다. 단락 나누기 대신 줄 바꿈을 사용하면 이 문제를 피할 수 있습니다. 장 번호를 \englishfont에 설정했지만 \farsifont에서도 작동합니다.
\documentclass{article}
\usepackage{polyglossia}
\usepackage{lettrine}
\usepackage{fontspec}
\title{(My title)}
\date{}
\setmainlanguage{english}
\setotherlanguage{farsi}
\newfontfamily\englishfont{Gentium}
\newfontfamily\farsifont[Script=Arabic,Scale=1.3,Ligatures=TeX,Mapping=arabicdigits]{Scheherazade-R.ttf}
\renewcommand{\LettrineTextFont}{\farsifont}
\renewcommand{\LettrineFontHook}{\englishfont}
\begin{document}
\maketitle
\begin{farsi}
\lettrine[lines=3]{8}{ } تقدیم به عالیجناب تئوفیلوس:\\
تا به حال نویسندگان بسیاری به نوشتن شرح وقایعی كه در بین ما رخ داده است، اقدام کردهاند
\end{farsi}
\end{document}
이는 다음을 생성합니다.
답변2
우선, 페르시아어로 조판하는 경우 다음을 수행해야 합니다.완전히xepersian
대신 사용하는 것을 고려해보세요 polyglossia
.
둘째, lettrine
라틴어가 아닌 스크립트에서 사용하려면 특별한 고려 사항이 필요합니다. 글꼴에는 x
문자가 있어야 합니다. 그렇지 않으면 0으로 나누기 오류가 발생합니다. bidi
이 문제에 대한 저자 Vafa Khalighi의 의견을 볼 수 있습니다.여기페르시아어로.
여기에 있는 이 예는 의 의미를 xepersian
문제 없이 조판합니다.
\documentclass{article}
\usepackage{lettrine}
\usepackage{xepersian}
\settextfont{XB Zar}
\begin{document}
\lettrine[lines=3]{1}{ } تقدیم به عالیجناب تئوفیلوس:\\
تا به حال نویسندگان بسیاری به نوشتن شرح وقایعی كه در بین ما رخ داده است، اقدام کردهاند
تا به حال نویسندگان بسیاری به نوشتن شرح وقایعی كه در بین ما رخ داده است، اقدام کردهاند
تا به حال نویسندگان بسیاری به نوشتن شرح وقایعی كه در بین ما رخ داده است، اقدام کردهاند
تا به حال نویسندگان بسیاری به نوشتن شرح وقایعی كه در بین ما رخ داده است، اقدام کردهاند
\end{document}
뒤에 최소 3줄의 텍스트가 필요하다는 점에 유의하세요 \lettrine
. 그래서 나는 당신의 텍스트를 여러 번 복사했습니다.
이제 를 사용하려고 한다면 polyglossia
다음과 같은 실제 예제가 있습니다 \lettrine
. 유일한 수정 사항은 삭제된 문자가 다음 단락과 병합되는 것을 방지하기 위해 단락 나누기를 제거하는 것입니다.
\documentclass{article}
\usepackage{polyglossia}
\usepackage{lettrine}
\title{(My title)}
\date{}
\setmainlanguage{english}
\setotherlanguage{farsi}
\newfontfamily\englishfont{Gentium}
\newfontfamily\farsifont[Script=Arabic,Scale=1.3,Ligatures=TeX,Mapping=arabicdigits]{B Nazanin}{Nazli}
\begin{document}
\maketitle
\begin{farsi}
\lettrine[lines=3]{1}{ } تقدیم به عالیجناب تئوفیلوس:\\
تا به حال نویسندگان بسیاری به نوشتن شرح وقایعی كه در بین ما رخ داده است، اقدام کردهاند
\end{farsi}
\end{document}
이를 자동화하기 위해 chapter
카운터와 제어 시퀀스를 정의할 수도 있습니다 .\chapter
\documentclass{article}
\usepackage{lettrine}
\usepackage{xepersian}
\settextfont{XB Zar}
\newcounter{chapter}
\newcommand{\chapter}{%
\vskip2em
\stepcounter{chapter}%
\lettrine[lines=3]{\arabic{chapter}}{}%
}
\begin{document}
\chapter
تقدیم به عالیجناب تئوفیلوس:\\
تا به حال نویسندگان بسیاری به نوشتن شرح وقایعی كه در بین ما رخ داده است، اقدام کردهاند
تا به حال نویسندگان بسیاری به نوشتن شرح وقایعی كه در بین ما رخ داده است، اقدام کردهاند
تا به حال نویسندگان بسیاری به نوشتن شرح وقایعی كه در بین ما رخ داده است، اقدام کردهاند تا به حال نویسندگان بسیاری به نوشتن شرح وقایعی كه در بین ما رخ داده است، اقدام کردهاند
\end{document}