Ejemplo n.º 1
0
def render_latex (value):
    if isinstance (value, int):
        return unicode (value)
    if isinstance (value, unicode):
        return unicode_to_latex (value)
    if isinstance (value, str):
        return unicode_to_latex (unicode (value))
    if isinstance (value, Markup):
        return value.latex ()
    raise ValueError ('don\'t know how to render %r into latex' % value)
Ejemplo n.º 2
0
def latexify (obj, **kwargs):
    """Render an object in LaTeX appropriately.

    """
    if hasattr (obj, '__pk_latex__'):
        return obj.__pk_latex__ (**kwargs)

    if isinstance (obj, text_type):
        from unicode_to_latex import unicode_to_latex
        return unicode_to_latex (obj)

    if isinstance (obj, bool):
        # isinstance (True, int) = True, so gotta handle this first.
        raise ValueError ('no well-defined LaTeXification of bool %r' % obj)

    if isinstance (obj, float):
        nplaces = kwargs.get ('nplaces')
        if nplaces is None:
            return b'$%f$' % obj
        return b'$%.*f$' % (nplaces, obj)

    if isinstance (obj, int):
        return b'$%d$' % obj

    if isinstance (obj, binary_type):
        raise ValueError ('no safe LaTeXification of binary string %r' % obj)

    raise ValueError ('can\'t LaTeXify %r' % obj)
Ejemplo n.º 3
0
 def _latex (self):
     return [unicode_to_latex (self.text)]