2016-05-02 9 views
1

jupiterノートをpdfにエクスポートするためにnbconvert v4を使用しています。私のノートブックはROOT C++カーネルを使用しています。私がそれをエクスポートすることができた唯一の方法は、マークダウンによるものです。 ノートブックをマークダウンにダンプしてから、pandocを使ってpdfに書き出します。ROOTカーネルでnbconvertがマークダウンで名前のないプロットをエクスポートする

私の唯一の問題は、私のマークアップファイルに自動的に作られたpngファイルが含まれるように、ノートブックでコードを使ってプロットを作成することです。

これらのファイルは、私がpandocを使用すると数字になり、何らかの理由で図のキャプションが常に「png」になります。

私はコマンドを実行します。

jupyter nbconvert --to markdown my_file.ipynb 
pandoc --toc --template=../Scripts/mdtemplate.tex my_file.md --latex-engine=pdflatex -o final.pdf 

私はオンラインを使用tamplateが見つかりました:nbconvertまたはPandocにキャプション名を設定する方法

\documentclass[$if(fontsize)$$fontsize$,$endif$$if(lang)$$babel-lang$,$endif$$if(papersize)$$papersize$paper,$endif$$for(classoption)$$classoption$$sep$,$endfor$]{$documentclass$} 
$if(fontfamily)$ 
\usepackage[$for(fontfamilyoptions)$$fontfamilyoptions$$sep$,$endfor$]{$fontfamily$} 
$else$ 
\usepackage{lmodern} 
$endif$ 
$if(linestretch)$ 
\usepackage{setspace} 
\setstretch{$linestretch$} 
$endif$ 
\usepackage{geometry} 
\geometry{ 
a4paper, 
total={170mm,257mm}, 
left=20mm, 
top=25mm, 
bottom=25mm, 
right=20mm, 
} 
\usepackage{amssymb,amsmath} 
\usepackage{ifxetex,ifluatex} 
\usepackage{fixltx2e} % provides \textsubscript 
\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex 
    \usepackage[$if(fontenc)$$fontenc$$else$T1$endif$]{fontenc} 
    \usepackage[utf8]{inputenc} 
$if(euro)$ 
    \usepackage{eurosym} 
$endif$ 
\else % if luatex or xelatex 
    \ifxetex 
    \usepackage{mathspec} 
    \else 
    \usepackage{fontspec} 
    \fi 
    \defaultfontfeatures{Ligatures=TeX,Scale=MatchLowercase} 
$if(euro)$ 
    \newcommand{\euro}{€} 
$endif$ 
$if(mainfont)$ 
    \setmainfont[$for(mainfontoptions)$$mainfontoptions$$sep$,$endfor$]{$mainfont$} 
$endif$ 
$if(sansfont)$ 
    \setsansfont[$for(sansfontoptions)$$sansfontoptions$$sep$,$endfor$]{$sansfont$} 
$endif$ 
$if(monofont)$ 
    \setmonofont[Mapping=tex-ansi$if(monofontoptions)$,$for(monofontoptions)$$monofontoptions$$sep$,$endfor$$endif$]{$monofont$} 
$endif$ 
$if(mathfont)$ 
    \setmathfont(Digits,Latin,Greek)[$for(mathfontoptions)$$mathfontoptions$$sep$,$endfor$]{$mathfont$} 
$endif$ 
$if(CJKmainfont)$ 
    \usepackage{xeCJK} 
    \setCJKmainfont[$for(CJKoptions)$$CJKoptions$$sep$,$endfor$]{$CJKmainfont$} 
