顛倒的段落樣式註腳

顛倒的段落樣式註腳

我試圖弄清楚如何將文字練習的解決方案排版為顛倒的段落樣式腳註,如下圖

在此輸入影像描述

footmisc我可以使用該選項輕鬆地在右側段落樣式腳註中排版解決方案para。我還可以使用 a\rotatebox將腳註倒置並每行一個(儘管與我想要的順序相反)。但是,我不知道如何獲得整個腳註旋轉的段落樣式腳註。

我希望能夠使用以下程式碼產生類似於上面的內容:

\documentclass[12pt]{article}
\usepackage{graphicx}
\newcommand{\problem}[2]{...}{...}
\begin{document}
\problem{What is 1+1}{two}
\problem{What is 1+2}{three}
\problem{What is 1+3}{four}
\problem{What is 1+4}{five}
\end{document}

答案1

新版本回應修訂後的 OP 要求。編輯使用 a\protected@edef作為 的一部分,以方便在腳註中\problem使用大括號。\{...\}

它使用語法\problem[]{question}{answer}.在此階段,使用者必須透過以下兩種方式之一呼叫腳註:

  1. \showpageanswers\problem任何給定頁面上的最後一個之後;或者

  2. 提供任何給定頁面上\relax最後一個的可選參數(除了)。\problem

我嘗試逐頁自動化此操作,但沒有成功。

問題計數器將逐頁結轉。

我進行了修改,\showpageanswers因此沒有任何要顯示的答案的呼叫將被忽略。

為了使腳註能夠延伸超過單行長度(即段落樣式),我將其放在一個\parbox.我還在旋轉之前調整了 -18pt 字距\parbox,以考慮腳註縮進,並\strut在倒置腳註定義的末尾添加了一個 ( \revfootnote),用於後續的垂直間距。

但請注意,如果同一頁面上出現多個答案集,則保存每頁單個腳註調用的所有答案將防止「出現」順序錯誤的腳註(因為將它們顛倒會改變第一個和最後一個的含義)。

這是 MWE

\documentclass[12pt]{article}
\usepackage{graphicx,lipsum}
\usepackage{enumitem}\newsavebox\fnbox
\def\pageanswers{}
\newcounter{problemNo}
\makeatletter
\newcommand\problem[3][\relax]{%
  \stepcounter{problemNo}%
  \par\smallskip%
  \theproblemNo.~~#2?%
  \par\smallskip%
  \protected@edef\pageanswers{\pageanswers$^{\theproblemNo}$#3\ \quad}%
  \ifx\relax#1\else\showpageanswers\fi%
}
\makeatother
\newcommand\showpageanswers{\if\relax\pageanswers\relax\else%
  \revfootnote{\pageanswers}\def\pageanswers{}\fi}
\newcommand\revfootnote[1]{\renewcommand{\thefootnote}{}%
  \footnotetext{\savebox\fnbox{\parbox{%
  \dimexpr\textwidth\relax}{#1\strut}}\kern-18pt%
  \rotatebox{180}{\usebox{\fnbox}}}}
\begin{document}
Solve these problems.
\problem{What is 1+1}{two $\{abc\}$}
\problem{What is 1+2}{three}
\problem{What is 1+3}{four}
\problem{What is 1+4}{five}
\problem{What is 1+5}{six}
\problem{What is 1+6}{seven}
\problem{What is 1+7}{eight}
\problem{What is 1+8}{nine}
\lipsum[1]
\problem{What is 2+1}{three}
\problem{What is 2+2}{four}
\problem{What is 2+3}{five}
\problem[x]{What is 2+4}{six}

\lipsum[2-4]
Solve these problems.
\problem{What is 1+1}{two}
\problem{What is 1+2}{three}
\problem{What is 1+3}{four}
\problem{What is 1+4}{five}
\problem{What is 1+5}{six}
\problem{What is 1+6}{seven}
\problem{What is 1+7}{eight}
\problem[x]{What is 1+8}{nine}
\lipsum[5-8]
\end{document}

在此輸入影像描述

在此輸入影像描述

答案2

這裡沒有\hfill用,但是 a\raggedleft會將旋轉的框移動到右邊距`

\documentclass[12pt]{article}
\usepackage{graphicx}
\usepackage{enumitem}
\begin{document}
What is
\begin{enumerate}
\item   1+1?
\item   1+2?
\item   1+3?
\item   1+4?
\end{enumerate}
\renewcommand{\thefootnote}{}
\footnotetext{\raggedleft\rotatebox{180}{$^1$ two\qquad $^2$ three\qquad $^3$ four\qquad $^4$ five\hfill}}
\end{document}

在此輸入影像描述

相關內容