今天,我用 来写我的问题exam.cls
。我希望将问题格式化如下:
但不幸的是,无法使用该\qformat
命令将点保留在左边距中。因此,我继续按照本主题中指出的方式\renewcommand{\questionlabel}{\textbf{Question \thequestion}}
保持可用性:\pointsinmargin
格式化 - 如何在使用考试类别的 qformat 时将点放置在左边距?。
但这会导致\thepoints
与问题标签重叠,如您在这张图片上看到的(顺便说一下,这是前一张的放大图)。此外,问题的要点不会出现。
我的期望是:
- 左边距的点格式如下:
/\thepoints
- 问题标签:
Question \thequestion
用阿拉伯数字。 - 部件号标签:
\thepartno)
带有字母。 - 如果可能的话,部分的要点应该相对于问题要点进行缩进。
这是我的 MWE:
\documentclass[addpoints, 12pt, a4paper]{exam}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage[top=1cm, left=2cm, right=2cm, bottom=1cm]{geometry}
%% Structure Exam.cls
\renewcommand{\partlabel}{\thepartno)}
\renewcommand{\questionlabel}{\textbf{Question \thequestion}}
\pointname{}
\pointformat{/\thepoints}
\bonuspointformat{/+\thepoints}
\pointsinmargin
\begin{document}
\begin{questions}
\question Définissez ce qu'est la force de pesanteur :
\begin{parts}
\part[2] Première question
\part[2] Première question
\end{parts}\vspace{2cm}
\question[1] Définissez ce qu'est la force de pesanteur :\vspace{2.5cm}
\end{questions}
\end{document}
感谢您的帮助 !
答案1
由于questions
环境只是一个列表,我们可以尝试使用列表参数\leftmargin
和\labelwidth
。我们使用类提供的钩子将它们更改为问题和部分exam
:
\newlength{\mywidth}
\settowidth{\mywidth}{Question 10}
\newlength{\mywidthii}
\settowidth{\mywidthii}{Question 1000}
\renewcommand{\questionshook}{%
\addtolength{\leftmargin}{\mywidth}%
\setlength{\labelwidth}{\mywidthii}%
}
\renewcommand{\partshook}{%
\setlength{\leftmargin}{-0.5\mywidth}%
}
梅威瑟:
\documentclass[addpoints, 12pt, a4paper]{exam}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage[top=1cm, left=2cm, right=2cm, bottom=1cm]{geometry}
%% Structure Exam.cls
\renewcommand{\partlabel}{\thepartno)}
\renewcommand{\questionlabel}{\textbf{Question \thequestion}}
%\renewcommand{\questionlabel}{\thequestion...}
\pointname{}
\pointformat{/\thepoints}
\bonuspointformat{/+\thepoints}
\newlength{\mywidth}
\settowidth{\mywidth}{Question 10}
\newlength{\mywidthii}
\settowidth{\mywidthii}{Question 1000}
\renewcommand{\questionshook}{%
\addtolength{\leftmargin}{\mywidth}%
\setlength{\labelwidth}{\mywidthii}%
}
\renewcommand{\partshook}{%
\setlength{\leftmargin}{-0.5\mywidth}%
}
\pointsinleftmargin
\begin{document}
\begin{questions}
\question Définissez ce qu'est la force de pesanteur:
\begin{parts}
\part[2] Première question Première question Première question Première question Première question Première question Première question
\part[2] Première question
\end{parts}\vspace{2cm}
\question[1] Définissez ce qu'est la force de pesanteur :
\question[1]
\question[1]
\question[1]
\question[1]
\question[1]
\question[1]
\question[1]
\question[1]
\question[1]
\end{questions}
\end{document}