commit 60d6b1c16ff9c5ff907550e5fc67b9b554d42f68
parent ce0e91fe1b0e4c3b3ee7275bce20c56055ed4edc
Author: Vincent St-Amour <stamourv@racket-lang.org>
Date: Sat, 19 Mar 2011 16:38:22 -0400
Add here-figures to scribble and avoid putting figures on their own page if possible.
original commit: c1ab718ad77542416a639bfc2abbc3ea8e17ea5d
Diffstat:
3 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/collects/scriblib/figure.css b/collects/scriblib/figure.css
@@ -1,5 +1,5 @@
-.Centerfigure, .CenterfigureMulti, .centerfigureMultiWide {
+.Centerfigure, .CenterfigureMulti, .centerfigureMultiWide .Herefigure {
margin: 1em 0 1em 0;
width: 100%;
border: 1px solid #1818FF;
diff --git a/collects/scriblib/figure.rkt b/collects/scriblib/figure.rkt
@@ -11,6 +11,7 @@
(provide figure
figure*
figure**
+ figure-here
Figure-target
Figure-ref
figure-ref)
@@ -23,14 +24,19 @@
(make-tex-addition (abs "figure.tex")))))
(define centerfigure-style (make-style "Centerfigure" figure-style-extras))
+(define herefigure-style (make-style "Herefigure" figure-style-extras))
(define figureinside-style (make-style "FigureInside" figure-style-extras))
(define legend-style (make-style "Legend" figure-style-extras))
(define centerfiguremulti-style (make-style "CenterfigureMulti" figure-style-extras))
(define centerfiguremultiwide-style (make-style "CenterfigureMultiWide" figure-style-extras))
(define (figure tag caption . content)
+ (apply figure-helper centerfigure-style tag caption content))
+(define (figure-here tag caption . content)
+ (apply figure-helper herefigure-style tag caption content))
+(define (figure-helper style tag caption . content)
(make-nested-flow
- centerfigure-style
+ style
(list
(make-nested-flow
figureinside-style
diff --git a/collects/scriblib/figure.tex b/collects/scriblib/figure.tex
@@ -9,7 +9,8 @@
\newlength{\FigOrigskip}
\FigOrigskip=\parskip
-\newenvironment{CenterfigureMulti}{\begin{figure*}[tp]\centering}{\end{figure*}}
+\newenvironment{CenterfigureMulti}{\begin{figure*}[t!p]\centering}{\end{figure*}}
\newenvironment{CenterfigureMultiWide}{\begin{CenterfigureMulti}}{\end{CenterfigureMulti}}
-\newenvironment{Centerfigure}{\begin{figure}[tp]\centering}{\end{figure}}
+\newenvironment{Centerfigure}{\begin{figure}[t!p]\centering}{\end{figure}}
+\newenvironment{Herefigure}{\begin{figure}[ht!p]\centering}{\end{figure}}
\newenvironment{FigureInside}{\begin{list}{}{\leftmargin=0pt\topsep=0pt\parsep=\FigOrigskip\partopsep=0pt}\item}{\end{list}}