答案1
\documentclass{article}
即使我添加并加载,我也无法从发布的代码中生成警告,graphicx
但是显示的标记会使警告不太可能发生。
您正在指定
[h!]
这通常不是一个好的选择(LaTeX 通常会警告你它正在将其更改为ht
),然而h
具体来说不是p
因此您指定该浮动元素不能放置在仅包含浮动元素的页面上。
在文本页面上,通常乳胶不允许浮动太大,以便有足够的空间在页面上放置一些实际文本;然而!
意味着“忽略限制并在其适合时放置它”。
因此,最终结果是,您最终得到的页面名义上是文本页面,但只有浮动元素,没有足够的空间容纳一行文本,这并不奇怪。这就是警告告诉您发生的事情。
!
只有在你确实需要断言控制并强制进行某种放置时,才应该在最后的编辑阶段使用。例行忽略用户可指定的约束是没有意义的。同样,请注意,可选参数主要是限制允许浮动的位置(因此,随着更多页面被拒绝,使其更有可能到达文档末尾),因此,如果您不想阻止浮动出现在页面顶部、页面底部或只有浮动的页面上,请不要从可选参数中省略t
,b
或。p
当然,如果没有提供测试文档,即使您[htbp]
在特定情况下使用该文档,LaTeX 也可能无法找到好的位置,您仍然会收到此警告,但至少它有更好的机会找到可接受的位置。