$endif$ 
\fi 
% use upquote if available, for straight quotes in verbatim environments 
\IfFileExists{upquote.sty}{\usepackage{upquote}}{} 
% use microtype if available 
\IfFileExists{microtype.sty}{% 
\usepackage{microtype} 
\UseMicrotypeSet[protrusion]{basicmath} % disable protrusion for tt fonts 
}{} 
$if(geometry)$ 
\usepackage[$for(geometry)$$geometry$$sep$,$endfor$]{geometry} 
$endif$ 
\usepackage{hyperref} 
$if(colorlinks)$ 
\PassOptionsToPackage{usenames,dvipsnames}{color} % color is loaded by hyperref 
$endif$ 
\hypersetup{unicode=true, 
$if(title-meta)$ 
      pdftitle={$title-meta$}, 
$endif$ 
$if(author-meta)$ 
      pdfauthor={$author-meta$}, 
$endif$ 
$if(keywords)$ 
      pdfkeywords={$for(keywords)$$keywords$$sep$; $endfor$}, 
$endif$ 
$if(colorlinks)$ 
      colorlinks=true, 
      linkcolor=$if(linkcolor)$$linkcolor$$else$Maroon$endif$, 
      citecolor=$if(citecolor)$$citecolor$$else$Blue$endif$, 
      urlcolor=$if(urlcolor)$$urlcolor$$else$Blue$endif$, 
$else$ 
      pdfborder={0 0 0}, 
$endif$ 
      breaklinks=true} 
\urlstyle{same} % don't use monospace font for urls 
$if(lang)$ 
\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex 
    \usepackage[shorthands=off,$for(babel-otherlangs)$$babel-otherlangs$,$endfor$main=$babel-lang$]{babel} 
$if(babel-newcommands)$ 
    $babel-newcommands$ 
$endif$ 
\else 
    \usepackage{polyglossia} 
    \setmainlanguage[$polyglossia-lang.options$]{$polyglossia-lang.name$} 
$for(polyglossia-otherlangs)$ 
    \setotherlanguage[$polyglossia-otherlangs.options$]{$polyglossia-otherlangs.name$} 
$endfor$ 
\fi 
$endif$ 
$if(natbib)$ 
\usepackage{natbib} 
\bibliographystyle{$if(biblio-style)$$biblio-style$$else$plainnat$endif$} 
$endif$ 
$if(biblatex)$ 
\usepackage$if(biblio-style)$[style=$biblio-style$]$endif${biblatex} 
$if(biblatexoptions)$\ExecuteBibliographyOptions{$for(biblatexoptions)$$biblatexoptions$$sep$,$endfor$}$endif$ 
$for(bibliography)$ 
\addbibresource{$bibliography$} 
$endfor$ 
$endif$ 
$if(listings)$ 
\usepackage{listings} 
$endif$ 
$if(lhs)$ 
\lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{} 
$endif$ 
$if(highlighting-macros)$ 
$highlighting-macros$ 
$endif$ 
$if(verbatim-in-note)$ 
\usepackage{fancyvrb} 
\VerbatimFootnotes % allows verbatim text in footnotes 
$endif$ 
$if(tables)$ 
\usepackage{longtable,booktabs} 
$endif$ 
$if(graphics)$ 
\usepackage{graphicx,grffile} 
\makeatletter 
\def\maxwidth{\ifdim\[email protected]@width>\linewidth\linewidth\else\[email protected]@width\fi} 
\def\maxheight{\ifdim\[email protected]@height>\textheight\textheight\else\[email protected]@height\fi} 
\makeatother 
% Scale images if necessary, so that they will not overflow the page 
% margins by default, and it is still possible to overwrite the defaults 
% using explicit options in \includegraphics[width, height, ...]{} 
\setkeys{Gin}{width=\maxwidth,height=\maxheight,keepaspectratio} 
$endif$ 
$if(links-as-notes)$ 
% Make links footnotes instead of hotlinks: 
\renewcommand{\href}[2]{#2\footnote{\url{#1}}} 
$endif$ 
$if(strikeout)$ 
\usepackage[normalem]{ulem} 
% avoid problems with \sout in headers with hyperref: 
\pdfstringdefDisableCommands{\renewcommand{\sout}{}} 
$endif$ 
$if(indent)$ 
$else$ 
\IfFileExists{parskip.sty}{% 
\usepackage{parskip} 
}{% else 
\setlength{\parindent}{0pt} 
\setlength{\parskip}{6pt plus 2pt minus 1pt} 
} 
$endif$ 
\setlength{\emergencystretch}{3em} % prevent overfull lines 
\providecommand{\tightlist}{% 
    \setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}} 
