nbconvert позиционирование фигуры из латекса - PullRequest
0 голосов
/ 06 декабря 2018

Когда я конвертирую записную книжку в латекс (затем в PDF), изображения перемещаются в конец страницы.Я подумал, что в латексе можно было бы сохранить его в текущей позиции, используя спецификатор размещения 'h':

\begin{figure}[placement specifier]
... figure contents ...
\end{figure}

Можно ли настроить nbconvert, чтобы использовать его в качестве значения по умолчанию, поэтому я не будуне нужно вручную обрабатывать это потом?

Ссылка: https://en.wikibooks.org/wiki/LaTeX/Floats,_Figures_and_Captions

1 Ответ

0 голосов
/ 10 декабря 2018

Я думаю, что вы можете получить то, что вы хотите, переопределив соответствующие блоки в вашем шаблоне.

В document_contents.tplx, обратите внимание, что блоки data_png, data_jpg и т. Д. Все вызываюттот же макрос draw_figure.

Я сделал нечто похожее на то, что вам нужно, переопределив блоки фигур в моем пользовательском шаблоне для вызова другого макроса draw_figure_2, который я также определил в своем пользовательском шаблоне.

Добавление чего-то вроде

((*- block data_png -*))((( draw_figure_2(output.metadata.filenames['image/png']) )))((*- endblock -*))
((*- block data_jpg -*))((( draw_figure_2(output.metadata.filenames['image/jpeg']) )))((*- endblock -*))
((*- block data_svg -*))((( draw_figure_2(output.metadata.filenames['image/svg+xml']) )))((*- endblock -*))
((*- block data_pdf -*))((( draw_figure_2(output.metadata.filenames['application/pdf']) )))((*- endblock -*))


% copied macro draw_figure and made some naive changes; modify as needed
((* macro draw_figure_2(filename) -*))
((* set filename = filename | posix_path *))
((*- block figure scoped -*))
    \begin{figure}[h] % or whatever you want
    \begin{center}
    \adjustimage{max size={0.9\linewidth}{0.9\paperheight}}{((( filename )))}
    \end{center}
    \end{figure}
    { \hspace*{\fill} \\}
((*- endblock figure -*))
((*- endmacro *))
...