IEEE Access Latex 範本中寬圖的多行標題

IEEE Access Latex 範本中寬圖的多行標題

IEEE Access 的 Latex 模板使用自己的圖形類\Figure

\Figure[t!](topskip=0pt, botskip=0pt, midskip=0pt){fig1.png}{<caption>\label{fig1}}

此指令適用於寬圖形,即跨越兩列的圖形。 (對於列寬圖形,語法[width=\columnwidth]插入在 {fig1.png} 之前)

當標題長於紙張可列印區域的寬度時,就會出現問題。它作為一行延伸到頁面之外。

對於具有長標題的列寬圖形,不會出現此問題。它會自動轉換為多行。

這個帖子提供了一種解決方法,但它會擾亂字體類型和字體大小。

因此,我決定自己進行研究,並嘗試查看該ieeeaccess.cls文件(您也可以找到這裡)。但我對 .cls 檔案完全是菜鳥。我強烈感覺到ieeeaccess.cls該部分下的文件中缺少某些內容Captions

它讀作

%%%
%Captions
\def\@IEEEtablestring{table}

\long\def\@makecaption#1#2{%
% test if is a for a figure or table
\ifx\@captype\@IEEEtablestring%
% if a table, do table caption
\begin{flushleft}
\vspace*{5pt}
{\vss\color{accessblue}\tablecapheadfont #1. \ }{\raggedright\tablecapfont#2\vss}%
\end{flushleft}
\@IEEEtablecaptionsepspace% V1.6 was a hard coded 8pt
% if not a table, format it as a figure
\else
\@IEEEfigurecaptionsepspace% V1.6 was a hard coded 5pt
% 3/2001 use footnotesize, not small; use two nonbreaking spaces, not one
\setbox\@tempboxa\hbox{\strut{\color{accessblue}\figcapheadfont #1. \ }\raggedright\figcapfont#2\strut}%
%\ifdim \wd\@tempboxa >\columnwidth%
\ifdim \xfigwd >\columnwidth%
% if caption is longer than a line, let it wrap around
\setbox\@tempboxa\hbox{{\color{accessblue}\figcapheadfont #1. \ }}%
\mbox{}\hfill\begin{tabular}{@{}l@{}}\noindent\raggedright\unhbox\@tempboxa\figcapfont#2\end{tabular}\hfill\mbox{}%
% if caption is shorter than a line,
% allow user to control short figure caption justification (left or center)
\else%
%\ifcenterfigcaptions \hbox to\hsize{\footnotesize\hfil\box\@tempboxa\hfil}%
%\else 
\setbox\@tempboxa\hbox{{\color{accessblue}\figcapheadfont #1. \ }}%
%\parbox[t]{\columnwidth}
{\vss\raggedright\noindent\unhbox\@tempboxa\figcapfont#2\vss}%
%\hbox to\hsize{\box\@tempboxa\hfil}%
%\fi
\fi\fi\vskip 1pt plus 1pt minus 1pt}

我覺得應該有一個嵌套elseif來檢查條件\ifdim \xfigwd >\textwidth%

但是,我似乎沒有找到任何有關nested \ifdim

.cls正如我之前所說,我對文件及其語法完全是菜鳥。我的觀察很可能是錯的。

有誰熟悉.cls語法,碰巧與我有相同的觀察結果,並希望知道可以在文件中更改哪些內容.cls以使寬圖形的多行標題成為可能?

提前致謝。

答案1

好吧,在擺弄該ieeeaccess.cls文件之後,我發現替換\columnwidth\textwidth允許在寬圖形和列寬圖形中(神奇地)出現多行。

因此,在該Caption部分下,只需替換行

\ifdim \xfigwd >\columnwidth%

\ifdim \xfigwd >\textwidth%

請注意,我仍然不確定為什麼這是有效的(但確實如此)。我把技術解釋留給專家。

話雖這麼說,它也不會弄亂 IEEE Access 設定的字體類型和字體大小,這正是我想要的。

Ps:如果有人發現這個解決方案不正確,解釋為什麼,並提供一個合理的解決方案,我很樂意刪除我的解決方案。 (目前它仍然是我的首選解決方案:))。我希望 IEEE Access 注意到這個問題。

[更新]

也適用於\linewidth%。感謝用戶@Zarko 的建議。

相關內容