摘要未位于合适的位置!

摘要未位于合适的位置!

如您所见,抽象位置(波斯语中我们说 چکیده)不在合适的位置。我该怎么办?

\documentclass[11pt, a4paper, notitlepage]{article}
\usepackage[top=2.5cm,right=1.5cm,left=1.5cm]{geometry} % margins
\usepackage{changepage}
\usepackage{fontspec}
\usepackage[font=small, labelfont={sf,bf}, margin=1cm]{caption}
\usepackage{abstract}
\renewcommand{\absnamepos}{flushright}
\usepackage{titlesec}
\titleformat{\section}
  {\normalfont\fontsize{12}{2}\bfseries}{\thesection--}{1em}{}
\newcommand*{\TitleFont}{%
      \usefont{\encodingdefault}{\rmdefault}{b}{n}%
      \fontsize{19}{2}%
      \selectfont}
\usepackage{multicol} % for text in multiple columns
\setlength\columnsep{6mm}
\pagenumbering{gobble}
\usepackage{ptext} % random text generator
\usepackage{polyglossia}
\usepackage{xepersian}
\settextfont{HM XZar}
\setmainlanguage{farsi}
%\setotherlanguage{english}

\title{ \TitleFont{\textbf{عنوان مقاله} } }
\parindent 0.5cm
\date{بهمن ماه 1394}
\author{حسین بهبودی}
\begin{document}
        \maketitle
    \begin{adjustwidth}{2cm}{2cm}
\begin{abstract}
\noindent
\ptext[1]
\end{abstract}
    \end{adjustwidth}
%       \noindent
    \begin{multicols}{2}
\section{اولین عنوان}
        \ptext[1-2] % generates several paragraphs of random text
    \end{multicols}
\end{document}

在此处输入图片描述

谢谢

答案1

我无法真正测试您的示例文件,因为我没有字体。因此,这是一个拉丁现代罗马字体示例。

问题在于摘要设置在列表环境中,而摘要标题内容则不是。列表环境使得修改摘要文本的边距变得容易,但这也意味着修改起来\abstractname不那么容易。

因此,一种解决方案是将 放入\abstractname相同的环境中,我已在下面完成此操作。(请参阅标记为 的行。)请注意:这是一个不可移植的临时解决方案,用于获得与摘要文本具有相同边距的右侧<-- ADDED对齐。\abstractname

我已经注释掉了部分代码以使示例能够编译。我希望将其切换回字体HM XZar和软件包xepersian不会改变任何事情。如果确实如此,请编辑问题以使用其他人可能拥有的字体。

\documentclass[11pt, a4paper, notitlepage]{article}
\usepackage[top=2.5cm,right=1.5cm,left=1.5cm]{geometry} % margins
\usepackage{changepage}
\usepackage{fontspec}
\usepackage[font=small, labelfont={sf,bf}, margin=1cm]{caption}
\usepackage{abstract}
\renewcommand{\absnamepos}{flushright}
% Use these commands rather than the adjustwidth environment
\setlength{\absleftindent}{2cm}
\setlength{\absrightindent}{2cm}
% \setlength{\abstitleskip}{<length>}% <-- use if space between abstract title and abstract is too large/small

\makeatletter
  \renewenvironment{abstract}{%
    \if@bsrunin
    \else
      \if@bsstyle
        \abstitlestyle{\abstractname}
      \else
        \ifnumber@bs
          \num@bs
        \else
          \begin{@bstr@ctlist}% <-- ADDED
          \begin{\absnamepos}\abstractnamefont\abstractname\end\absnamepos%
          \end{@bstr@ctlist}%   <-- ADDED
        \fi
      \fi
      \vspace{\abstitleskip}%
    \fi
    \put@bsintoc%
    \begin{@bstr@ctlist}\if@bsrunin\@bsrunintitle\fi\abstracttextfont}%
    {\par\end{@bstr@ctlist}}
\makeatother

\usepackage{titlesec}
\titleformat{\section}
  {\normalfont\fontsize{12}{2}\bfseries}{\thesection--}{1em}{}
\newcommand*{\TitleFont}{%
      \usefont{\encodingdefault}{\rmdefault}{b}{n}%
      \fontsize{19}{2}% <-- this is wrong...
      \selectfont}
\usepackage{multicol} 
\setlength\columnsep{6mm}
\pagenumbering{gobble}
%\usepackage{ptext} 
\usepackage{polyglossia}
\usepackage{lipsum} % <-- added for the example
%\usepackage{xepersian}
%\settextfont{XB Niloofar}
%\settextfont{HM XZar}
%     \setmainfont[Ligatures=TeX]{Latin Modern Roman}
% \newfontfamily\arabicfont[Script=Arabic,Numbers=Arabic]{Amiri}
%\setmainlanguage{farsi}
%\setotherlanguage{english}

\title{Title}
\parindent 0.5cm
\date{1234}
\author{Ann Author}
\begin{document}
        \maketitle
%    \begin{adjustwidth}{2cm}{2cm}
\begin{abstract}
\noindent
\lipsum[1]
\end{abstract}
%    \end{adjustwidth}
%       \noindent

    \begin{multicols}{2}
\section{Section}
        \lipsum
    \end{multicols}
\end{document}

相关内容