Caller
class for LaTeXยง
See API documentation for Caller.
[1]:
import magic_call.latex
from IPython.display import Image, SVG
[2]:
caller = magic_call.latex.Caller()
[3]:
assert caller.call_standalone('hello') is None
[4]:
assert caller.call_standalone('hello', [], []) == ([], [])
[5]:
dvi_blob, svg_blob = caller.call_standalone('hello', ['dvi', 'svg'])
[6]:
SVG(svg_blob)
[6]:
[7]:
png_blob, = caller.call_tikzpicture('\draw rectangle (1, 1);', ['png'])
Image(png_blob)
[7]:
[8]:
# no formats
data = caller.call_standalone('hello', [])
data
[8]:
[]
[9]:
data = caller.call_standalone('hello', files=[
'caller_output.pdf',
'caller_output.png',
'caller_output2.png',
])
data
[9]:
[PosixPath('caller_output.png'),
PosixPath('caller_output2.png'),
PosixPath('caller_output.pdf')]
[10]:
magic_call.latex.DEFAULT_COMMANDS
[10]:
[('dvi', 'latex --halt-on-error --output-format=dvi --jobname={}'),
('xdv', ''),
('dvi2svg',
'dvisvgm --bbox=papersize --font-format=woff,autohint --exact {} --output={}'),
('pdf', 'latex --halt-on-error --output-format=pdf --jobname={}'),
('pdf2png', 'pdftoppm -png -singlefile -r 96 {0} {0}'),
('dvi2png', 'dvipng -D 96 {} -o {}')]
[11]:
caller.get_default_chains()
[11]:
{'.dvi': ['.dvi'],
'.xdv': ['.xdv'],
'.svg': ['.dvi', '.svg'],
'.pdf': ['.pdf'],
'.png': ['.pdf', '.png']}
[12]:
commands = (
('dvi2ps', ''),
('ps2eps', ''),
('eps2eps', ''),
('eps2ps', ''),
('ps2pdf', ''),
('dvi', ''),
('pdf', ''),
('pdf2png', ''),
('ps2png', ''),
('dvi2pdf', ''),
('dvi2svg', ''),
('pdf2png', ''),
)
caller = magic_call.latex.Caller(commands=commands)
[13]:
# TODO: test XDV