
當我嘗試使用這兩個套件進行排版時subcaption
和breqn
,我收到以下錯誤:
!套件標題錯誤:「subcaption」套件在相容模式下無法正常運作(標題)。
但是,如果我停用任一包,文檔就可以排版。
我的序言如下
\documentclass[a4paper]{article}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb}
\usepackage{lmodern}
\usepackage{graphicx}
\usepackage{float}
\graphicspath{{figures/}}
\includeonly{intro}
\usepackage{pstool}
\usepackage{epstopdf}
\usepackage{subcaption}
\usepackage{breqn}
\listfiles
\epstopdfDeclareGraphicsRule{.gif}{png}{.png}{%
convert #1 \OutputFile
}
\AppendGraphicsExtensions{.gif}
\newcommand{\vect}[1]{\boldsymbol{#1}}
\newcommand{\vectornorm}[1]{\left|\left|#1\right|\right|}
\newcommand{\pic}[5]{
\begin{figure}[H]
\centering
\includegraphics[width=#2\textwidth]{#1}
\caption[#3]{#4}
\label{#5}
\end{figure}
}
\title{\textbf{report\newline}}
\author{
\begin{tabular}{l c r}
First Middle Surname
\end{tabular}
}
\date{\today}
\setcounter{secnumdepth}{-1}
\begin{document}
\maketitle
\newpage
\begin{dmath}
x=5
\end{dmath}
\end{document}
如果您想查看文件列表,請告訴我
答案1
是的,由於我還不明白的原因,float
和breqn
包的組合與包不相容(sub)caption
:
\listfiles
\documentclass[a4paper]{article}
\usepackage{breqn}
\usepackage{float}
\usepackage{caption}
\begin{document}
A
\end{document}
將發出警告
Package caption Warning: \caption will not be redefined since it's already
(caption) redefined by a document class or package which is
(caption) unknown to the caption package.
這顯然是垃圾,因為caption
包應該知道包\caption
對 did的重新定義float
。
\caption
作為一種解決方法,可以在載入套件時保存和復原定義float
:
\let\captionORI\caption
\usepackage{float}
\let\caption\captionORI
只要caption
使用該包,這就不應該造成任何損害(但比該包的兼容性測試更聰明caption
),因為該caption
包\caption
稍後將重新定義。
我會在周末做進一步的檢查並報告。
謀殺案已出爐 (2012-08-25):
該套件以一種與該套件定義的至少一個巨集不相容的方式breqn
重新定義了 LaTeX 核心巨集。由於該巨集將用於相容性測試,因此即使實際上不存在不相容性,該測試也可能會失敗。我將在軟體包的下一個版本中修復該問題。\@ifstar
caption
caption
更新(2013/01/09):
該軟體包的下一個版本 3.3caption
已修復此錯誤。謝謝你的耐心。