Hacemos una revisión exhaustiva cada uno de los artículos de nuestra página web con el objetivo de mostrarte siempre información veraz y actualizada.
Solución:
El comportamiento que describe es causado por el uso de la wrapfig
entorno demasiado cercano a un salto de página, como demuestra el siguiente ejemplo:
documentclassarticle
usepackagewrapfig
usepackagelipsum
begindocument
lipsum[1-4]
beginwrapfigurer5cm
centering
rule3cm7cm
endwrapfigure
lipsum[1-6]
enddocument
Él wrapfig
la documentación del paquete advierte explícitamente sobre esto:
El entorno debe colocarse de manera que no se superponga a un salto de página.
entonces, necesitas mover tu wrapfig
entorno para garantizar que no se ejecutará en un salto de página. Sin embargo, usando R
(o L
) en vez de r
(o l
) tu figura flotará, así que simplemente cambiando r
para R
en el código anterior, como en
documentclassarticle
usepackagewrapfig
usepackagelipsum
begindocument
lipsum[1-4]
beginwrapfigureR5cm
centering
rule3cm7cm
endwrapfigure
lipsum[1-6]
enddocument
ahora da:
La respuesta aceptada ofrece un método (hacer que la figura flote). Si todo lo que necesita es eliminar el cuadro blanco en la página siguiente, puede agregar un espacio negativo. Adaptando el ejemplo de Gonzalo Medina:
documentclassarticle
usepackagewrapfig
usepackagelipsum
begindocument
lipsum[1-4]
beginwrapfigurer5cm
centering
rule3cm7cm
vspace-110pt % This removes the white box on the second page
endwrapfigure
lipsum[1-6]
enddocument
Alternativamente, puede contar el número de filas en la primera página que wrapfigure
ocupa e inserte ese número en el primer parámetro opcional del wrapfigure
:
documentclassarticle
usepackagewrapfig
usepackagelipsum
begindocument
lipsum[1-4]
beginwrapfigure[10]r5cm
% ^^ This dictates the number
% of text rows the wrapfigure
% will occupy.
centering
rule3cm7cm
vspace-110pt
endwrapfigure
lipsum[1-6]
enddocument
Ambos métodos dan como resultado el siguiente resultado:
Si desea entornos envolventes no flotantes, pero no quiere que las figuras se extiendan nunca más allá de la parte inferior de la página, eso significa que a veces tiene que tener un salto de página antes del comienzo del párrafo. Tú puede haga esto automáticamente definiendo un comando (en el preámbulo) que almacene el contenido de la figura en un cuadro de guardado, pruebe la altura del cuadro y luego fuerce un salto de página si es necesario. Vea el siguiente ejemplo:
documentclassarticle
usepackagewrapfig
usepackagelipsum
newsaveboxcurwrapfig
makeatletter
longdefwrapfiguresafe#1#2#3%
sboxcurwrapfig#3%
parpenalty-100%
begingroup % preserve [email protected]
[email protected]pagegoal advance[email protected]pagetotal % space left
advance[email protected]baselineskip % allow an extra line
ifdim htcurwrapfig>[email protected] % not enough space left
break%
fi%
endgroup%
beginwrapfigure#1#2%
useboxcurwrapfig%
endwrapfigure%
makeatother
begindocument
lipsum[1-4]
wrapfiguresafer0mmcenteringrule3cm7cm
lipsum[1-6]
enddocument
que produce la siguiente salida:
Tenga en cuenta que, si sus cifras son altas, esto puede causar algunos saltos de página muy malos con páginas cortas y/o, según su configuración, generar advertencias de vbox insuficientes.
Si entiendes que te ha sido de provecho nuestro artículo, sería de mucha ayuda si lo compartieras con más desarrolladores y nos ayudes a extender nuestro contenido.