
私は IEEE 形式で 2 列の論文を書いています。図をテキストに配置すると論文の構成が台無しになってしまうので、付録に 2 列にわたる大きな図をいくつか含める予定です (幅は広くても長くはありません)。しかし、付録を作成すると、参考文献の後に巨大な空白スペースができてしまい、付録が次のページに移動してしまうのです。問題を示すサンプル コードを含めます。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%2345678901234567890123456789012345678901234567890123456789012345678901234567890
% 1 2 3 4 5 6 7 8
\documentclass[conference,10pt]{IEEEtran}
\makeatletter
\def\ps@headings{%
\def\@oddhead{\mbox{}\scriptsize\rightmark \hfil \thepage}%
\def\@evenhead{\scriptsize\thepage \hfil \leftmark\mbox{}}%
\def\@oddfoot{}%
\def\@evenfoot{}}
\makeatother
\pagestyle{empty}
\usepackage{booktabs}
\usepackage[caption=false]{subfig}
\usepackage{comment}
\usepackage[]{algorithm2e}
\usepackage{balance}
\usepackage{booktabs}
\usepackage{subfig}
\usepackage{balance}
\usepackage[english]{babel}
\usepackage{blindtext}
\usepackage{blindtext}
\usepackage{wrapfig}
\usepackage{amsmath}
\usepackage[dvipsnames,svgnames,x11names]{xcolor}
\usepackage[final]{changes}
\definechangesauthor[color=BrickRed]{EE}
\usepackage{todonotes}
\setlength{\marginparwidth}{3cm}
\makeatletter
\setremarkmarkup{\todo[color=Changes@Color#1!20,size=\scriptsize]{#1: #2}}
\makeatother
\newcommand{\note}[2][]{\added[#1,remark={#2}]{}}
\IEEEoverridecommandlockouts
\title{\LARGE \bf A long title comes here about lets say whales}
\author{\IEEEauthorblockN{
Author First\IEEEauthorrefmark{1},
Author Second\IEEEauthorrefmark{1},
Author Third\IEEEauthorrefmark{1},
Author Fourth \IEEEauthorrefmark{2} and
Author Fifth \IEEEauthorrefmark{1}}
\IEEEauthorblockA{\IEEEauthorrefmark{1}A University, City, State\\
Email: \{first, second, third, fifth\}@city.edu}
\IEEEauthorblockA{\IEEEauthorrefmark{2}Another University, City, State\\
Email: [email protected]}}
\begin{document}
\maketitle
\thispagestyle{empty}
\pagestyle{empty}
\begin{abstract}
\blindtext
\end{abstract}
\section{Conclusion}
\Blindtext
\Blindtext
\balance
\onecolumn
\section*{Appendix}
\Blindtext
\end{document}
論文の内容は変更しましたが、使用しているパッケージはすべて論文に含めています。ちなみに、大きな図は \minipage パッケージで作成したものです。
コードを編集する
問題の原因となる冗長なパッケージの使用を可能な限り削除しました。私が使用したパッケージの 1 つがその問題を引き起こしているかどうかを他の人に知ってもらいたかっただけです。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%2345678901234567890123456789012345678901234567890123456789012345678901234567890
% 1 2 3 4 5 6 7 8
\documentclass[conference,10pt]{IEEEtran}
\usepackage{balance}
\usepackage[english]{babel}
\usepackage{blindtext}
\IEEEoverridecommandlockouts
\title{\LARGE \bf A long title comes here about lets say whales}
\author{\IEEEauthorblockN{
Author First\IEEEauthorrefmark{1},
Author Fourth \IEEEauthorrefmark{2} and
Author Fifth \IEEEauthorrefmark{1}}
\IEEEauthorblockA{\IEEEauthorrefmark{1}A University, City, State\\
Email: \{first, second, third, fifth\}@city.edu}
\IEEEauthorblockA{\IEEEauthorrefmark{2}Another University, City, State\\
Email: [email protected]}}
\begin{document}
\maketitle
\thispagestyle{empty}
\pagestyle{empty}
\begin{abstract}
\blindtext
\end{abstract}
\section{Conclusion}
\Blindtext
\Blindtext
\balance
\onecolumn
\section*{Appendix}
\Blindtext
\end{document}
答え1
このソリューションでは、 コマンドを使用して、自然なページ境界でと\shortpage
を切り替えます。 フォーマットされたテキストを保存ボックスに入れて、すべてを一度にダンプします。 ページの最後に残っているものは、multicols を使用して処理されます。\twocolumn
\onecolumn
\afterpage
次のページの先頭で が実行され、\onecolumn
新しいページは作成されません。また、前のページの残りのテキストが に保存されます\AP@partial
。
\documentclass[conference,10pt]{IEEEtran}
\usepackage[english]{babel}
\usepackage{blindtext}
\usepackage{balance}
\usepackage{afterpage}
\usepackage{multicol}
\newsavebox{\shortpagebox}
\makeatletter
\newcommand{\shortpage}[1]% #1= \twocolumn text to wrap into \onecolumn page
{\par
\setbox\shortpagebox=\vbox{\strut #1\par}%
\afterpage{\onecolumn
\begin{multicols}{2}
\unvbox\AP@partial
\end{multicols}}%
\unvbox\shortpagebox
\par}
\makeatother
\IEEEoverridecommandlockouts
\title{\LARGE \bf A long title comes here about lets say whales}
\author{\IEEEauthorblockN{
Author First\IEEEauthorrefmark{1},
Author Second\IEEEauthorrefmark{1},
Author Third\IEEEauthorrefmark{1},
Author Fourth \IEEEauthorrefmark{2} and
Author Fifth \IEEEauthorrefmark{1}}
\IEEEauthorblockA{\IEEEauthorrefmark{1}A University, City, State\\
Email: \{first, second, third, fifth\}@city.edu}
\IEEEauthorblockA{\IEEEauthorrefmark{2}Another University, City, State\\
Email: [email protected]}}
\begin{document}
\maketitle
\thispagestyle{empty}
\pagestyle{empty}
\begin{abstract}
\blindtext
\end{abstract}
\section{Conclusion}
\Blindtext
\shortpage{\Blindtext}
\section*{Appendix}
\Blindtext
\end{document}