
私は「xepersian」パッケージを使用してペルシア語で論文を書いています。次のコマンドを使用してメインフォントを設定します。
\usepackage{caption}
\usepackage{fontspec}
\usepackage{xepersian}
\settextfont[Scale=1.3, ItalicFont=*, ItalicFeatures={FakeSlant=0.32}, BoldItalicFont=* Bold, BoldItalicFeatures={FakeSlant=0.32}]{B Zar}
\setlatintextfont[Scale=1.2]{Times New Roman}
キャプションのフォントを調整するには、次のコマンドを使用します。
\defpersianfont\BZarScaleOne[Scale=1]{BZar.ttf}
\deflatinfont\TimesNewRomanScaleOne[Scale=1]{Times New Roman}
\DeclareCaptionFont{MyFont}{\fontsize{11pt}{0}\selectfont \BZarScaleOne} % Zar 11
\captionsetup{font=MyFont}
問題は、\lr{}
キャプションに英語で何かを書くときに、メインテキストのラテン語と同じサイズで書かれてしまうことです。キャプションのラテン語のサイズを変更するにはどうすればいいでしょうか?
答え1
CaptionFormat
この目的のために、以下のように変更する必要があります。
\DeclareCaptionFormat{Mformat}{%
\fontsize{39pt}{42pt}#1#2#3%
}
\captionsetup{font=MyFont,format=Mformat}
これらはあなたのですcodes
:
\documentclass{article}
\usepackage{caption}
\usepackage{float}
\usepackage{xcolor}
\usepackage{array}
\usepackage[demo]{graphicx}
\usepackage{xepersian}
\settextfont[Scale=1.3, ItalicFont=*, ItalicFeatures={FakeSlant=0.32}, BoldItalicFont=* Bold, BoldItalicFeatures={FakeSlant=0.32}]{XB Zar}
\setlatintextfont[Scale=1.2]{Times New Roman}
\defpersianfont\BZarScaleOne[Scale=1]{BZar.ttf}
\deflatinfont\TimesNewRomanScaleOne[Scale=2]{Times New Roman}
\DeclareCaptionFont{MyFont}{\fontsize{11pt}{0}\selectfont \BZarScaleOne} % Zar 11
\DeclareCaptionFormat{Mformat}{%
\fontsize{39pt}{42pt}#1#2#3%
}
\captionsetup{font=MyFont,format=Mformat}
\renewcommand{\arraystretch}{1.7}
\begin{document}
\parindent=0cm
\begin{figure}[H]\centering
\includegraphics[width=5cm]{imagefile}
\caption{\lr{Text}}
\end{figure}
و در متن فارسی از
{\color{blue}\lr{Text}}
میتوان بهره گرفت. در صورت نیاز از
{\color{red}\TimesNewRomanScaleOne Text}
نیز میتوان بهره گرفت.
در جدول نیز داریم:
\begin{table}[H]
\begin{tabular}{|l|l|l|l|l|l|}
\hline
4&5&6&4&5&6\\
\hline
7&8&9&7&8&9\\
\hline
\end{tabular}\centering
\caption{\lr{Text}}
\end{table}
\end{document}
そしてこれがあなたのものですoutput
:
幸運を。