如何将文本移至右方,放入自定义的 \section 中

如何将文本移至右方,放入自定义的 \section 中

我有以下代码:

\documentclass[11pt]{article}
\usepackage[a4paper]{geometry}
\usepackage[cm]{fullpage}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{lipsum}
\usepackage{fancyhdr}
\pagestyle{fancy}
% no line in header area
\renewcommand{\headrulewidth}{0pt}

%section with predefined text
\renewcommand{\section}[1]{\addtocounter{section}{1}
  \begin{center}\Large{\bf{Problem N \arabic{section}}}\end{center}}
\begin{document}
\fancyhead[HR]{Variant 1}
\section{}
\lipsum[1]
\end{document}

在此处输入图片描述

我想不使用任何额外的包来实现相同的效果:

  1. 将文本“变体 1”移至页面右侧,与文本右边框对齐。
  2. 是否与“问题N”保持在同一行?

答案1

以下是使用titlesec包;的参数\section可用于将文本刷新到右边距:

\documentclass[11pt]{article}
\usepackage[a4paper]{geometry}
\usepackage[cm]{fullpage}
\usepackage{lipsum}
\usepackage[explicit]{titlesec}

\titleformat{\section}
  {\normalfont\Large\bfseries\filcenter}{}{0em}
  {\hfill Problem N~\thesection\hfill\makebox[0pt][r]{\normalfont\small#1}}

\begin{document}
\section{Variant 1}
\lipsum[1]
\end{document}

在此处输入图片描述

相关内容