Saltar al contenido

Las figuras de látex aparecen antes del texto en pandoc markdown

Ten en cuenta que en las ciencias informáticas cualquier problema casi siempere suele tener varias resoluciones, pero aquí te mostraremos lo más óptimo y eficiente.

Solución:

Esto es muy probable porque el figure el entorno flota, que no es lo que buscas. Para ello tienes un par de opciones:

  1. Añade el float paquete que proporciona la H especificador flotante, lo que le permite utilizar

    usepackagefloat% http://ctan.org/pkg/float
    %...
    
    beginfigure[H]
    %...
    caption[]
    endfigure
    

    evitando que el flotador se mueva.

  2. Añade el caption (o el súper pequeño capt-of) empaqueta y envuelve tu figura dentro de un minipage para mantener la imagen y el título juntos. Úselo de la siguiente manera:

    usepackagecaption% http://ctan.org/pkg/caption
    %usepackagecapt-of% http://ctan.org/pkg/capt-of
    %...
    
    noindentbeginminipagetextwidth
    %...
    captionoffigure[]
    endminipage
    %...
    

Para obtener más información sobre la colocación de figuras, consulte ¿Cómo influir en la posición de entornos flotantes como figura y tabla en LaTeX? y Mantener tablas/figuras cerca de donde se mencionan.

Las propuestas anteriores son puramente impulsadas por LaTeX.


Si desea administrar esto dentro de pandoc, considere agregar lo siguiente a un archivo llamado float_adjustment.tex y colóquelo en la carpeta de su proyecto:

usepackagefloat
floatplacementfigureH

Luego incluya este archivo como parte de su preámbulo usando el encabezado pandoc

---
title: "A title"
author: "An author"
date: "`r format(Sys.time(), '%d %B %Y')`"
output:
  rmarkdown::pdf_document:
    fig_caption: yes        
    includes:  
      in_header: figure_placement.tex
---

Todas las figuras deben ser forzadas en su lugar a través del [H]Especificación flotante de ERE.

Una solución simple es agregar una línea con un barra invertida y espacio inmediatamente después de la figura, seguido de una línea en blanco:

![Alt text](image.png)
 

Some text after the figure...

¡No olvides el espacio después de la barra invertida! Esto parece funcionar en Pandoc 1.12.4.2.

Editar: como se señaló en los comentarios, esto suprimirá los títulos de las figuras.

No me gusta la solución de usar una compilación de 2 pasos (Latex -> sed -> pdf).

Puede sobrescribir el figura medio ambiente en su plantilla de Latex:

% Overwrite beginfigure[htbp] with beginfigure[H]
usepackagefloat
letorigfigure=figure
letendorigfigure=endfigure
renewenvironmentfigure[1][]%
  origfigure[H]
%
  endorigfigure

De esta manera, aún puede utilizar la generación directa de pdf.

Comentarios y puntuaciones

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *