我不喜欢像xfig一样使用外部图片编辑器,因为它不起作用。这是一个例子:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[magyar]{babel}
\usepackage{amsthm}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amstext}
\usepackage{tikz}
\usepackage{cutwin}
\newtheorem{thm}{tétel}
\begin{document}
\section{Téglalap}
\begin{thm}
A téglalap a területét az oldalhosszakból az
$$A=ab$$
képlettel számolhatjuk ki.
\end{thm}
\begin{proof}
A bizonyítás grafikusan igen jól szemléltethető. Vegyünk fel ugyanis egy $a+b$ oldalhosszúságú négyzetet, és ebben helyezzük el a négy egybevágó téglalapot.
\opencutleft\begin{cutout}{3}{0pt}{\textwidth}{1}
\begin{tikzpicture}
\draw (0,0) -- (0,1) -- (3,1) -- (3,0) -- cycle;
\draw (3,0) -- (4,0) -- (4,3) -- (3,3) -- cycle;
\draw (4,3) -- (4,4) -- (1,4) -- (1,3) -- cycle;
\draw (0,4) -- (1,4) -- (1,1) -- (0,1) -- cycle;
\end{tikzpicture}
\end{cutout}
A nagy négyzet területe $A=(a+b)^2$, a belső kis négyzet oldalhossza $a-b$, így a területe $A'=(a-b)^2$. A kettő különbsége lesz a négy téglalap területének összege:
\begin{align*}
(a+b)^2-(a-b)^2&=a^2+b^2+2ab-(a^2+b^2-2ab)=\\
&=4ab=4A.
\end{align*}
Innen egy téglalap területe az egybevágóság miatt már megkapható, és ez pont a tétel állítása.
\end{proof}
\end{document}
问题是图片滑过上面的文字,上面的空格是空的,开始下面的文字。当我改变空间时,图片会逐渐消失,并且降低这些数字会越来越接近计划的位置,等待数字为0.但是当我写零时,翻译因为它的出现而抛出错误。确切的消息显示“缺少数字,处理az为零”。
答案 0 :(得分:2)
你可能最好让你的tikz图片成为图形的一部分,你可以从你的定理中引用它。实现此目的的一种方法是将tikz图片嵌入到保存箱中,例如:
\documentclass{article}
\usepackage{tikz}
\usepackage{amsmath}
\newtheorem{theorem}{Theorem}
%% Define savebox and tikz picture
\newsavebox{\mytikzpic}
\begin{lrbox}{\mytikzpic}
\begin{tikzpicture}
\draw (0,0) -- (0,1) -- (3,1) -- (3,0) -- cycle;
\draw (3,0) -- (4,0) -- (4,3) -- (3,3) -- cycle;
\draw (4,3) -- (4,4) -- (1,4) -- (1,3) -- cycle;
\draw (0,4) -- (1,4) -- (1,1) -- (0,1) -- cycle;
\end{tikzpicture}
\end{lrbox}
\begin{document}
\subsection*{My TiKZ picture within a savebox}
\noindent See my TiKZ picture in Figure~\ref{fig1}.
\begin{theorem}
I have some theorem using this TiKZ picture in Figure~\ref{fig1}, which yields
\begin{align*}
x = c^2 + \sum_{i=1}^4 ab,
\end{align*}
\noindent where $a$ and $b$ are side lengths of the rectangles in Figure~\ref{fig1}, and $c$ the side length of the middle square.
%% Include savebox in a figure
\begin{figure}[h]
\centering
\usebox{\mytikzpic}
\caption{My TiKZ picture.}
\label{fig1}
\end{figure}
%
\noindent And with this, the area has been blahablasized.
\end{theorem}
\end{document}
产生以下输出:
当然,如果您愿意,您可以将图形移到定理环境之外。
另请注意,如果您想删除整个数字标题,只需输入数字
即可\begin{figure}[h]
\centering
\usebox{\mytikzpic}
\end{figure}
在.tex文件中,改为生成以下内容:
答案 1 :(得分:0)
wrapfig
包不会帮助proof
内部环境,所以我会发布一个非常简单的 no-float 替代@dfri的好答案。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[magyar]{babel}
\usepackage{amsthm}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amstext}
\usepackage{tikz}
%\usepackage{cutwin}
\newtheorem{thm}{tétel}
\begin{document}
\section{Téglalap}
\begin{thm}
A téglalap a területét az oldalhosszakból az
$$A=ab$$
képlettel számolhatjuk ki.
\end{thm}
\begin{proof}
A bizonyítás grafikusan igen jól szemléltethető. Vegyünk fel ugyanis egy $a+b$ oldalhosszúságú négyzetet, és ebben helyezzük el a négy egybevágó téglalapot.
\begin{center}
\begin{tikzpicture}
\draw (0,0) -- (0,1) -- (3,1) -- (3,0) -- cycle;
\draw (3,0) -- (4,0) -- (4,3) -- (3,3) -- cycle;
\draw (4,3) -- (4,4) -- (1,4) -- (1,3) -- cycle;
\draw (0,4) -- (1,4) -- (1,1) -- (0,1) -- cycle;
\end{tikzpicture}
\end{center}
A nagy négyzet területe $A=(a+b)^2$, a belső kis négyzet oldalhossza $a-b$, így a területe $A'=(a-b)^2$. A kettő különbsége lesz a négy téglalap területének összege:
\begin{align*}
(a+b)^2-(a-b)^2&=a^2+b^2+2ab-(a^2+b^2-2ab)=\\
&=4ab=4A.
\end{align*}
Innen egy téglalap területe az egybevágóság miatt már megkapható, és ez pont a tétel állítása.
\end{proof}
\end{document}
输出:
请注意,我只编辑了第25行和第32行(并在第12行注释了\usepackage{cutwin}
):center
环境在\section{}
之前的任意长度文本也能正常运行。
如果我为cutout
环境制定了一些好的设置,我会发布更新,这个设置应该用in theorem-like environments。