我想更改圖形的預設浮動選項,這樣我只需調整一個選項即可更改文件中所有圖形的行為。在我以前的電腦(Ubuntu 14.04)上,我一直在做這樣的事情:
\documentclass{article}
\newcommand{\defaultplacement}{htb}
\begin{document}
\begin{figure}[\defaultplacement]
\caption{Example}
\end{figure}
\end{document}
我現在嘗試在 Ubuntu 16.04 上構建,但收到以下錯誤:
./figures/ch1/coordinate_system.tex:1: LaTeX Error: Unknown float option `\'.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.1 \begin{figure}[\defaultplacement]
以前,LaTeX 似乎是\defaultplacement
在處理之前替換其值,但現在它是就地處理巨集。我的猜測是,我原來的解決方案有點黑客,並且有更好的方法來重置我剛剛找不到的預設figure
(和?)位置。table
答案1
LaTeX 使用巨集的內容\fps@<float>
作為 float 類型的預設參數<float>
。它可以被重新定義,例如figure
:
\makeatletter
\renewcommand*{\fps@figure}{htb}
\makeatother
然後,如果在沒有可選參數的情況下使用浮點數,則套用巨集的選項:
\begin{figure}
...
\end{figure}
答案2
Heiko 已經給出了正確的聲明,但要回答
以前,LaTeX 似乎是
\defaultplacement
在處理之前替換其值,但現在它是就地處理巨集。
不會。
[\defaultplacement]
與
[\ d e f a u l
t p
l a c e m e n t]
在忽略未知和重複的選項之後,與
[tp]
順便說一句,您確定要預設值嗎htb
?
禁止p
(浮動頁)會大幅增加所有浮動頁到達文件末端的機會。