Com xsim
, como você pode ajustar o espaço entre o exercício e a quantidade de pontos, usando o estilo padrão?
Se eu alterar manualmente as margens horizontais do meu documento (usando geometry
), então o número de pontos está realmente fora da área de impressão, como posso corrigir isso?
MWE:
\documentclass{article}
\usepackage{xsim}
\usepackage{geometry}
\geometry{hmargin=1in}
\begin{document}
\begin{exercise}[points = {10}]
Write.
\end{exercise}
\end{document}
dá:
Responder1
O estilo padrão é definido assim:
\DeclareExerciseEnvironmentTemplate{default}{%
\subsection*
{%
\XSIMmixedcase{\GetExerciseName}\nobreakspace
\GetExerciseProperty{counter}%
\IfInsideSolutionF
{%
\GetExercisePropertyT{subtitle}
{ {\normalfont\itshape\PropertyValue}}%
}%
}
\GetExercisePropertyT{points}
{%
\marginpar
{%
\IfInsideSolutionF{\rule{1.2cm}{1pt}\slash}%
\printgoal{\PropertyValue}
\GetExercisePropertyT{bonus-points}{~(+\printgoal{\PropertyValue})}%
~\XSIMtranslate {point-abbr}%
}%
}%
}
{}
Como você pode ver, o título do exercício está escrito como um arquivo \subsection*
. Se forem dados pontos, eles serão digitados com uma extensão \marginpar
. Isso significa que a posição dos pontos é controlada pelas dimensões do documento (largura do texto, marginparsep,…). IMHO, seu problema é que isso \rule{1.2cm}{1pt}
é muito amplo para sua margem ou que os pontos estão escritos atrás e não abaixo da regra.
Uma possibilidade:
\documentclass{article}
\usepackage{geometry}
\geometry{
hmargin = 1in ,
showframe
}
\usepackage{xsim}
\xsimsetup{
exercise/template = custom
}
\DeclareExerciseEnvironmentTemplate{custom}{%
\subsection*
{%
\XSIMmixedcase{\GetExerciseName}\nobreakspace
\GetExerciseProperty{counter}%
\IfInsideSolutionF
{%
\GetExercisePropertyT{subtitle}
{ {\normalfont\itshape\PropertyValue}}%
}%
}
\GetExercisePropertyT{points}
{%
\marginpar
{%
\IfInsideSolutionF{\rule{1.2cm}{1pt}/\\}% <<<< NEW
\printgoal{\PropertyValue}
\GetExercisePropertyT{bonus-points}{~(+\printgoal{\PropertyValue})}%
~\XSIMtranslate {point-abbr}%
}%
}%
}
{}
\begin{document}
\begin{exercise}[points = 10]
Write.
\end{exercise}
\end{document}