$if(numbersections)$ 
\setcounter{secnumdepth}{5} 
$else$ 
\setcounter{secnumdepth}{0} 
$endif$ 
$if(subparagraph)$ 
$else$ 
% Redefines (sub)paragraphs to behave more like sections 
\ifx\paragraph\undefined\else 
\let\oldparagraph\paragraph 
\renewcommand{\paragraph}[1]{\oldparagraph{#1}\mbox{}} 
\fi 
\ifx\subparagraph\undefined\else 
\let\oldsubparagraph\subparagraph 
\renewcommand{\subparagraph}[1]{\oldsubparagraph{#1}\mbox{}} 
\fi 
$endif$ 
$if(dir)$ 
\ifxetex 
    % load bidi as late as possible as it modifies e.g. graphicx 
    $if(latex-dir-rtl)$ 
    \usepackage[RTLdocument]{bidi} 
    $else$ 
    \usepackage{bidi} 
    $endif$ 
\fi 
\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex 
    \TeXXeTstate=1 
    \newcommand{\RL}[1]{\beginR #1\endR} 
    \newcommand{\LR}[1]{\beginL #1\endL} 
    \newenvironment{RTL}{\beginR}{\endR} 
    \newenvironment{LTR}{\beginL}{\endL} 
\fi 
$endif$ 
$for(header-includes)$ 
$header-includes$ 
$endfor$ 

$if(title)$ 
\title{$title$$if(thanks)$\thanks{$thanks$}$endif$} 
$endif$ 
$if(subtitle)$ 
\providecommand{\subtitle}[1]{} 
\subtitle{$subtitle$} 
$endif$ 
$if(author)$ 
\author{$for(author)$$author$$sep$ \and $endfor$} 
$endif$ 
$if(institute)$ 
\institute{$for(institute)$$institute$$sep$ \and $endfor$} 
$endif$ 
\date{$date$} 

\begin{document} 
$if(title)$ 
\maketitle 
$endif$ 
$if(abstract)$ 
\begin{abstract} 
$abstract$ 
\end{abstract} 
$endif$ 

$for(include-before)$ 
$include-before$ 

$endfor$ 
$if(toc)$ 
{ 
$if(colorlinks)$ 
\hypersetup{linkcolor=$if(toccolor)$$toccolor$$else$black$endif$} 
$endif$ 
\setcounter{tocdepth}{$toc-depth$} 
\tableofcontents 
} 
$endif$ 
$if(lot)$ 
\listoftables 
$endif$ 
$if(lof)$ 
\listoffigures 
$endif$ 
$body$ 

$if(natbib)$ 
$if(bibliography)$ 
$if(biblio-title)$ 
$if(book-class)$ 
\renewcommand\bibname{$biblio-title$} 
$else$ 
\renewcommand\refname{$biblio-title$} 
$endif$ 
$endif$ 
\bibliography{$for(bibliography)$$bibliography$$sep$,$endfor$} 

$endif$ 
$endif$ 
$if(biblatex)$ 
\printbibliography$if(biblio-title)$[title=$biblio-title$]$endif$ 

$endif$ 
$for(include-after)$ 
$include-after$ 

$endfor$ 
\end{document} 

に任意のアイデア?エラーが発生する可能性のあるアイデアはありますか?

P.S.それが役に立つ場合には、ここにキャプションのスクリーンショットを添付します。私が答えを見つけたようだ

TCanvas canvas_2("c", "c"); 
TF1 f1("f1","sin(x)/x",0.,10.); 
f1.Draw(); 
canvas_2.Draw(); 

nameless caption

答えて

0

: これは、コードによって生成されました。画像がpdf形式やhtml形式で名前を取得するためには、コードセル内の広告メタデータを使用して、画像に名前を付けるためにtemplate.tplファイルでメタデータを使用する必要があります。

私はこの解決策をオンラインのどこかに見つけましたが、もう一度見つけることができませんでした。それが誰にとっても役に立ちそうなら、私は例を投稿することができます。

関連する問題