2017-12-28 9 views
1

次のラテックスコードは、そのテキストが2列目に重なるという定義を生成します。 ijcai18パッケージは2列の記事になっているので、おそらく問題はありますか?私はそれを読む方法を知らない。ラテックス定理は2列にテキストをラップしません

\documentclass{article} 

\usepackage{ijcai18} 


\usepackage{lipsum} 

\newtheorem{theorem}{Theorem}[section]  
\newtheorem{definition}[theorem]{Definition} 

\begin{document} 

\begin{definition} [This is a long definition title that does not wrap to the next line] 

... 
\end{definition} 
\lipsum[1-5]  
\end{document} 

答えて

1

ijcai18 conference styleには定理関連の機能は追加されません。したがって、\newtheorem{definition}[.]{Definition}は定理のような環境を作成するためのLaTeXの元の定義に依然として依存しています。ラテックス中

は、\newtheoremを介して定義されるような定理は、特異\itemからなる全体の定理を用いて、リストとして設定されています。定理のタイトルは、オプションの引数として\itemに渡されます(つまり、\item[<theorem title stuff>])。このオプションの引数は、改行を許可しないボックス内に設定されます。

以下では、 (具体的\begin{definition}[..]、あなたのケースのように)オプションの引数を持っている定理ため\itemここで(LaTeX kernelから)本来の定義があります:。

\def\@opargbegintheorem#1#2#3{\trivlist 
    \item[\hskip \labelsep{\bfseries #1\ #2\ (#3)}]\itshape} 

enter image description here

、ここでは、変更した定義です:

\def\@opargbegintheorem#1#2#3{\trivlist 
    \item[]{\bfseries #1\ #2\ (#3)} \itshape} 

enter image description here

\documentclass{article} 

\usepackage{ijcai18}% http://www.ijcai.org/authors_kit 
\usepackage{lipsum} 

\newtheorem{definition}{Definition} 

\makeatletter 
\def\@opargbegintheorem#1#2#3{\trivlist 
    \item[]{\bfseries #1\ #2\ (#3)} \itshape} 
\makeatother 

\begin{document} 

\begin{definition}[This is a long definition title that does not wrap to the next line] 
\lipsum[1] 
\end{definition} 

\lipsum[2-5] 

\end{document} 
+0

永遠に感謝!それは問題を解決しました。 ijcarパッケージを変更する必要があります。 –

+0

@Oferstrichman:この回答を受け入れることを考えてください。 「どのように回答を受け入れますか?」(https://tex.meta.stackexchange.com/q/1852/5764)を参照してください。 – Werner

関連する問題