我正在尝试创建练习提示,并希望脚注中的文本上下颠倒。我创建了以下命令,但这不会产生任何换行符,因此文本超出了页面边界(在右侧)。我需要添加什么才能自动换行。
\newcommand{\hint}[1]{\footnote{\rotatebox{180}{Hint: #1}}}
我看过这答案,但他们正试图做一些更具体的事情。
答案1
棘手的是避免数字重叠。
\documentclass[letterpaper]{article}
\usepackage{graphicx}
\usepackage{blindtext}% MWE only
\usepackage{showframe}% MWE only
\newcommand{\hint}[1]{\footnote{\hspace{-1.8em}% from \@makefntext
\rotatebox[origin=c]{180}{\parbox[t]{\linewidth}%
{\advance\parfillskip by 1.8em\relax Hint: #1}}%
\vskip\ht\strutbox}}
\begin{document}
How high us up? \hint{\blindtext plus some more \rule{1.5in}{1pt} text}
Why is there air? \hint{\blindtext plus some more \rule{1.6in}{1pt} text}
\end{document}
为了翻转提示编号,必须模拟命令\footnote
本身。但是,使用\insert\footins
不会反转提示出现的顺序。
\documentclass{article}
\usepackage{graphicx}
\usepackage{blindtext}% MWE only
\usepackage{showframe}% MWE only
\makeatletter
\newcommand{\hint}[1]{\footnotemark\setbox\footins=\vbox{%
\normalfont\footnotesize
\interlinepenalty\interfootnotelinepenalty
\splittopskip\footnotesep
%\splitmaxdepth \dp\strutbox \floatingpenalty \@MM% no apparent effect
\hsize\columnwidth \@parboxrestore
\rotatebox[origin=c]{180}{\parbox[t]{\columnwidth}%
{\parindent=1em \noindent
\makebox[1.8em][r]{\textsuperscript{\thefootnote}}#1}}%
\vskip\dp\strutbox
\unvbox\footins}}
\makeatother
\begin{document}
How high us up? \hint{\blindtext}
Why is there air? \hint{\blindtext}
\end{document}