我发现这个帖子定义addfig{}
将图形放在正确页面上的命令。
verbatim
我的问题是,如果图形是一个元素,它就不起作用。
这是一个最小的不起作用的例子:
\documentclass[a4paper,twoside,12pt]{article}
\usepackage[francais]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[labelsep=endash]{caption}
\usepackage{afterpage}
% The addfig function definition
\makeatletter
\newcommand\@addfig{\relax}
\newcommand\addfig[1]{\global\long\def\@addfig{#1}}
\newcommand\@putfig{\@addfig\addfig{\relax}}
\newcommand\blankpage{%
\null
\vfill
\@putfig%
\vfill
\thispagestyle{empty}%
\clearpage%
\addtocounter{page}{-1}
\afterpage{\blankpage}}
\makeatother
\begin{document}
\afterpage{\blankpage}
\addfig{ % The example work without it
\begin{figure}
\begin{verbatim}
Something
\end{verbatim}
\caption{content of the caption}
\end{figure}
}
First Page
\end{document}
有没有办法重新定义要接受的命令verbatim
?
答案1
这个verbatimbox
包在这里很有用。它允许您逐字逐句地塞入一个框中。在本例中,我在调用之前将其\addfig
塞入名为的框中\myafterfig
。然后我可以将该框作为图形内容的一部分调用。因为它是一个框,所以我也可以将其居中。
\documentclass[a4paper,twoside,12pt]{article}
%\usepackage[francais]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[labelsep=endash]{caption}
\usepackage{verbatimbox}
\usepackage{afterpage}
% The addfig function definition
\makeatletter
\newcommand\@addfig{\relax}
\newcommand\addfig[1]{\global\long\def\@addfig{#1}}
\newcommand\@putfig{\@addfig\addfig{\relax}}
\newcommand\blankpage{%
\null
\vfill
\@putfig%
\vfill
\thispagestyle{empty}%
\clearpage%
\addtocounter{page}{-1}
\afterpage{\blankpage}}
\makeatother
\begin{document}
\afterpage{\blankpage}
\begin{myverbbox}{\myafterfig}
Something \verbatim $%^&
ANd then &*)$% some more
\end{myverbbox}
\addfig{ % The example work without it
\begin{figure}
\centering
\myafterfig
\caption{content of the caption}
\end{figure}
}
First Page
\end{document}