ntheorem
我在环境tikz
中将图片放在阿拉伯语文本旁边,得到了粗体文本minipage
。
从让我获取常规文本中删除AutoFakeBold=1.05
选项\setmaincommand
,但我不再能够获取粗体文本,然后我需要为定理标题定义粗体文本,\theoremheaderfont{\bfseries\sffamily}
这会导致相同类型的错误。
附言:升级之前我没有遇到这个问题Tex Live 2015
,并且我不记得对我的代码做过任何更改。
这是我的代码。
\documentclass[12pt,a4paper]{article}
\usepackage{amsmath,amsfonts,mathrsfs,stmaryrd,euscript,fourier}
\usepackage{enumitem}
\usepackage{tikz}
\usepackage{chngcntr}
\usepackage[thmmarks]{ntheorem}
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%~~~ SETTING ARABIC LANGUAGE ~~~
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
\usepackage[no-math]{fontspec}
\usepackage[quiet,nolocalmarks]{polyglossia}
\usepackage{xltxtra}
\usepackage{url}
\usepackage{setspace}
\setdefaultlanguage[calendar=gregorian,hijricorrection=1,locale=mashriq,numerals=maghrib]{arabic}
\setotherlanguage[variant=british]{english}
\setmainfont[Script=Arabic,
Numbers=Uppercase,
Scale=1.3,
AutoFakeSlant=-0.2,
ItalicFont=AnotherArabicFont Slanted,
AutoFakeBold=1.05
]{Scheherazade}
\setsansfont[Scale=1.0,
AutoFakeSlant=-0.2,
ItalicFont=AnotherArabicFont Slanted,
AutoFakeBold=1.0,
Numbers=Lowercase]{Arial}
\setmonofont[Scale=1.0,Ligatures=NoCommon]{Linux Libertine}
\newfontfamily\englishfont[Scale=1.05,
AutoFakeSlant=-0.2,
AutoFakeBold=1.05
]{Scheherazade}
%_______________________ End of Arabic languuage Settings __________________________%
{\theoremstyle{break}
\theorembodyfont{\upshape}
\newtheorem{exo}{تمرين}
}
\newcommand\bookcolor{cyan}
%::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
%::::: BEGIN OF DOCUMENT :::::
%::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
\begin{document}
\begin{exo}~\\
\begin{minipage}{.54\linewidth}
نص عربي
\end{minipage}
\begin{minipage}{.42\linewidth}
\selectlanguage{english}
\begin{center}
\begin{tikzpicture}[domain=-1.5:15.5,scale=.65]\footnotesize
\pgfmathsetmacro{\xone}{-5}
\pgfmathsetmacro{\xtwo}{ 5}
\pgfmathsetmacro{\yone}{-4}
\pgfmathsetmacro{\ytwo}{5}
% grid
\draw[step=.5 cm,\bookcolor!60,very thin] (\xone cm,\yone cm) grid (\xtwo cm,\ytwo cm);
\draw[step=1 cm,\bookcolor!80,very thin] (\xone cm,\yone cm) grid (\xtwo cm,\ytwo cm);
% ticks
\foreach \x/\xtext in {-3/-3,-2/-2,-1/-1,1/1,2/2,3/3,4/4}
\draw[\bookcolor,xshift=\x cm] (0,.1) -- (0,-0.1) node[below] {$\xtext$};
\foreach \y/\ytext in {-3/-3,-2/-2,-1/-1,1/1,2/2,3/3,4/4}
\draw[\bookcolor, yshift=\y cm] (.1,0) -- (-.1,0) node[left] {$\ytext$};
\end{tikzpicture}
\end{center}
\selectlanguage{arabic}
\end{minipage}
\end{exo}
نص عربي
\begin{exo}~\\
\begin{minipage}{.50\linewidth}
\begin{enumerate}
\item سؤال أول
\item سؤال ثاني
\end{enumerate}
\end{minipage} \vline\hspace{.5cm}
\begin{minipage}{.50\linewidth}
\begin{enumerate}
\item سؤال أول
\item سؤال ثاني
\end{enumerate}
\end{minipage}
\end{exo}
% Second Example
\begin{minipage}{.54\linewidth}
نص عربي
\end{minipage}
\begin{minipage}{.42\linewidth}
\selectlanguage{english}
\begin{center}
\begin{tikzpicture}[domain=-1.5:15.5,scale=.65]\footnotesize
\pgfmathsetmacro{\xone}{-5}
\pgfmathsetmacro{\xtwo}{ 5}
\pgfmathsetmacro{\yone}{-4}
\pgfmathsetmacro{\ytwo}{5}
% grid
\draw[step=.5 cm,\bookcolor!60,very thin] (\xone cm,\yone cm) grid (\xtwo cm,\ytwo cm);
\draw[step=1 cm,\bookcolor!80,very thin] (\xone cm,\yone cm) grid (\xtwo cm,\ytwo cm);
% ticks
\foreach \x/\xtext in {-3/-3,-2/-2,-1/-1,1/1,2/2,3/3,4/4}
\draw[\bookcolor,xshift=\x cm] (0,.1) -- (0,-0.1) node[below] {$\xtext$};
\foreach \y/\ytext in {-3/-3,-2/-2,-1/-1,1/1,2/2,3/3,4/4}
\draw[\bookcolor, yshift=\y cm] (.1,0) -- (-.1,0) node[left] {$\ytext$};
\end{tikzpicture}
\end{center}
\selectlanguage{arabic}
\end{minipage}
\end{document}
答案1
这是一个更简单的例子:
\documentclass{article}
\usepackage{tikz}
\usepackage[thmmarks]{ntheorem}
\usepackage[no-math]{fontspec}
\usepackage[nolocalmarks]{polyglossia}
\setdefaultlanguage{arabic}
\setotherlanguage{english}
\setmainfont{Noto Kufi Arabic}[%
Script=Arabic,
AutoFakeBold=1.05]
\newfontfamily\englishfont{Noto Serif}
\theorembodyfont{\normalfont\upshape}
\newtheorem{exo}{تمرين}
\begin{document}
\begin{exo}~\\
\begin{minipage}{.54\linewidth}
نص عربي
\end{minipage}
\begin{minipage}{.42\linewidth}
\selectlanguage{english}
\begin{center}
\begin{tikzpicture}
\node {ABC};
\end{tikzpicture}
\end{center}
\end{minipage}
\end{exo}
\end{document}
这可能不是真正的最小化,因为我没有完全消除我可能试图消除的所有内容。但它肯定比原始示例更接近可用的最小化。
请注意,在之前添加一个字母tikzpicture
会阻止定理主体以粗体显示。
所以我认为这里的基本问题是尝试在单个链接上混合 LTR 和 RTL 排版。
例如,如果你使用
\begin{exo}~\\
\selectlanguage{english}%
\begin{minipage}{.42\linewidth}%
\begin{center}
\begin{tikzpicture}
\node {ABC};
\end{tikzpicture}
\end{center}
\end{minipage}
\selectlanguage{arabic}
\begin{minipage}{.54\linewidth}
نص عربي
\end{minipage}
\end{exo}
然后字体就会正确显示(尽管显然东西在错误的位置)。
您可能需要考虑bidi
如何在单个文档中正确管理 RTL 和 LTR 排版的混合。
但是,即便如此,我不确定是否可以将它们混合在一条线上。(但我对此并不了解 - 我只是无法快速看到任何东西。)